public function testRun() { $adapter = new atoum\test\adapter(); $adapter->file_get_contents = false; $adapter->fopen = $runFileResource = uniqid(); $adapter->flock = true; $adapter->getmypid = $pid = uniqid(); $adapter->fwrite = function () { }; $adapter->fclose = function () { }; $adapter->unlink = function () { }; $builder = new \mock\mageekguy\atoum\scripts\builder(uniqid(), $adapter); $builderController = $builder->getMockController(); $builderController->createPhar = function () { }; $builder->setRunFile($runFile = uniqid()); $this->assert->object($builder->run())->isIdenticalTo($builder)->mock($builder)->call('createPhar')->once()->adapter($adapter)->call('file_get_contents')->withArguments($runFile)->once()->call('fopen')->withArguments($runFile, 'w+')->once()->call('flock')->withArguments($runFileResource, \LOCK_EX | \LOCK_NB)->once()->call('fwrite')->withArguments($runFileResource, $pid)->once()->call('fclose')->withArguments($runFileResource)->once()->call('unlink')->withArguments($runFile)->once(); }