Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nextcloud/php-static-scanner-instrumentalization.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/nikic/php-parser/test/PhpParser/Node/Scalar/StringTest.php')
-rw-r--r--vendor/nikic/php-parser/test/PhpParser/Node/Scalar/StringTest.php61
1 files changed, 61 insertions, 0 deletions
diff --git a/vendor/nikic/php-parser/test/PhpParser/Node/Scalar/StringTest.php b/vendor/nikic/php-parser/test/PhpParser/Node/Scalar/StringTest.php
new file mode 100644
index 0000000..be39035
--- /dev/null
+++ b/vendor/nikic/php-parser/test/PhpParser/Node/Scalar/StringTest.php
@@ -0,0 +1,61 @@
+<?php
+
+namespace PhpParser\Node\Scalar;
+
+class StringTest extends \PHPUnit_Framework_TestCase
+{
+ /**
+ * @dataProvider provideTestParseEscapeSequences
+ */
+ public function testParseEscapeSequences($expected, $string, $quote) {
+ $this->assertSame(
+ $expected,
+ String_::parseEscapeSequences($string, $quote)
+ );
+ }
+
+ /**
+ * @dataProvider provideTestParse
+ */
+ public function testCreate($expected, $string) {
+ $this->assertSame(
+ $expected,
+ String_::parse($string)
+ );
+ }
+
+ public function provideTestParseEscapeSequences() {
+ return array(
+ array('"', '\\"', '"'),
+ array('\\"', '\\"', '`'),
+ array('\\"\\`', '\\"\\`', null),
+ array("\\\$\n\r\t\f\v", '\\\\\$\n\r\t\f\v', null),
+ array("\x1B", '\e', null),
+ array(chr(255), '\xFF', null),
+ array(chr(255), '\377', null),
+ array(chr(0), '\400', null),
+ array("\0", '\0', null),
+ array('\xFF', '\\\\xFF', null),
+ );
+ }
+
+ public function provideTestParse() {
+ $tests = array(
+ array('A', '\'A\''),
+ array('A', 'b\'A\''),
+ array('A', '"A"'),
+ array('A', 'b"A"'),
+ array('\\', '\'\\\\\''),
+ array('\'', '\'\\\'\''),
+ );
+
+ foreach ($this->provideTestParseEscapeSequences() as $i => $test) {
+ // skip second and third tests, they aren't for double quotes
+ if ($i != 1 && $i != 2) {
+ $tests[] = array($test[0], '"' . $test[1] . '"');
+ }
+ }
+
+ return $tests;
+ }
+}