diff vendor/nikic/php-parser/test/PhpParser/ParserFactoryTest.php @ 0:4c8ae668cc8c

Initial import (non-working)
author Chris Cannam
date Wed, 29 Nov 2017 16:09:58 +0000
parents
children 5fb285c0d0e3
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/vendor/nikic/php-parser/test/PhpParser/ParserFactoryTest.php	Wed Nov 29 16:09:58 2017 +0000
@@ -0,0 +1,34 @@
+<?php
+
+namespace PhpParser;
+
+/* This test is very weak, because PHPUnit's assertEquals assertion is way too slow dealing with the
+ * large objects involved here. So we just do some basic instanceof tests instead. */
+class ParserFactoryTest extends \PHPUnit_Framework_TestCase {
+    /** @dataProvider provideTestCreate */
+    public function testCreate($kind, $lexer, $expected) {
+        $this->assertInstanceOf($expected, (new ParserFactory)->create($kind, $lexer));
+    }
+
+    public function provideTestCreate() {
+        $lexer = new Lexer();
+        return [
+            [
+                ParserFactory::PREFER_PHP7, $lexer,
+                'PhpParser\Parser\Multiple'
+            ],
+            [
+                ParserFactory::PREFER_PHP5, null,
+                'PhpParser\Parser\Multiple'
+            ],
+            [
+                ParserFactory::ONLY_PHP7, null,
+                'PhpParser\Parser\Php7'
+            ],
+            [
+                ParserFactory::ONLY_PHP5, $lexer,
+                'PhpParser\Parser\Php5'
+            ]
+        ];
+    }
+}
\ No newline at end of file