public function testGetRealParentDirectoryPath()
{
$this->given($adapter = new atoum\test\adapter())->and($adapter->file_exists = function ($path) {
switch ($path) {
case '/a/b/c/d/e':
case '/a/b/c/d':
case '/a/b/c':
return false;
default:
return true;
}
})->then->if($path = new testedClass('/', '/', $adapter))->then->object($path->getRealParentDirectoryPath())->isNotIdenticalTo($path)->toString->isEqualTo('/')->if($path = new testedClass('/a', '/', $adapter))->then->object($path->getRealParentDirectoryPath())->isNotIdenticalTo($path)->toString->isEqualTo('/')->if($path = new testedClass('/a/', '/', $adapter))->then->object($path->getRealParentDirectoryPath())->isNotIdenticalTo($path)->toString->isEqualTo('/')->if($path = new testedClass('/a/b', '/', $adapter))->then->object($path->getRealParentDirectoryPath())->isNotIdenticalTo($path)->toString->isEqualTo('/a')->if($path = new testedClass('/a/b/', '/', $adapter))->then->object($path->getRealParentDirectoryPath())->isNotIdenticalTo($path)->toString->isEqualTo('/a')->if($path = new testedClass('/a/b/c', '/', $adapter))->then->object($path->getRealParentDirectoryPath())->isNotIdenticalTo($path)->toString->isEqualTo('/a/b')->if($path = new testedClass('/a/b/c/d', '/', $adapter))->then->object($path->getRealParentDirectoryPath())->isNotIdenticalTo($path)->toString->isEqualTo('/a/b');
}