3 class PHPT_Section_EXPECTREGEX
extends PHPT_Section_ExpectationAbstract
5 protected function _isValid(PHPT_Case
$case)
7 $pattern = $this->_expected
;
8 if (substr($pattern, -10) == '===DONE===') {
9 $pattern = substr($pattern, 0, -10);
10 $this->_checkForDoneToken($case);
12 if ($pattern[0] != '/') {
13 $pattern = '/' . trim($pattern) . '/';
15 $pattern = trim($pattern);
18 // capture $matches - it'll still be NULL if $pattern was invalid
20 $result = @preg_match
($pattern, $case->output
, $matches);
21 if (is_null($matches)) {
22 throw new PHPT_Section_EXPECTREGEX_InvalidRegexException($case, $pattern);
27 private function _checkForDoneToken(PHPT_Case
$case)
29 if (substr($case->output
, -10) != '===DONE===') {
30 throw new PHPT_Section_EXPECTREGEX_UnexpectedOutputException($case, $this->_expected
);