<?php
namespace mageekguy\atoum\tests\units\phar;
use \mageekguy\atoum;
use \mageekguy\atoum\mock;
use \mageekguy\atoum\phar;
require_once(__DIR__ . '/../../runner.php');
class generator extends atoum\test
{
...
$mockGenerator = new mock\generator();
$mockGenerator
->generate('\phar')
->generate('\recursiveDirectoryIterator')
;
$generator->setPharInjecter(function($name) use (& $phar) {
$pharController = new mock\controller();
$pharController->injectInNextMockInstance();
$pharController->__construct = function() {};
$pharController->setStub = function() {};
$pharController->setMetadata = function() {};
$pharController->buildFromIterator = function() {};
$pharController->setSignatureAlgorithm = function() {};
$pharController->injectInNextMockInstance();
return ($phar = new mock\phar($name));
}
);
$generator->setFileIteratorInjecter(function($directory) use (& $fileIterator) {
$fileIteratorController = new mock\controller();
$fileIteratorController->injectInNextMockInstance();
$fileIteratorController->__construct = function() {};
$fileIteratorController->injectInNextMockInstance();
return ($fileIterator = new mock\recursiveDirectoryIterator($directory));
}
);
$this->assert
->object($generator->run())->isIdenticalTo($generator)
->mock($phar)
->callMethod('__construct', array($generator->getDestinationDirectory() . DIRECTORY_SEPARATOR . atoum\phar\generator::phar, null, null))
->callMethod('buildFromIterator', array($fileIterator, null))
->mock($fileIterator)
->callMethod('__construct', array($generator->getOriginDirectory()))
;
...
}
?>