mageekguy\atoum\tests\units\scripts\phar\generator::testSetDestinationDirectory PHP Метод

testSetDestinationDirectory() публичный Метод

    public function testSetDestinationDirectory()
    {
        $this->if($adapter = new atoum\test\adapter())->and($adapter->php_sapi_name = function () {
            return 'cli';
        })->and($adapter->realpath = function ($path) {
            return $path;
        })->and($generator = new phar\generator(uniqid(), $adapter))->then->exception(function () use($generator) {
            $generator->setDestinationDirectory('');
        })->isInstanceOf('mageekguy\\atoum\\exceptions\\runtime')->hasMessage('Empty destination directory is invalid')->if($adapter->is_dir = function () {
            return false;
        })->then->exception(function () use($generator, &$directory) {
            $generator->setDestinationDirectory($directory = uniqid());
        })->isInstanceOf('mageekguy\\atoum\\exceptions\\runtime')->hasMessage('Path \'' . $directory . '\' of destination directory is invalid')->if($adapter->is_dir = function () {
            return true;
        })->then->object($generator->setDestinationDirectory('/'))->isIdenticalTo($generator)->string($generator->getDestinationDirectory())->isEqualTo('/')->object($generator->setDestinationDirectory($directory = uniqid()))->isIdenticalTo($generator)->string($generator->getDestinationDirectory())->isEqualTo($directory)->object($generator->setDestinationDirectory(($directory = uniqid()) . DIRECTORY_SEPARATOR))->isIdenticalTo($generator)->string($generator->getDestinationDirectory())->isEqualTo($directory)->if($generator->setOriginDirectory(uniqid()))->then->exception(function () use($generator) {
            $generator->setDestinationDirectory($generator->getOriginDirectory());
        })->isInstanceOf('mageekguy\\atoum\\exceptions\\runtime')->hasMessage('Destination directory must be different from origin directory');
    }