diff --git a/.travis.yml b/.travis.yml index 9ca0714..24ce51a 100644 --- a/.travis.yml +++ b/.travis.yml @@ -13,7 +13,7 @@ install: script: - mkdir -p vendors/build/logs - - phpunit --coverage-clover /home/travis/build/joshtronic/pickles/vendors/build/logs/clover.xml --bootstrap ./tests/bootstrap.php ./tests + - phpunit --colors --coverage-clover /home/travis/build/joshtronic/pickles/vendors/build/logs/clover.xml --bootstrap ./tests/bootstrap.php ./tests after_script: - php vendors/composer/bin/coveralls --config ../.coveralls.yml -v diff --git a/classes/File.php b/classes/File.php index 5a60b56..47644d9 100644 --- a/classes/File.php +++ b/classes/File.php @@ -61,9 +61,13 @@ class File } } } - } - rmdir($directory); + rmdir($directory); + } + else + { + unlink($directory); + } } } diff --git a/tests/classes/FileTest.php b/tests/classes/FileTest.php index 70d32c0..06cdb8a 100644 --- a/tests/classes/FileTest.php +++ b/tests/classes/FileTest.php @@ -2,7 +2,7 @@ class FileTest extends PHPUnit_Framework_TestCase { - function testRemoveDirectory() + public function testRemoveDirectory() { $directory = SITE_PATH . 'test/test/test/'; @@ -15,6 +15,33 @@ class FileTest extends PHPUnit_Framework_TestCase $this->assertFalse(file_exists($directory)); } + + public function testMissingTrailingSlash() + { + $directory = SITE_PATH . 'missing'; + + mkdir($directory, 0777, true); + touch(SITE_PATH . 'missing/slash'); + + File::removeDirectory($directory); + + $this->assertFalse(file_exists($directory)); + } + + public function testRemoveFileNotDirectory() + { + $directory = SITE_PATH . 'dir'; + $file = SITE_PATH . 'dir/file'; + + mkdir($directory, 0777, true); + touch($file); + + File::removeDirectory($file); + + $this->assertFalse(file_exists($file)); + + File::removeDirectory($directory); + } } ?>