reporter = $reporter; } /** * Called when the Reporter is started from a PHPT_Suite * @todo Figure out if Suites can be named */ public function onSuiteStart(PHPT_Suite $suite) { $this->reporter->paintGroupStart('PHPT Suite', $suite->count()); } /** * Called when the Reporter is finished in a PHPT_Suite */ public function onSuiteEnd(PHPT_Suite $suite) { $this->reporter->paintGroupEnd('PHPT Suite'); } /** * Called when a Case is started */ public function onCaseStart(PHPT_Case $case) { $this->reporter->paintCaseStart($case->name); } /** * Called when a Case ends */ public function onCaseEnd(PHPT_Case $case) { $this->reporter->paintCaseEnd($case->name); } /** * Called when a Case runs without Exception */ public function onCasePass(PHPT_Case $case) { $this->reporter->paintPass("{$case->name} in {$case->filename}"); } /** * Called when a PHPT_Case_VetoException is thrown during a Case's run() */ public function onCaseSkip(PHPT_Case $case, PHPT_Case_VetoException $veto) { $this->reporter->paintSkip("{$case->name} in {$case->filename}"); } /** * Called when any Exception other than a PHPT_Case_VetoException is encountered * during a Case's run() */ public function onCaseFail(PHPT_Case $case, PHPT_Case_FailureException $failure) { $this->reporter->paintFail($failure->getReason()); } public function onParserError(Exception $exception) { $this->reporter->paintException($exception); } }