Esempio n. 1
0
 public function testJsStringDefault()
 {
     $this->assertEquals("''", Reform::JsString(null, null), "Null for both parameters");
     // Usual stuff
     $this->assertEquals("'default'", Reform::JsString(null, "default"), "Checking default");
     // Non encoded characters
     $this->assertEquals("'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0987654321 ,.'", Reform::JsString(null, "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0987654321 ,."), "Non encoding chars via default");
     // Usual suspects
     $this->assertEquals("'\\x3C\\x3E\\x26\\x22\\x5C\\x27'", Reform::JsString(null, "<>&\"\\'"), "Usual suspects via default");
     // Other characters
     $this->assertEquals("'\\x60\\x7E\\x21\\x40\\x23\\x24\\x25\\x5E\\x26\\x2A\\x28\\x29\\x5F\\x2B\\x3D\\x2D\\x7B\\x7D\\x7C\\x5C\\x5D\\x5B\\x3A\\x3B\\x27\\x2F\\x3F\\x3E\\x3C'", Reform::JsString(null, "`~!@#\$%^&*()_+=-{}|\\][:;'/?><"), "Punctuation via default");
     // Unicode characters
     $toEncode = "";
     $encodedStr = "";
     $encodedStr .= '\'';
     for ($i = 128; $i < 6000; $i++) {
         $toEncode .= ReformTests::unichr($i);
         $encodedStr .= sprintf("\\u%04X", $i);
     }
     $encodedStr .= '\'';
     $this->assertEquals($encodedStr, Reform::JsString(null, $toEncode), "Unicode characters to 6000 via default");
     // The following are sanity checks
     // Non encoded characters
     $this->assertEquals("'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0987654321 ,.'", Reform::JsString("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0987654321 ,.", "default"), "Non encoding chars");
     // Usual suspects
     $this->assertEquals("'\\x3C\\x3E\\x26\\x22\\x5C\\x27'", Reform::JsString("<>&\"\\'", "default"), "Usual suspects");
     // Other characters
     $this->assertEquals("'\\x60\\x7E\\x21\\x40\\x23\\x24\\x25\\x5E\\x26\\x2A\\x28\\x29\\x5F\\x2B\\x3D\\x2D\\x7B\\x7D\\x7C\\x5C\\x5D\\x5B\\x3A\\x3B\\x27\\x2F\\x3F\\x3E\\x3C'", Reform::JsString("`~!@#\$%^&*()_+=-{}|\\][:;'/?><", "default"), "Punctuation");
     // Unicode characters
     $toEncode = "";
     $encodedStr = "";
     $encodedStr .= '\'';
     for ($i = 128; $i < 6000; $i++) {
         $toEncode .= ReformTests::unichr($i);
         $encodedStr .= sprintf("\\u%04X", $i);
     }
     $encodedStr .= '\'';
     $this->assertEquals($encodedStr, Reform::JsString($toEncode, "default"), "Unicode characters to 6000");
 }