X-Git-Url: http://www.aleph1.co.uk/gitweb/?p=yaffs-website;a=blobdiff_plain;f=vendor%2Fpsy%2Fpsysh%2Ftest%2FPsy%2FTest%2FCodeCleaner%2FLegacyEmptyPassTest.php;fp=vendor%2Fpsy%2Fpsysh%2Ftest%2FPsy%2FTest%2FCodeCleaner%2FLegacyEmptyPassTest.php;h=8853a91199005156a1afce343b11f4327952f754;hp=0000000000000000000000000000000000000000;hb=eba34333e3c89f208d2f72fa91351ad019a71583;hpb=a2bd1bf0c2c1f1a17d188f4dc0726a45494cefae diff --git a/vendor/psy/psysh/test/Psy/Test/CodeCleaner/LegacyEmptyPassTest.php b/vendor/psy/psysh/test/Psy/Test/CodeCleaner/LegacyEmptyPassTest.php new file mode 100644 index 000000000..8853a9119 --- /dev/null +++ b/vendor/psy/psysh/test/Psy/Test/CodeCleaner/LegacyEmptyPassTest.php @@ -0,0 +1,77 @@ +setPass(new LegacyEmptyPass()); + } + + /** + * @dataProvider invalidStatements + * @expectedException \Psy\Exception\ParseErrorException + */ + public function testProcessInvalidStatement($code) + { + $stmts = $this->parse($code); + $this->traverser->traverse($stmts); + } + + public function invalidStatements() + { + if (version_compare(PHP_VERSION, '5.5', '>=')) { + return array( + array('empty()'), + ); + } + + return array( + array('empty()'), + array('empty(null)'), + array('empty(PHP_EOL)'), + array('empty("wat")'), + array('empty(1.1)'), + array('empty(Foo::$bar)'), + ); + } + + /** + * @dataProvider validStatements + */ + public function testProcessValidStatement($code) + { + $stmts = $this->parse($code); + $this->traverser->traverse($stmts); + } + + public function validStatements() + { + if (version_compare(PHP_VERSION, '5.5', '<')) { + return array( + array('empty($foo)'), + ); + } + + return array( + array('empty($foo)'), + array('empty(null)'), + array('empty(PHP_EOL)'), + array('empty("wat")'), + array('empty(1.1)'), + array('empty(Foo::$bar)'), + ); + } +}