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