public function testShouldValidateObjects() { $rule = new Executable(); $object = $this->getMock('SplFileInfo', array('isExecutable'), array('somefile.txt')); $object->expects($this->once())->method('isExecutable')->will($this->returnValue(true)); $this->assertTrue($rule->validate($object)); }
/** * Add an executable in the tier it wants to be run in, or the * next stage if no tier is set. * @param Executable $executable * @throws TierException */ public function addExecutable(Executable $executable) { $tierNumber = $executable->getTierNumber(); $nextStage = $this->currentTier + 1; if ($tierNumber === null) { $tierNumber = $nextStage; } if ($tierNumber < $this->currentTier) { $message = sprintf("Cannot add executable to tier %d as current tier is %d", $tierNumber, $this->currentTier); throw new TierException($message, TierException::INCORRECT_VALUE); } $this->addExecutableToTier($tierNumber, $executable); }
$classifier = new Classifier(); $report = new Report($this->reportTemplate); $testSet = Spyc::YAMLLoad($input); $testBaseDir = dirname(realpath($input)) . '/'; foreach ($testSet as $case) { $fileName = $testBaseDir . $case['fileName']; $classifier->Classify($this->GetFileNames($fileName)); $report->OpenTestCase($case); $classifier->RenderReport($report); $report->CloseTestCase(); } $report->Save($this->testReport); } /*************************************************************************** ***************************************************************************/ private function GetFileNames($input) { $temp = file($input); $result = array(); foreach ($temp as $line) { $line = trim($line); if ($line != '') { $result[] = $line; } } return $result; } } /******************************************************************************/ Executable::Run('Application');
public function __construct($callable, $tierNumber, InjectionParams $injectionParams = null, $setupCallable = null, $skipIfProduced = null) { $this->tierNumber = $tierNumber; parent::__construct($callable, $injectionParams, $setupCallable, $skipIfProduced); }