Skip to content

Commit

Permalink
Related to issue #49 again and again.
Browse files Browse the repository at this point in the history
  • Loading branch information
mageekguy committed Jun 15, 2012
1 parent 2a9d856 commit 86cb7ae
Show file tree
Hide file tree
Showing 5 changed files with 30 additions and 21 deletions.
5 changes: 0 additions & 5 deletions classes/autoloader.php
Original file line number Diff line number Diff line change
Expand Up @@ -10,11 +10,6 @@ class autoloader

protected $directories = array(__NAMESPACE__ => array(__DIR__));

public function __construct()
{
$this->addDirectory(__NAMESPACE__, directory . '/' . basename(__DIR__));
}

public function register($prepend = false)
{
if (spl_autoload_register(array($this, 'requireClass'), true, $prepend) === false)
Expand Down
10 changes: 9 additions & 1 deletion classes/mock/stream.php
Original file line number Diff line number Diff line change
Expand Up @@ -114,7 +114,15 @@ public static function getProtocol($stream)

public static function cleanStreamName($stream)
{
return (self::getAdapter()->constant('DIRECTORY_SEPARATOR') != '\\' ? $stream : str_replace('\\', '/', $stream));
$directorySeparator = self::getAdapter()->constant('DIRECTORY_SEPARATOR');

if ($directorySeparator != '/')
{
$path = preg_replace('#^[^:]+://#', '', $stream);
$stream = substr($stream, 0, strlen($stream) - strlen($path)) . str_replace($directorySeparator, '/', $path);
}

return $stream;
}
}

Expand Down
4 changes: 2 additions & 2 deletions tests/units/classes/iterators/recursives/atoum/source.php
Original file line number Diff line number Diff line change
Expand Up @@ -86,7 +86,7 @@ public function testKey()
->and($sourceDirectoryController->readdir[2] = false)
->and($iterator = new iterators\recursives\atoum\source($sourceDirectory = 'atoum://sourceDirectory'))
->then
->string($iterator->key())->isEqualTo('atoum://sourceDirectory/file')
->string($iterator->key())->isEqualTo('atoum://sourceDirectory' . DIRECTORY_SEPARATOR . 'file')
->if($sourceDirectoryController->readdir[1] = '.file')
->and($sourceDirectoryController->readdir[2] = false)
->and($iterator = new iterators\recursives\atoum\source($sourceDirectory = 'atoum://sourceDirectory'))
Expand All @@ -99,7 +99,7 @@ public function testKey()
->and($sourceDirectoryController->readdir[2] = false)
->and($iterator = new iterators\recursives\atoum\source($sourceDirectory = 'atoum://sourceDirectory', $pharDirectory = uniqid()))
->then
->string($iterator->key())->isEqualTo($pharDirectory . '/file')
->string($iterator->key())->isEqualTo($pharDirectory . DIRECTORY_SEPARATOR . 'file')
->if($sourceDirectoryController->readdir[1] = '.file')
->and($sourceDirectoryController->readdir[2] = false)
->and($iterator = new iterators\recursives\atoum\source($sourceDirectory = 'atoum://sourceDirectory', $pharDirectory = uniqid()))
Expand Down
28 changes: 17 additions & 11 deletions tests/units/classes/report/fields/runner/coverage/html.php
Original file line number Diff line number Diff line change
Expand Up @@ -230,15 +230,15 @@ public function testCleanDestinationDirectory()
->then
->object($field->cleanDestinationDirectory())->isIdenticalTo($field)
->adapter($adapter)
->call('unlink')->withArguments(self::cleanPath('atoum://destinationDirectory/aDirectory/firstFile'))->once()
->call('unlink')->withArguments(self::cleanPath('atoum://destinationDirectory/aDirectory/secondFile'))->once()
->call('rmdir')->withArguments(self::cleanPath('atoum://destinationDirectory/aDirectory'))->once()
->call('unlink')->withArguments(self::cleanPath('atoum://destinationDirectory/anOtherDirectory/anOtherFirstFile'))->once()
->call('unlink')->withArguments(self::cleanPath('atoum://destinationDirectory/anOtherDirectory/anOtherSecondFile'))->once()
->call('rmdir')->withArguments(self::cleanPath('atoum://destinationDirectory/anOtherDirectory'))->once()
->call('unlink')->withArguments(self::cleanPath('atoum://destinationDirectory/aFile'))->once()
->call('rmdir')->withArguments(self::cleanPath('atoum://destinationDirectory/emptyDirectory'))->once()
->call('rmdir')->withArguments(self::cleanPath($destinationDirectoryPath))->never()
->call('unlink')->withArguments(self::uniformizeStream('atoum://destinationDirectory/aDirectory/firstFile'))->once()
->call('unlink')->withArguments(self::uniformizeStream('atoum://destinationDirectory/aDirectory/secondFile'))->once()
->call('rmdir')->withArguments(self::uniformizeStream('atoum://destinationDirectory/aDirectory'))->once()
->call('unlink')->withArguments(self::uniformizeStream('atoum://destinationDirectory/anOtherDirectory/anOtherFirstFile'))->once()
->call('unlink')->withArguments(self::uniformizeStream('atoum://destinationDirectory/anOtherDirectory/anOtherSecondFile'))->once()
->call('rmdir')->withArguments(self::uniformizeStream('atoum://destinationDirectory/anOtherDirectory'))->once()
->call('unlink')->withArguments(self::uniformizeStream('atoum://destinationDirectory/aFile'))->once()
->call('rmdir')->withArguments(self::uniformizeStream('atoum://destinationDirectory/emptyDirectory'))->once()
->call('rmdir')->withArguments(self::uniformizeStream($destinationDirectoryPath))->never()
->if($field->getMockController()->getDestinationDirectoryIterator->throw = new \exception())
->then
->object($field->cleanDestinationDirectory())->isIdenticalTo($field)
Expand Down Expand Up @@ -573,9 +573,15 @@ public function test__toString()
;
}

