Chris@0: setPass(new InstanceOfPass()); Chris@0: } Chris@0: Chris@0: /** Chris@0: * @dataProvider invalidStatements Chris@0: * @expectedException \Psy\Exception\FatalErrorException Chris@0: */ Chris@0: public function testProcessInvalidStatement($code) Chris@0: { Chris@0: $stmts = $this->parse($code); Chris@0: $this->traverser->traverse($stmts); Chris@0: } Chris@0: Chris@0: public function invalidStatements() Chris@0: { Chris@0: return array( Chris@0: array('null instanceof stdClass'), Chris@0: array('true instanceof stdClass'), Chris@0: array('9 instanceof stdClass'), Chris@0: array('1.0 instanceof stdClass'), Chris@0: array('"foo" instanceof stdClass'), Chris@0: array('__DIR__ instanceof stdClass'), Chris@0: array('PHP_SAPI instanceof stdClass'), Chris@0: array('1+1 instanceof stdClass'), Chris@0: array('true && false instanceof stdClass'), Chris@0: array('"a"."b" instanceof stdClass'), Chris@0: array('!5 instanceof stdClass'), Chris@0: ); Chris@0: } Chris@0: Chris@0: /** Chris@0: * @dataProvider validStatements Chris@0: */ Chris@0: public function testProcessValidStatement($code) Chris@0: { Chris@0: $stmts = $this->parse($code); Chris@0: $this->traverser->traverse($stmts); Chris@0: } Chris@0: Chris@0: public function validStatements() Chris@0: { Chris@0: $data = array( Chris@0: array('$a instanceof stdClass'), Chris@0: array('strtolower("foo") instanceof stdClass'), Chris@0: array('array(1) instanceof stdClass'), Chris@0: array('(string) "foo" instanceof stdClass'), Chris@0: array('(1+1) instanceof stdClass'), Chris@0: array('"foo ${foo} $bar" instanceof stdClass'), Chris@0: array('DateTime::ISO8601 instanceof stdClass'), Chris@0: ); Chris@0: Chris@0: return $data; Chris@0: } Chris@0: }