Open In App

PHPunit | assertDirectoryNotIsWritable() Function

Last Updated : 26 Jul, 2019
Improve
Improve
Like Article
Like
Save
Share
Report

The assertDirectoryNotIsWritable() function is a builtin function in PHPUnit and is used to assert whether the directory specified is not a directory or is not writable. This assertion will return true in the case if either given directory path doesn’t exist or is not writable else return false. In case of true the asserted test case got passed else test case got failed.

Syntax:

assertDirectoryNotIsWritable( integer $directory, string $message = '' )

Parameters: This function accepts two parameters as shown in the above syntax. The parameters are described below:

  • $directory: This parameter is a string which denotes the directory path.
  • $message: This parameter takes string value. When the testcase got failed this string message got displayed as error message.

Below programs illustrate the assertDirectoryNotIsWritable() function in PHPUnit:

Program 1:




<?php
use PHPUnit\Framework\TestCase;
  
class GeeksPhpunitTestCase extends TestCase
{
    public function testNegativeTestcaseForassertDirectoryNotIsWritable()
    {
        $directoryPath = "/home/shivam/Documents/phpunit/notwritable";
  
        // Assert function to test whether given
        // directory path either doesn't exists or not writable
        $this->assertDirectoryNotIsWritable(
            $directoryPath,
            "directoryPath either doesn't exists or not writable"
        );
    }
}
  
?>


Output:

PHPUnit 8.2.5 by Sebastian Bergmann and contributors.

F                                                                   1 / 1 (100%)

Time: 89 ms, Memory: 10.00 MB

There was 1 failure:

1) GeeksPhpunitTestCase::testNegativeTestcaseForAssertDirectoryNotIsWritable
directoryPath either doesn't exists or not writable
Failed asserting that directory "/home/shivam/Documents/geeks/pgp" exists.

/home/shivam/Documents/geeks/phpunit/abc.php:13

FAILURES!
Tests: 1, Assertions: 1, Failures: 1.

Program 2:




<?php
use PHPUnit\Framework\TestCase;
  
class GeeksPhpunitTestCase extends TestCase
{
    public function testPositiveTestcaseForAssertDirectoryNotIsWritable()
    {
        $directoryPath = "/home/shivam/Documents/geeks";
  
        // Assert function to test whether given
        // directory path exists or not writable
        $this->assertDirectoryNotIsWritable(
            $directoryPath,
            "directoryPath either doesn't exists or not writable"
        );
    }
}
  
?>


Output:

PHPUnit 8.2.5 by Sebastian Bergmann and contributors.

.                                                                   1 / 1 (100%)

Time: 67 ms, Memory: 10.00 MB

OK (1 test, 1 assertion)

Note: To run testcases with phpunit follow steps from here. Also, assertDirectoryNotIsWritable() is supported by phpunit 7 and above.



Like Article
Suggest improvement
Share your thoughts in the comments

Similar Reads