protected static function cleanPath($path)
protected static function uniformizeStream($stream)
{
return (DIRECTORY_SEPARATOR == '/' ? $path : str_replace('/', '\\', $path));
if (DIRECTORY_SEPARATOR != '/')
{
$path = preg_replace('#^[^:]+://#', '', $stream);
$stream = substr($stream, 0, strlen($stream) - strlen($path)) . str_replace('/', '\\', $path);
}

return $stream;
}
}

Expand Down
4 changes: 2 additions & 2 deletions tests/units/classes/scripts/phar/generator.php
Original file line number Diff line number Diff line change
Expand Up @@ -88,7 +88,7 @@ public function testSetOriginDirectory()
->then
->object($generator->setOriginDirectory('/'))->isIdenticalTo($generator)
->string($generator->getOriginDirectory())->isEqualTo('/')
->object($generator->setOriginDirectory(($directory = uniqid()) . '/'))->isIdenticalTo($generator)
->object($generator->setOriginDirectory(($directory = uniqid()) . DIRECTORY_SEPARATOR))->isIdenticalTo($generator)
->string($generator->getOriginDirectory())->isEqualTo($directory)
->if($generator->setDestinationDirectory(uniqid()))
->then
Expand Down Expand Up @@ -137,7 +137,7 @@ public function testSetDestinationDirectory()
->string($generator->getDestinationDirectory())->isEqualTo('/')
->object($generator->setDestinationDirectory($directory = uniqid()))->isIdenticalTo($generator)
->string($generator->getDestinationDirectory())->isEqualTo($directory)
->object($generator->setDestinationDirectory(($directory = uniqid()) . '/'))->isIdenticalTo($generator)
->object($generator->setDestinationDirectory(($directory = uniqid()) . DIRECTORY_SEPARATOR))->isIdenticalTo($generator)
->string($generator->getDestinationDirectory())->isEqualTo($directory)
->if ($generator->setOriginDirectory(uniqid()))
->then
Expand Down

0 comments on commit 86cb7ae

Please sign in to comment.