tests: Port avmplus ecma3 Unicode tests

This commit is contained in:
Nathan Adams 2023-07-27 18:15:09 +02:00
parent c8e4ec98f0
commit e1749cd0ad
542 changed files with 11842 additions and 0 deletions

View File

@ -0,0 +1,231 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
import com.adobe.test.Assert;
function negativeTestUnicodeRange(hexFrom, hexTo, array, item) {
// split the range into smaller more manageable set
var range = 250;
for (var i = hexFrom; i <= hexTo; i= i+range+1 ) {
var subHexFrom = i;
var subHexTo = (i+range <= hexTo)? i+range:hexTo;
negativeTestUnicodeRangeHelper(subHexFrom, subHexTo);
}
}
function negativeTestUnicodeRangeHelper(hexFrom, hexTo, array, item) {
var offset:int = hexFrom;
var testStr = "";
var splitResult:Array = new Array();
for (var i = hexFrom; i <= hexTo; i++ ) {
testStr += String.fromCharCode(i);
splitResult.push(String.fromCharCode(i));
}
negativeTestSearch(hexFrom, hexTo, array, item, testStr);
negativeTestMatch(hexFrom, hexTo, array, item, testStr);
negativeTestSplit(hexFrom, hexTo, array, item, testStr, splitResult);
negativeTestReplace(hexFrom, hexTo, array, item, testStr);
}
function negativeTestSearch(hexFrom, hexTo, array, item, testStr)
{
// String.search()
var stringSearchResult:String = '';
for (var i = hexFrom; i <= hexTo; i++ ) {
var searchStr = String.fromCharCode(i) + String.fromCharCode(i);
if (notReserved(i)) {
var searchResult:int = testStr.search(searchStr);
var searchExpect = -1
if (searchExpect != searchResult)
stringSearchResult += 'Expected: ' + searchExpect +' Found: ' + searchResult +' ';
var pattern:RegExp = new RegExp(searchStr);
var searchResult2:int = testStr.search(pattern);
var searchExpect2 = -1;
if (searchExpect2 != searchResult2)
stringSearchResult += 'Expected: ' + searchExpect2 +' Found: ' + searchResult2 +' ';
}
}
this.array[this.item++] = Assert.expectEq(
"Negative String.search", '', stringSearchResult);
var hexFromStr = decimalToHexString(hexFrom);
var hexToStr = decimalToHexString(hexTo);
//test matching undefined
var searchResult:int = testStr.search(undefined);
var searchExpect = -1;
this.array[this.item++] = Assert.expectEq(
hexFromStr + " to " + hexToStr +
" String.search(undefined)", searchExpect, searchResult);
//test matching with no parameter
var searchResult2:int = testStr.search();
var searchExpect2 = -1;
this.array[this.item++] = Assert.expectEq(
hexFromStr + " to " + hexToStr +
" String.search()", searchExpect2, searchResult2);
}
function negativeTestMatch(hexFrom, hexTo, array, item, testStr)
{
// String.match()
//test matching a string that doesn't exist in the testStr
var stringSearchResult:String = '';
for (var i = hexFrom; i <= hexTo; i++ ) {
if (notReserved(i)) {
var matchResult:Array = testStr.match(String.fromCharCode(i)+String.fromCharCode(i));
if (matchResult != null)
stringSearchResult += 'Expected: null Found: ' + matchResult +' ';
var pattern:RegExp = new RegExp(String.fromCharCode(i) + String.fromCharCode(i));
var matchResult2:Array = testStr.match(pattern);
if (matchResult2 != null)
stringSearchResult += 'Expected: null Found: ' + matchResult2 +' ';
}
}
this.array[this.item++] = Assert.expectEq(
"Negative String.match", '', stringSearchResult);
var hexFromStr = decimalToHexString(hexFrom);
var hexToStr = decimalToHexString(hexTo);
//test matching undefined
var matchResult2:Array = testStr.match(undefined);
this.array[this.item++] = Assert.expectEq(
hexFromStr + " to " + hexToStr +
" String.match(undefined)", null, matchResult2);
//test matching with no parameter
var matchResult3:Array = testStr.match();
this.array[this.item++] = Assert.expectEq(
hexFromStr + " to " + hexToStr +
" String.match()", null, matchResult3);
}
function negativeTestSplit(hexFrom, hexTo, array, item, testStr, splitExpected)
{
// String.split()
//split on empty string
var stringSplitResult:String = '';
var splitDelimiter = "";
var splitResult:Array = testStr.split(splitDelimiter);
if (splitResult != null && splitExpected != null) {
if (splitExpected.length != splitResult.length) {
stringSplitResult += 'unexpected length - expected: '+splitExpected.length + 'Found: '+splitResult.length+' ';
} else {
for (var i = 0; i< splitExpected.length; i++) {
if (splitExpected[i] != splitResult[i])
stringSplitResult += 'mismatch - expected: '+splitExpected[i]+' Found: '+splitResult[i] + ' ';
}
}
}
else {
stringSplitResult += 'result array null! ';
}
this.array[this.item++] = Assert.expectEq(
"String.split('')", '', stringSplitResult);
//split on empty regular expression
stringSplitResult = '';
var pattern:RegExp = new RegExp();
var splitResult2:Array = testStr.split(pattern);
if (splitResult2 != null && splitExpected != null) {
if (splitExpected.length != splitResult2.length) {
stringSplitResult += 'unexpected length - expected: '+splitExpected.length + 'Found: '+splitResult2.length+' ';
} else {
for (var i = 0; i< splitExpected.length; i++) {
if (splitExpected[i] != splitResult2[i])
stringSplitResult += 'mismatch - expected: '+splitExpected[i]+' Found: '+splitResult2[i] + ' ';
}
}
}
else {
stringSplitResult += 'result array null! ';
}
this.array[this.item++] = Assert.expectEq(
"String.split(new RegExp())", '', stringSplitResult);
//split on empty regular expression
stringSplitResult = '';
var pattern:RegExp = new RegExp("");
var splitResult3:Array = testStr.split(pattern);
if (splitResult3 != null && splitExpected != null) {
if (splitExpected.length != splitResult3.length) {
stringSplitResult += 'unexpected length - expected: '+splitExpected.length + 'Found: '+splitResult3.length+' ';
} else {
for (var i = 0; i< splitExpected.length; i++) {
if (splitExpected[i] != splitResult3[i])
stringSplitResult += 'mismatch - expected: '+splitExpected[i]+' Found: '+splitResult3[i] + ' ';
}
}
}
else {
stringSplitResult += 'result array null! ';
}
this.array[this.item++] = Assert.expectEq(
"String.split(new RegExp(''))", '', stringSplitResult);
//split on undefined
var splitResult4:Array = testStr.split(undefined);
if (splitResult4 != null) {
this.array[this.item++] = Assert.expectEq(
"String.split(undefined) result length", 1, splitResult4.length);
if (splitResult4.length == 1) {
this.array[this.item++] = Assert.expectEq(
"String.split(undefined)[0]", testStr, splitResult4[0]);
}
}
}
function negativeTestReplace(hexFrom, hexTo, array, item, testStr)
{
var replaceResult = testStr.replace(String.fromCharCode(hexFrom)+String.fromCharCode(hexTo));
this.array[this.item++] = Assert.expectEq(
"String.replace(" + decimalToHexString(hexFrom) + decimalToHexString(hexTo) + ")", testStr, replaceResult);
}
// return true if unicode is not a regexp reserved character
function notReserved(charCode) {
return (charCode != 36) //$
&& (charCode != 40) //(
&& (charCode != 41) //)
&& (charCode != 42) //*
&& (charCode != 43) //+
&& (charCode != 46) //.
&& (charCode != 63) //?
&& (charCode != 91) //[
&& (charCode != 92) //\
&& (charCode != 94) //^
&& (charCode != 124); //|
}
function decimalToHexString( n ) {
n = Number( n );
var h = "0x";
for ( var i = 3; i >= 0; i-- ) {
if ( n >= Math.pow(16, i) ){
var t = Math.floor( n / Math.pow(16, i));
n -= t * Math.pow(16, i);
if ( t >= 10 ) {
if ( t == 10 ) { h += "A"; }
if ( t == 11 ) { h += "B"; }
if ( t == 12 ) { h += "C"; }
if ( t == 13 ) { h += "D"; }
if ( t == 14 ) { h += "E"; }
if ( t == 15 ) { h += "F"; }
} else {
h += String( t );
}
} else {
h += "0";
}
}
return h;
}

View File

@ -0,0 +1,289 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
import com.adobe.test.Assert;
/*
Description:
Concatenate the unicode characters in the given range and test against it.
For each char in the given range:
- search for the char in the test string
- search for a string of 3 chars in the test string
- match the char in the test string
- split the test string around the char
- insert a B, S, CS, WS char into the test string and split around the inserted char
- replace the char with an empty string
- replace the char with the first and last chars in the given unicode range
Modifications:
10/04/06 - cpeyer - change to single testcase for each range, to decrease # of
testcases.
*/
function testUnicodeRange(hexFrom, hexTo)
{
// split the range into smaller more mangeable set
var range = 250;
for (var i = hexFrom; i <= hexTo; i= i+range+1 ) {
var subHexFrom = i;
var subHexTo = (i+range <= hexTo) ? i+range:hexTo;
testUnicodeRangeHelper(subHexFrom, subHexTo);
}
}
function testUnicodeRangeHelper(hexFrom, hexTo) {
var offset:int = hexFrom;
var testStr = "";
for (var i = hexFrom; i <= hexTo; i++ ) {
testStr += String.fromCharCode(i);
}
// The following vars hold the results of the unicode tests in the for loop
var stringSearchResult:String = '';
var string3SearchResult:String = '';
var stringMatchResult:String = '';
var stringSplitResult:String = '';
for (var i = hexFrom; i <= hexTo; i++ ) {
var charStr = String.fromCharCode(i);
var charStrPattern = stringPatternFromCharCode(i);
// 1. String.search()
var searchExpect = i - offset;
var searchResult:int = testStr.search(charStrPattern);
if (searchExpect != searchResult) stringSearchResult += decimalToHexString(searchExpect) + ' ';
// search a string of 3 chars
var searchPattern = "";
for (var j = i; j <= hexTo && j < i + 3; j++) {
searchPattern += stringPatternFromCharCode(j);
}
searchResult = testStr.search(searchPattern);
if (searchExpect != searchResult) string3SearchResult += decimalToHexString(searchExpect) + ' ';
// 2. String.match()
var matchResult:Array = testStr.match(charStrPattern);
if (matchResult == null) {
stringMatchResult += "Failed to find match: " + charStrPattern + " ";
} else if (charStr != matchResult[0]) {
stringMatchResult += "Failed to match chars: "+charStr + " with " + matchResult[0] + ' ';
}
// 3. String.split()
var re = new RegExp("(" + charStrPattern + ")");
var splitResult:Array = testStr.split(re);
if (splitResult == null) {
stringSplitResult += "Failed to split string on: " + charStr + ' ';
} else {
// test string before searched char
if (testStr.substring(0,searchResult) != splitResult[0])
stringSplitResult += "split failed before: " + charStr + ' ';
// test searched char
if (charStr != splitResult[1])
stringSplitResult += "split failed on: " + charStr + ' ';
// test string after searched char
if (testStr.substring(searchResult + 1, testStr.length) != splitResult[2])
stringSplitResult += "split failed after: " + charStr + ' ';
}
} // for loop
// Output test results
this.array[this.item++] = Assert.expectEq(
"Unicode String.search from " + decimalToHexString(hexFrom) + " to " + decimalToHexString(hexFrom),
'', stringSearchResult);
this.array[this.item++] = Assert.expectEq(
"Unicode String.search for 3 chars from " + decimalToHexString(hexFrom) + " to " + decimalToHexString(hexFrom),
'', string3SearchResult);
this.array[this.item++] = Assert.expectEq(
"Unicode String.match", '', stringMatchResult);
this.array[this.item++] = Assert.expectEq(
"Unicode String.split", '', stringSplitResult);
testReplace(hexFrom, hexTo);
testSplitOnMark(testStr, B, "B");
testSplitOnMark(testStr, S, "S");
testSplitOnMark(testStr, CS, "CS");
testSplitOnMark(testStr, WS, "WS");
}
function testReplace(hexFrom, hexTo)
{
var offset:int = hexFrom;
var testStr = "";
for (var i = hexFrom; i <= hexTo; i++ ) {
testStr += String.fromCharCode(i);
}
var stringReplaceResult:String = '';
for (var i = hexFrom; i <= hexTo; i++ ) {
var charStr = String.fromCharCode(i);
var charStrPattern = stringPatternFromCharCode(i);
// 4. String.replace()
var index = i - offset;
var replaceResult:String = testStr.replace(charStr, "");
var replaceExpect = testStr.substring(0, index);
replaceExpect += testStr.substring(index + 1, testStr.length);
if (replaceExpect != replaceResult)
stringReplaceResult += "Replace failed on: " + charStr + " ";
// replace with first and last char in given Unicode range
var firstLastChars = stringPatternFromCharCode(hexFrom) + stringPatternFromCharCode(hexTo);
var replaceResult2:String = testStr.replace(charStr, firstLastChars);
var replaceExpect2 = testStr.substring(0, index);
replaceExpect2 += firstLastChars;
replaceExpect2 += testStr.substring(index + 1, testStr.length);
if (replaceExpect2 != replaceResult2)
stringReplaceResult += "Replace failed swapping: " + firstLastChars + " ";
}
this.array[this.item++] = Assert.expectEq(
"Unicode String.replace", '', stringReplaceResult);
}
function testSplitOnMark(testStr:String, markArray:Array, markArrayName:String) {
var testSplitResult:String = ''; //holds results of splitting
for (var i = 0; i < markArray.length; i++) {
var mark = markArray[i];
var markStr = String.fromCharCode(mark);
var markStrPattern = stringPatternFromCharCode(mark);
// insert the mark character into the middle of testStr
var insertIndex = Math.floor(testStr.length / 2);
var markedStr = testStr.substring(0, insertIndex);
markedStr += markStr;
markedStr += testStr.substring(insertIndex, testStr.length);
// split around the mark
var markRE = new RegExp("(" + markStrPattern + ")");
var splitMarkedResult:Array = markedStr.split(markRE);
var splitMessage = "Split on " + markArrayName + " mark " + decimalToHexString(mark);
if (splitMarkedResult == null) {
testSplitResult += 'array is null, expected not null!';
} else {
var markIndex = markedStr.indexOf(markStr, 0);
// test segment before mark
if (markedStr.substring(0, markIndex) != splitMarkedResult[0])
testSplitResult += "Split failed before: " + decimalToHexString(mark);
// test the mark we split on
if (markedStr.substring(markIndex, markIndex + 1) != splitMarkedResult[1])
testSplitResult += "Split failed on: " + decimalToHexString(mark);
// test segment after mark
var segmentEnd = markedStr.indexOf(markStr, markIndex + 1);
if (segmentEnd == -1) {
segmentEnd = markedStr.length;
}
if (markedStr.substring(markIndex + 1, segmentEnd) != splitMarkedResult[2])
testSplitResult += "Split failed after: " + decimalToHexString(mark);
} // else
} // for
this.array[this.item++] = Assert.expectEq(
"Unicode Split on Mark", '', testSplitResult);
}
function regexpReserved(charCode) {
return (charCode == 36) // $
|| (charCode == 40) // (
|| (charCode == 41) // )
|| (charCode == 42) // *
|| (charCode == 43) // +
|| (charCode == 46) // .
|| (charCode == 63) // ?
|| (charCode == 91) // [
|| (charCode == 92) // \
|| (charCode == 94) // ^
|| (charCode == 124); // |
}
var B = new Array(0x000A, // line feed
0x000D, // carriage return
0x001C,
0x001D,
0x001E,
0x0085,
0x2029);
var S = new Array(0x0009,
0x000B,
0x001F);
var CS = new Array(0x002C,
0x002E,
0x002F,
0x003A,
0x00A0,
0x060C,
0x2044,
0xFE50,
0xFE52,
0xFE55,
0xFF0C,
0xFF0E,
0xFF1A);
var WS = new Array(0x000C,
0x0020,
0x1680,
0x180E,
0x2000,
0x2001,
0x2002,
0x2003,
0x2004,
0x2005,
0x2006,
0x2007,
0x2008,
0x2009,
0x200A,
0x2028,
0x202F,
0x205F,
0x3000);
function stringPatternFromCharCode(charCode) {
var result = "";
if (regexpReserved(charCode)) {
result += "\\";
}
result += String.fromCharCode(charCode);
return result;
}
function decimalToHexString( n ) {
n = Number( n );
var h = "0x";
for ( var i = 3; i >= 0; i-- ) {
if ( n >= Math.pow(16, i) ){
var t = Math.floor( n / Math.pow(16, i));
n -= t * Math.pow(16, i);
if ( t >= 10 ) {
if ( t == 10 ) { h += "A"; }
if ( t == 11 ) { h += "B"; }
if ( t == 12 ) { h += "C"; }
if ( t == 13 ) { h += "D"; }
if ( t == 14 ) { h += "E"; }
if ( t == 15 ) { h += "F"; }
} else {
h += String( t );
}
} else {
h += "0";
}
}
return h;
}

View File

@ -0,0 +1,26 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
package {
import flash.display.MovieClip; public class Test extends MovieClip {}
}
include "../include/unicodeUtil.as";
include "../include/unicodeNegativeUtil.as";
// var SECTION = "Basic Latin";
// var VERSION = "ECMA_3";
// var TITLE = "Test String functions (search, match, split, replace) on all unicode characters";
var array = new Array();
var item = 0;
getTestCases();
var testcases = array;
function getTestCases():void {
// Basic Latin
testUnicodeRange(0x0001, 0x007F);
negativeTestUnicodeRange(0x0001, 0x007F);
}

View File

@ -0,0 +1,13 @@
<flex-config>
<compiler>
<source-path>
<path-element>.</path-element>
<path-element>../../../lib</path-element>
</source-path>
<debug>false</debug>
<omit-trace-statements>false</omit-trace-statements>
<show-actionscript-warnings>false</show-actionscript-warnings>
<strict>false</strict>
</compiler>
<output>test.swf</output>
</flex-config>

View File

@ -0,0 +1,21 @@
Unicode String.search from 0x0001 to 0x0001 PASSED!
Unicode String.search for 3 chars from 0x0001 to 0x0001 PASSED!
Unicode String.match PASSED!
Unicode String.split PASSED!
Unicode String.replace PASSED!
Unicode Split on Mark PASSED!
Unicode Split on Mark PASSED!
Unicode Split on Mark PASSED!
Unicode Split on Mark PASSED!
Negative String.search PASSED!
0x0001 to 0x007F String.search(undefined) PASSED!
0x0001 to 0x007F String.search() PASSED!
Negative String.match PASSED!
0x0001 to 0x007F String.match(undefined) PASSED!
0x0001 to 0x007F String.match() PASSED!
String.split('') PASSED!
String.split(new RegExp()) PASSED!
String.split(new RegExp('')) PASSED!
String.split(undefined) result length PASSED!
String.split(undefined)[0] PASSED!
String.replace(0x00010x007F) PASSED!

View File

@ -0,0 +1 @@
num_ticks = 1

View File

@ -0,0 +1,26 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
package {
import flash.display.MovieClip; public class Test extends MovieClip {}
}
include "../include/unicodeUtil.as";
include "../include/unicodeNegativeUtil.as";
// var SECTION = "Latin-1 Supplement";
// var VERSION = "ECMA_3";
// var TITLE = "Test String functions (search, match, split, replace) on all unicode characters";
var array = new Array();
var item = 0;
getTestCases();
var testcases = array;
function getTestCases():void {
// Latin-1 Supplement
testUnicodeRange(0x0080, 0x00FF);
negativeTestUnicodeRange(0x0080, 0x00FF);
}

View File

@ -0,0 +1,13 @@
<flex-config>
<compiler>
<source-path>
<path-element>.</path-element>
<path-element>../../../lib</path-element>
</source-path>
<debug>false</debug>
<omit-trace-statements>false</omit-trace-statements>
<show-actionscript-warnings>false</show-actionscript-warnings>
<strict>false</strict>
</compiler>
<output>test.swf</output>
</flex-config>

View File

@ -0,0 +1,21 @@
Unicode String.search from 0x0080 to 0x0080 PASSED!
Unicode String.search for 3 chars from 0x0080 to 0x0080 PASSED!
Unicode String.match PASSED!
Unicode String.split PASSED!
Unicode String.replace PASSED!
Unicode Split on Mark PASSED!
Unicode Split on Mark PASSED!
Unicode Split on Mark PASSED!
Unicode Split on Mark PASSED!
Negative String.search PASSED!
0x0080 to 0x00FF String.search(undefined) PASSED!
0x0080 to 0x00FF String.search() PASSED!
Negative String.match PASSED!
0x0080 to 0x00FF String.match(undefined) PASSED!
0x0080 to 0x00FF String.match() PASSED!
String.split('') PASSED!
String.split(new RegExp()) PASSED!
String.split(new RegExp('')) PASSED!
String.split(undefined) result length PASSED!
String.split(undefined)[0] PASSED!
String.replace(0x00800x00FF) PASSED!

View File

@ -0,0 +1,26 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
package {
import flash.display.MovieClip; public class Test extends MovieClip {}
}
include "../include/unicodeUtil.as";
include "../include/unicodeNegativeUtil.as";
// var SECTION = "Latin Extended-A";
// var VERSION = "ECMA_3";
// var TITLE = "Test String functions (search, match, split, replace) on all unicode characters";
var array = new Array();
var item = 0;
getTestCases();
var testcases = array;
function getTestCases():void {
// Latin Extended-A
testUnicodeRange(0x0100, 0x017F);
negativeTestUnicodeRange(0x0100, 0x017F);
}

View File

@ -0,0 +1,13 @@
<flex-config>
<compiler>
<source-path>
<path-element>.</path-element>
<path-element>../../../lib</path-element>
</source-path>
<debug>false</debug>
<omit-trace-statements>false</omit-trace-statements>
<show-actionscript-warnings>false</show-actionscript-warnings>
<strict>false</strict>
</compiler>
<output>test.swf</output>
</flex-config>

View File

@ -0,0 +1,21 @@
Unicode String.search from 0x0100 to 0x0100 PASSED!
Unicode String.search for 3 chars from 0x0100 to 0x0100 PASSED!
Unicode String.match PASSED!
Unicode String.split PASSED!
Unicode String.replace PASSED!
Unicode Split on Mark PASSED!
Unicode Split on Mark PASSED!
Unicode Split on Mark PASSED!
Unicode Split on Mark PASSED!
Negative String.search PASSED!
0x0100 to 0x017F String.search(undefined) PASSED!
0x0100 to 0x017F String.search() PASSED!
Negative String.match PASSED!
0x0100 to 0x017F String.match(undefined) PASSED!
0x0100 to 0x017F String.match() PASSED!
String.split('') PASSED!
String.split(new RegExp()) PASSED!
String.split(new RegExp('')) PASSED!
String.split(undefined) result length PASSED!
String.split(undefined)[0] PASSED!
String.replace(0x01000x017F) PASSED!

View File

@ -0,0 +1 @@
num_ticks = 1

View File

@ -0,0 +1,26 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
package {
import flash.display.MovieClip; public class Test extends MovieClip {}
}
include "../include/unicodeUtil.as";
include "../include/unicodeNegativeUtil.as";
// var SECTION = "Latin Extended-B";
// var VERSION = "ECMA_3";
// var TITLE = "Test String functions (search, match, split, replace) on all unicode characters";
var array = new Array();
var item = 0;
getTestCases();
var testcases = array;
function getTestCases():void {
// Latin Extended-B
testUnicodeRange(0x0180, 0x024F);
negativeTestUnicodeRange(0x0180, 0x024F);
}

View File

@ -0,0 +1,13 @@
<flex-config>
<compiler>
<source-path>
<path-element>.</path-element>
<path-element>../../../lib</path-element>
</source-path>
<debug>false</debug>
<omit-trace-statements>false</omit-trace-statements>
<show-actionscript-warnings>false</show-actionscript-warnings>
<strict>false</strict>
</compiler>
<output>test.swf</output>
</flex-config>

View File

@ -0,0 +1,21 @@
Unicode String.search from 0x0180 to 0x0180 PASSED!
Unicode String.search for 3 chars from 0x0180 to 0x0180 PASSED!
Unicode String.match PASSED!
Unicode String.split PASSED!
Unicode String.replace PASSED!
Unicode Split on Mark PASSED!
Unicode Split on Mark PASSED!
Unicode Split on Mark PASSED!
Unicode Split on Mark PASSED!
Negative String.search PASSED!
0x0180 to 0x024F String.search(undefined) PASSED!
0x0180 to 0x024F String.search() PASSED!
Negative String.match PASSED!
0x0180 to 0x024F String.match(undefined) PASSED!
0x0180 to 0x024F String.match() PASSED!
String.split('') PASSED!
String.split(new RegExp()) PASSED!
String.split(new RegExp('')) PASSED!
String.split(undefined) result length PASSED!
String.split(undefined)[0] PASSED!
String.replace(0x01800x024F) PASSED!

View File

@ -0,0 +1 @@
num_ticks = 1

View File

@ -0,0 +1,26 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
package {
import flash.display.MovieClip; public class Test extends MovieClip {}
}
include "../include/unicodeUtil.as";
include "../include/unicodeNegativeUtil.as";
// var SECTION = "IPA Extensions";
// var VERSION = "ECMA_3";
// var TITLE = "Test String functions (search, match, split, replace) on all unicode characters";
var array = new Array();
var item = 0;
getTestCases();
var testcases = array;
function getTestCases():void {
// IPA Extensions
testUnicodeRange(0x0250, 0x02AF);
negativeTestUnicodeRange(0x0250, 0x02AF);
}

View File

@ -0,0 +1,13 @@
<flex-config>
<compiler>
<source-path>
<path-element>.</path-element>
<path-element>../../../lib</path-element>
</source-path>
<debug>false</debug>
<omit-trace-statements>false</omit-trace-statements>
<show-actionscript-warnings>false</show-actionscript-warnings>
<strict>false</strict>
</compiler>
<output>test.swf</output>
</flex-config>

View File

@ -0,0 +1,21 @@
Unicode String.search from 0x0250 to 0x0250 PASSED!
Unicode String.search for 3 chars from 0x0250 to 0x0250 PASSED!
Unicode String.match PASSED!
Unicode String.split PASSED!
Unicode String.replace PASSED!
Unicode Split on Mark PASSED!
Unicode Split on Mark PASSED!
Unicode Split on Mark PASSED!
Unicode Split on Mark PASSED!
Negative String.search PASSED!
0x0250 to 0x02AF String.search(undefined) PASSED!
0x0250 to 0x02AF String.search() PASSED!
Negative String.match PASSED!
0x0250 to 0x02AF String.match(undefined) PASSED!
0x0250 to 0x02AF String.match() PASSED!
String.split('') PASSED!
String.split(new RegExp()) PASSED!
String.split(new RegExp('')) PASSED!
String.split(undefined) result length PASSED!
String.split(undefined)[0] PASSED!
String.replace(0x02500x02AF) PASSED!

View File

@ -0,0 +1 @@
num_ticks = 1

View File

@ -0,0 +1,26 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
package {
import flash.display.MovieClip; public class Test extends MovieClip {}
}
include "../include/unicodeUtil.as";
include "../include/unicodeNegativeUtil.as";
// var SECTION = "Spacing Modifier Letters";
// var VERSION = "ECMA_3";
// var TITLE = "Test String functions (search, match, split, replace) on all unicode characters";
var array = new Array();
var item = 0;
getTestCases();
var testcases = array;
function getTestCases():void {
// Spacing Modifier Letters
testUnicodeRange(0x02B0, 0x02FF);
negativeTestUnicodeRange(0x02B0, 0x02FF);
}

View File

@ -0,0 +1,13 @@
<flex-config>
<compiler>
<source-path>
<path-element>.</path-element>
<path-element>../../../lib</path-element>
</source-path>
<debug>false</debug>
<omit-trace-statements>false</omit-trace-statements>
<show-actionscript-warnings>false</show-actionscript-warnings>
<strict>false</strict>
</compiler>
<output>test.swf</output>
</flex-config>

View File

@ -0,0 +1,21 @@
Unicode String.search from 0x02B0 to 0x02B0 PASSED!
Unicode String.search for 3 chars from 0x02B0 to 0x02B0 PASSED!
Unicode String.match PASSED!
Unicode String.split PASSED!
Unicode String.replace PASSED!
Unicode Split on Mark PASSED!
Unicode Split on Mark PASSED!
Unicode Split on Mark PASSED!
Unicode Split on Mark PASSED!
Negative String.search PASSED!
0x02B0 to 0x02FF String.search(undefined) PASSED!
0x02B0 to 0x02FF String.search() PASSED!
Negative String.match PASSED!
0x02B0 to 0x02FF String.match(undefined) PASSED!
0x02B0 to 0x02FF String.match() PASSED!
String.split('') PASSED!
String.split(new RegExp()) PASSED!
String.split(new RegExp('')) PASSED!
String.split(undefined) result length PASSED!
String.split(undefined)[0] PASSED!
String.replace(0x02B00x02FF) PASSED!

View File

@ -0,0 +1,26 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
package {
import flash.display.MovieClip; public class Test extends MovieClip {}
}
include "../include/unicodeUtil.as";
include "../include/unicodeNegativeUtil.as";
// var SECTION = "Combining Diacritical Marks";
// var VERSION = "ECMA_3";
// var TITLE = "Test String functions (search, match, split, replace) on all unicode characters";
var array = new Array();
var item = 0;
getTestCases();
var testcases = array;
function getTestCases():void {
// Combining Diacritical Marks
testUnicodeRange(0x0300, 0x036F);
negativeTestUnicodeRange(0x0300, 0x036F);
}

View File

@ -0,0 +1,13 @@
<flex-config>
<compiler>
<source-path>
<path-element>.</path-element>
<path-element>../../../lib</path-element>
</source-path>
<debug>false</debug>
<omit-trace-statements>false</omit-trace-statements>
<show-actionscript-warnings>false</show-actionscript-warnings>
<strict>false</strict>
</compiler>
<output>test.swf</output>
</flex-config>

View File

@ -0,0 +1,21 @@
Unicode String.search from 0x0300 to 0x0300 PASSED!
Unicode String.search for 3 chars from 0x0300 to 0x0300 PASSED!
Unicode String.match PASSED!
Unicode String.split PASSED!
Unicode String.replace PASSED!
Unicode Split on Mark PASSED!
Unicode Split on Mark PASSED!
Unicode Split on Mark PASSED!
Unicode Split on Mark PASSED!
Negative String.search PASSED!
0x0300 to 0x036F String.search(undefined) PASSED!
0x0300 to 0x036F String.search() PASSED!
Negative String.match PASSED!
0x0300 to 0x036F String.match(undefined) PASSED!
0x0300 to 0x036F String.match() PASSED!
String.split('') PASSED!
String.split(new RegExp()) PASSED!
String.split(new RegExp('')) PASSED!
String.split(undefined) result length PASSED!
String.split(undefined)[0] PASSED!
String.replace(0x03000x036F) PASSED!

View File

@ -0,0 +1,26 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
package {
import flash.display.MovieClip; public class Test extends MovieClip {}
}
include "../include/unicodeUtil.as";
include "../include/unicodeNegativeUtil.as";
// var SECTION = "Greek and Coptic";
// var VERSION = "ECMA_3";
// var TITLE = "Test String functions (search, match, split, replace) on all unicode characters";
var array = new Array();
var item = 0;
getTestCases();
var testcases = array;
function getTestCases():void {
// Greek and Coptic
testUnicodeRange(0x0370, 0x03FF);
negativeTestUnicodeRange(0x0370, 0x03FF);
}

View File

@ -0,0 +1,13 @@
<flex-config>
<compiler>
<source-path>
<path-element>.</path-element>
<path-element>../../../lib</path-element>
</source-path>
<debug>false</debug>
<omit-trace-statements>false</omit-trace-statements>
<show-actionscript-warnings>false</show-actionscript-warnings>
<strict>false</strict>
</compiler>
<output>test.swf</output>
</flex-config>

View File

@ -0,0 +1,21 @@
Unicode String.search from 0x0370 to 0x0370 PASSED!
Unicode String.search for 3 chars from 0x0370 to 0x0370 PASSED!
Unicode String.match PASSED!
Unicode String.split PASSED!
Unicode String.replace PASSED!
Unicode Split on Mark PASSED!
Unicode Split on Mark PASSED!
Unicode Split on Mark PASSED!
Unicode Split on Mark PASSED!
Negative String.search PASSED!
0x0370 to 0x03FF String.search(undefined) PASSED!
0x0370 to 0x03FF String.search() PASSED!
Negative String.match PASSED!
0x0370 to 0x03FF String.match(undefined) PASSED!
0x0370 to 0x03FF String.match() PASSED!
String.split('') PASSED!
String.split(new RegExp()) PASSED!
String.split(new RegExp('')) PASSED!
String.split(undefined) result length PASSED!
String.split(undefined)[0] PASSED!
String.replace(0x03700x03FF) PASSED!

View File

@ -0,0 +1 @@
num_ticks = 1

View File

@ -0,0 +1,26 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
package {
import flash.display.MovieClip; public class Test extends MovieClip {}
}
include "../include/unicodeUtil.as";
include "../include/unicodeNegativeUtil.as";
// var SECTION = "Cyrillic";
// var VERSION = "ECMA_3";
// var TITLE = "Test String functions (search, match, split, replace) on all unicode characters";
var array = new Array();
var item = 0;
getTestCases();
var testcases = array;
function getTestCases():void {
// Cyrillic
testUnicodeRange(0x0400, 0x04FF);
negativeTestUnicodeRange(0x0400, 0x04FF);
}

View File

@ -0,0 +1,13 @@
<flex-config>
<compiler>
<source-path>
<path-element>.</path-element>
<path-element>../../../lib</path-element>
</source-path>
<debug>false</debug>
<omit-trace-statements>false</omit-trace-statements>
<show-actionscript-warnings>false</show-actionscript-warnings>
<strict>false</strict>
</compiler>
<output>test.swf</output>
</flex-config>

View File

@ -0,0 +1,42 @@
Unicode String.search from 0x0400 to 0x0400 PASSED!
Unicode String.search for 3 chars from 0x0400 to 0x0400 PASSED!
Unicode String.match PASSED!
Unicode String.split PASSED!
Unicode String.replace PASSED!
Unicode Split on Mark PASSED!
Unicode Split on Mark PASSED!
Unicode Split on Mark PASSED!
Unicode Split on Mark PASSED!
Unicode String.search from 0x04FB to 0x04FB PASSED!
Unicode String.search for 3 chars from 0x04FB to 0x04FB PASSED!
Unicode String.match PASSED!
Unicode String.split PASSED!
Unicode String.replace PASSED!
Unicode Split on Mark PASSED!
Unicode Split on Mark PASSED!
Unicode Split on Mark PASSED!
Unicode Split on Mark PASSED!
Negative String.search PASSED!
0x0400 to 0x04FA String.search(undefined) PASSED!
0x0400 to 0x04FA String.search() PASSED!
Negative String.match PASSED!
0x0400 to 0x04FA String.match(undefined) PASSED!
0x0400 to 0x04FA String.match() PASSED!
String.split('') PASSED!
String.split(new RegExp()) PASSED!
String.split(new RegExp('')) PASSED!
String.split(undefined) result length PASSED!
String.split(undefined)[0] PASSED!
String.replace(0x04000x04FA) PASSED!
Negative String.search PASSED!
0x04FB to 0x04FF String.search(undefined) PASSED!
0x04FB to 0x04FF String.search() PASSED!
Negative String.match PASSED!
0x04FB to 0x04FF String.match(undefined) PASSED!
0x04FB to 0x04FF String.match() PASSED!
String.split('') PASSED!
String.split(new RegExp()) PASSED!
String.split(new RegExp('')) PASSED!
String.split(undefined) result length PASSED!
String.split(undefined)[0] PASSED!
String.replace(0x04FB0x04FF) PASSED!

View File

@ -0,0 +1 @@
num_ticks = 1

View File

@ -0,0 +1,26 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
package {
import flash.display.MovieClip; public class Test extends MovieClip {}
}
include "../include/unicodeUtil.as";
include "../include/unicodeNegativeUtil.as";
// var SECTION = "Cyrillic Supplementary";
// var VERSION = "ECMA_3";
// var TITLE = "Test String functions (search, match, split, replace) on all unicode characters";
var array = new Array();
var item = 0;
getTestCases();
var testcases = array;
function getTestCases():void {
// Cyrillic Supplementary
testUnicodeRange(0x0500, 0x052F);
negativeTestUnicodeRange(0x0500, 0x052F);
}

View File

@ -0,0 +1,13 @@
<flex-config>
<compiler>
<source-path>
<path-element>.</path-element>
<path-element>../../../lib</path-element>
</source-path>
<debug>false</debug>
<omit-trace-statements>false</omit-trace-statements>
<show-actionscript-warnings>false</show-actionscript-warnings>
<strict>false</strict>
</compiler>
<output>test.swf</output>
</flex-config>

View File

@ -0,0 +1,21 @@
Unicode String.search from 0x0500 to 0x0500 PASSED!
Unicode String.search for 3 chars from 0x0500 to 0x0500 PASSED!
Unicode String.match PASSED!
Unicode String.split PASSED!
Unicode String.replace PASSED!
Unicode Split on Mark PASSED!
Unicode Split on Mark PASSED!
Unicode Split on Mark PASSED!
Unicode Split on Mark PASSED!
Negative String.search PASSED!
0x0500 to 0x052F String.search(undefined) PASSED!
0x0500 to 0x052F String.search() PASSED!
Negative String.match PASSED!
0x0500 to 0x052F String.match(undefined) PASSED!
0x0500 to 0x052F String.match() PASSED!
String.split('') PASSED!
String.split(new RegExp()) PASSED!
String.split(new RegExp('')) PASSED!
String.split(undefined) result length PASSED!
String.split(undefined)[0] PASSED!
String.replace(0x05000x052F) PASSED!

View File

@ -0,0 +1,26 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
package {
import flash.display.MovieClip; public class Test extends MovieClip {}
}
include "../include/unicodeUtil.as";
include "../include/unicodeNegativeUtil.as";
// var SECTION = "Armenian";
// var VERSION = "ECMA_3";
// var TITLE = "Test String functions (search, match, split, replace) on all unicode characters";
var array = new Array();
var item = 0;
getTestCases();
var testcases = array;
function getTestCases():void {
// Armenian
testUnicodeRange(0x0530, 0x058F);
negativeTestUnicodeRange(0x0530, 0x058F);
}

View File

@ -0,0 +1,13 @@
<flex-config>
<compiler>
<source-path>
<path-element>.</path-element>
<path-element>../../../lib</path-element>
</source-path>
<debug>false</debug>
<omit-trace-statements>false</omit-trace-statements>
<show-actionscript-warnings>false</show-actionscript-warnings>
<strict>false</strict>
</compiler>
<output>test.swf</output>
</flex-config>

View File

@ -0,0 +1,21 @@
Unicode String.search from 0x0530 to 0x0530 PASSED!
Unicode String.search for 3 chars from 0x0530 to 0x0530 PASSED!
Unicode String.match PASSED!
Unicode String.split PASSED!
Unicode String.replace PASSED!
Unicode Split on Mark PASSED!
Unicode Split on Mark PASSED!
Unicode Split on Mark PASSED!
Unicode Split on Mark PASSED!
Negative String.search PASSED!
0x0530 to 0x058F String.search(undefined) PASSED!
0x0530 to 0x058F String.search() PASSED!
Negative String.match PASSED!
0x0530 to 0x058F String.match(undefined) PASSED!
0x0530 to 0x058F String.match() PASSED!
String.split('') PASSED!
String.split(new RegExp()) PASSED!
String.split(new RegExp('')) PASSED!
String.split(undefined) result length PASSED!
String.split(undefined)[0] PASSED!
String.replace(0x05300x058F) PASSED!

View File

@ -0,0 +1 @@
num_ticks = 1

View File

@ -0,0 +1,26 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
package {
import flash.display.MovieClip; public class Test extends MovieClip {}
}
include "../include/unicodeUtil.as";
include "../include/unicodeNegativeUtil.as";
// var SECTION = "Hebrew";
// var VERSION = "ECMA_3";
// var TITLE = "Test String functions (search, match, split, replace) on all unicode characters";
var array = new Array();
var item = 0;
getTestCases();
var testcases = array;
function getTestCases():void {
// Hebrew
testUnicodeRange(0x0590, 0x05FF);
negativeTestUnicodeRange(0x0590, 0x05FF);
}

View File

@ -0,0 +1,13 @@
<flex-config>
<compiler>
<source-path>
<path-element>.</path-element>
<path-element>../../../lib</path-element>
</source-path>
<debug>false</debug>
<omit-trace-statements>false</omit-trace-statements>
<show-actionscript-warnings>false</show-actionscript-warnings>
<strict>false</strict>
</compiler>
<output>test.swf</output>
</flex-config>

View File

@ -0,0 +1,21 @@
Unicode String.search from 0x0590 to 0x0590 PASSED!
Unicode String.search for 3 chars from 0x0590 to 0x0590 PASSED!
Unicode String.match PASSED!
Unicode String.split PASSED!
Unicode String.replace PASSED!
Unicode Split on Mark PASSED!
Unicode Split on Mark PASSED!
Unicode Split on Mark PASSED!
Unicode Split on Mark PASSED!
Negative String.search PASSED!
0x0590 to 0x05FF String.search(undefined) PASSED!
0x0590 to 0x05FF String.search() PASSED!
Negative String.match PASSED!
0x0590 to 0x05FF String.match(undefined) PASSED!
0x0590 to 0x05FF String.match() PASSED!
String.split('') PASSED!
String.split(new RegExp()) PASSED!
String.split(new RegExp('')) PASSED!
String.split(undefined) result length PASSED!
String.split(undefined)[0] PASSED!
String.replace(0x05900x05FF) PASSED!

View File

@ -0,0 +1 @@
num_ticks = 1

View File

@ -0,0 +1,26 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
package {
import flash.display.MovieClip; public class Test extends MovieClip {}
}
include "../include/unicodeUtil.as";
include "../include/unicodeNegativeUtil.as";
// var SECTION = "Arabic";
// var VERSION = "ECMA_3";
// var TITLE = "Test String functions (search, match, split, replace) on all unicode characters";
var array = new Array();
var item = 0;
getTestCases();
var testcases = array;
function getTestCases():void {
// Arabic
testUnicodeRange(0x0600, 0x06FF);
negativeTestUnicodeRange(0x0600, 0x06FF);
}

View File

@ -0,0 +1,13 @@
<flex-config>
<compiler>
<source-path>
<path-element>.</path-element>
<path-element>../../../lib</path-element>
</source-path>
<debug>false</debug>
<omit-trace-statements>false</omit-trace-statements>
<show-actionscript-warnings>false</show-actionscript-warnings>
<strict>false</strict>
</compiler>
<output>test.swf</output>
</flex-config>

View File

@ -0,0 +1,42 @@
Unicode String.search from 0x0600 to 0x0600 PASSED!
Unicode String.search for 3 chars from 0x0600 to 0x0600 PASSED!
Unicode String.match PASSED!
Unicode String.split PASSED!
Unicode String.replace PASSED!
Unicode Split on Mark PASSED!
Unicode Split on Mark PASSED!
Unicode Split on Mark PASSED!
Unicode Split on Mark PASSED!
Unicode String.search from 0x06FB to 0x06FB PASSED!
Unicode String.search for 3 chars from 0x06FB to 0x06FB PASSED!
Unicode String.match PASSED!
Unicode String.split PASSED!
Unicode String.replace PASSED!
Unicode Split on Mark PASSED!
Unicode Split on Mark PASSED!
Unicode Split on Mark PASSED!
Unicode Split on Mark PASSED!
Negative String.search PASSED!
0x0600 to 0x06FA String.search(undefined) PASSED!
0x0600 to 0x06FA String.search() PASSED!
Negative String.match PASSED!
0x0600 to 0x06FA String.match(undefined) PASSED!
0x0600 to 0x06FA String.match() PASSED!
String.split('') PASSED!
String.split(new RegExp()) PASSED!
String.split(new RegExp('')) PASSED!
String.split(undefined) result length PASSED!
String.split(undefined)[0] PASSED!
String.replace(0x06000x06FA) PASSED!
Negative String.search PASSED!
0x06FB to 0x06FF String.search(undefined) PASSED!
0x06FB to 0x06FF String.search() PASSED!
Negative String.match PASSED!
0x06FB to 0x06FF String.match(undefined) PASSED!
0x06FB to 0x06FF String.match() PASSED!
String.split('') PASSED!
String.split(new RegExp()) PASSED!
String.split(new RegExp('')) PASSED!
String.split(undefined) result length PASSED!
String.split(undefined)[0] PASSED!
String.replace(0x06FB0x06FF) PASSED!

View File

@ -0,0 +1 @@
num_ticks = 1

View File

@ -0,0 +1,26 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
package {
import flash.display.MovieClip; public class Test extends MovieClip {}
}
include "../include/unicodeUtil.as";
include "../include/unicodeNegativeUtil.as";
// var SECTION = "Syriac";
// var VERSION = "ECMA_3";
// var TITLE = "Test String functions (search, match, split, replace) on all unicode characters";
var array = new Array();
var item = 0;
getTestCases();
var testcases = array;
function getTestCases():void {
// Syriac
testUnicodeRange(0x0700, 0x074F);
negativeTestUnicodeRange(0x0700, 0x074F);
}

View File

@ -0,0 +1,13 @@
<flex-config>
<compiler>
<source-path>
<path-element>.</path-element>
<path-element>../../../lib</path-element>
</source-path>
<debug>false</debug>
<omit-trace-statements>false</omit-trace-statements>
<show-actionscript-warnings>false</show-actionscript-warnings>
<strict>false</strict>
</compiler>
<output>test.swf</output>
</flex-config>

View File

@ -0,0 +1,21 @@
Unicode String.search from 0x0700 to 0x0700 PASSED!
Unicode String.search for 3 chars from 0x0700 to 0x0700 PASSED!
Unicode String.match PASSED!
Unicode String.split PASSED!
Unicode String.replace PASSED!
Unicode Split on Mark PASSED!
Unicode Split on Mark PASSED!
Unicode Split on Mark PASSED!
Unicode Split on Mark PASSED!
Negative String.search PASSED!
0x0700 to 0x074F String.search(undefined) PASSED!
0x0700 to 0x074F String.search() PASSED!
Negative String.match PASSED!
0x0700 to 0x074F String.match(undefined) PASSED!
0x0700 to 0x074F String.match() PASSED!
String.split('') PASSED!
String.split(new RegExp()) PASSED!
String.split(new RegExp('')) PASSED!
String.split(undefined) result length PASSED!
String.split(undefined)[0] PASSED!
String.replace(0x07000x074F) PASSED!

View File

@ -0,0 +1 @@
num_ticks = 1

View File

@ -0,0 +1,26 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
package {
import flash.display.MovieClip; public class Test extends MovieClip {}
}
include "../include/unicodeUtil.as";
include "../include/unicodeNegativeUtil.as";
// var SECTION = "Thaana";
// var VERSION = "ECMA_3";
// var TITLE = "Test String functions (search, match, split, replace) on all unicode characters";
var array = new Array();
var item = 0;
getTestCases();
var testcases = array;
function getTestCases():void {
// Thaana
testUnicodeRange(0x0780, 0x07BF);
negativeTestUnicodeRange(0x0780, 0x07BF);
}

View File

@ -0,0 +1,13 @@
<flex-config>
<compiler>
<source-path>
<path-element>.</path-element>
<path-element>../../../lib</path-element>
</source-path>
<debug>false</debug>
<omit-trace-statements>false</omit-trace-statements>
<show-actionscript-warnings>false</show-actionscript-warnings>
<strict>false</strict>
</compiler>
<output>test.swf</output>
</flex-config>

View File

@ -0,0 +1,21 @@
Unicode String.search from 0x0780 to 0x0780 PASSED!
Unicode String.search for 3 chars from 0x0780 to 0x0780 PASSED!
Unicode String.match PASSED!
Unicode String.split PASSED!
Unicode String.replace PASSED!
Unicode Split on Mark PASSED!
Unicode Split on Mark PASSED!
Unicode Split on Mark PASSED!
Unicode Split on Mark PASSED!
Negative String.search PASSED!
0x0780 to 0x07BF String.search(undefined) PASSED!
0x0780 to 0x07BF String.search() PASSED!
Negative String.match PASSED!
0x0780 to 0x07BF String.match(undefined) PASSED!
0x0780 to 0x07BF String.match() PASSED!
String.split('') PASSED!
String.split(new RegExp()) PASSED!
String.split(new RegExp('')) PASSED!
String.split(undefined) result length PASSED!
String.split(undefined)[0] PASSED!
String.replace(0x07800x07BF) PASSED!

View File

@ -0,0 +1 @@
num_ticks = 1

View File

@ -0,0 +1,26 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
package {
import flash.display.MovieClip; public class Test extends MovieClip {}
}
include "../include/unicodeUtil.as";
include "../include/unicodeNegativeUtil.as";
// var SECTION = "Devanagari";
// var VERSION = "ECMA_3";
// var TITLE = "Test String functions (search, match, split, replace) on all unicode characters";
var array = new Array();
var item = 0;
getTestCases();
var testcases = array;
function getTestCases():void {
// Devanagari
testUnicodeRange(0x0900, 0x097F);
negativeTestUnicodeRange(0x0900, 0x097F);
}

View File

@ -0,0 +1,13 @@
<flex-config>
<compiler>
<source-path>
<path-element>.</path-element>
<path-element>../../../lib</path-element>
</source-path>
<debug>false</debug>
<omit-trace-statements>false</omit-trace-statements>
<show-actionscript-warnings>false</show-actionscript-warnings>
<strict>false</strict>
</compiler>
<output>test.swf</output>
</flex-config>

View File

@ -0,0 +1,21 @@
Unicode String.search from 0x0900 to 0x0900 PASSED!
Unicode String.search for 3 chars from 0x0900 to 0x0900 PASSED!
Unicode String.match PASSED!
Unicode String.split PASSED!
Unicode String.replace PASSED!
Unicode Split on Mark PASSED!
Unicode Split on Mark PASSED!
Unicode Split on Mark PASSED!
Unicode Split on Mark PASSED!
Negative String.search PASSED!
0x0900 to 0x097F String.search(undefined) PASSED!
0x0900 to 0x097F String.search() PASSED!
Negative String.match PASSED!
0x0900 to 0x097F String.match(undefined) PASSED!
0x0900 to 0x097F String.match() PASSED!
String.split('') PASSED!
String.split(new RegExp()) PASSED!
String.split(new RegExp('')) PASSED!
String.split(undefined) result length PASSED!
String.split(undefined)[0] PASSED!
String.replace(0x09000x097F) PASSED!

View File

@ -0,0 +1 @@
num_ticks = 1

View File

@ -0,0 +1,26 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
package {
import flash.display.MovieClip; public class Test extends MovieClip {}
}
include "../include/unicodeUtil.as";
include "../include/unicodeNegativeUtil.as";
// var SECTION = "Bengali";
// var VERSION = "ECMA_3";
// var TITLE = "Test String functions (search, match, split, replace) on all unicode characters";
var array = new Array();
var item = 0;
getTestCases();
var testcases = array;
function getTestCases():void {
// Bengali
testUnicodeRange(0x0980, 0x09FF);
negativeTestUnicodeRange(0x0980, 0x09FF);
}

View File

@ -0,0 +1,13 @@
<flex-config>
<compiler>
<source-path>
<path-element>.</path-element>
<path-element>../../../lib</path-element>
</source-path>
<debug>false</debug>
<omit-trace-statements>false</omit-trace-statements>
<show-actionscript-warnings>false</show-actionscript-warnings>
<strict>false</strict>
</compiler>
<output>test.swf</output>
</flex-config>

View File

@ -0,0 +1,21 @@
Unicode String.search from 0x0980 to 0x0980 PASSED!
Unicode String.search for 3 chars from 0x0980 to 0x0980 PASSED!
Unicode String.match PASSED!
Unicode String.split PASSED!
Unicode String.replace PASSED!
Unicode Split on Mark PASSED!
Unicode Split on Mark PASSED!
Unicode Split on Mark PASSED!
Unicode Split on Mark PASSED!
Negative String.search PASSED!
0x0980 to 0x09FF String.search(undefined) PASSED!
0x0980 to 0x09FF String.search() PASSED!
Negative String.match PASSED!
0x0980 to 0x09FF String.match(undefined) PASSED!
0x0980 to 0x09FF String.match() PASSED!
String.split('') PASSED!
String.split(new RegExp()) PASSED!
String.split(new RegExp('')) PASSED!
String.split(undefined) result length PASSED!
String.split(undefined)[0] PASSED!
String.replace(0x09800x09FF) PASSED!

View File

@ -0,0 +1 @@
num_ticks = 1

View File

@ -0,0 +1,26 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
package {
import flash.display.MovieClip; public class Test extends MovieClip {}
}
include "../include/unicodeUtil.as";
include "../include/unicodeNegativeUtil.as";
// var SECTION = "Gurmukhi";
// var VERSION = "ECMA_3";
// var TITLE = "Test String functions (search, match, split, replace) on all unicode characters";
var array = new Array();
var item = 0;
getTestCases();
var testcases = array;
function getTestCases():void {
// Gurmukhi
testUnicodeRange(0x0A00, 0x0A7F);
negativeTestUnicodeRange(0x0A00, 0x0A7F);
}

View File

@ -0,0 +1,13 @@
<flex-config>
<compiler>
<source-path>
<path-element>.</path-element>
<path-element>../../../lib</path-element>
</source-path>
<debug>false</debug>
<omit-trace-statements>false</omit-trace-statements>
<show-actionscript-warnings>false</show-actionscript-warnings>
<strict>false</strict>
</compiler>
<output>test.swf</output>
</flex-config>

View File

@ -0,0 +1,21 @@
Unicode String.search from 0x0A00 to 0x0A00 PASSED!
Unicode String.search for 3 chars from 0x0A00 to 0x0A00 PASSED!
Unicode String.match PASSED!
Unicode String.split PASSED!
Unicode String.replace PASSED!
Unicode Split on Mark PASSED!
Unicode Split on Mark PASSED!
Unicode Split on Mark PASSED!
Unicode Split on Mark PASSED!
Negative String.search PASSED!
0x0A00 to 0x0A7F String.search(undefined) PASSED!
0x0A00 to 0x0A7F String.search() PASSED!
Negative String.match PASSED!
0x0A00 to 0x0A7F String.match(undefined) PASSED!
0x0A00 to 0x0A7F String.match() PASSED!
String.split('') PASSED!
String.split(new RegExp()) PASSED!
String.split(new RegExp('')) PASSED!
String.split(undefined) result length PASSED!
String.split(undefined)[0] PASSED!
String.replace(0x0A000x0A7F) PASSED!

View File

@ -0,0 +1 @@
num_ticks = 1

View File

@ -0,0 +1,26 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
package {
import flash.display.MovieClip; public class Test extends MovieClip {}
}
include "../include/unicodeUtil.as";
include "../include/unicodeNegativeUtil.as";
// var SECTION = "Gujarati";
// var VERSION = "ECMA_3";
// var TITLE = "Test String functions (search, match, split, replace) on all unicode characters";
var array = new Array();
var item = 0;
getTestCases();
var testcases = array;
function getTestCases():void {
// Gujarati
testUnicodeRange(0x0A80, 0x0AFF);
negativeTestUnicodeRange(0x0A80, 0x0AFF);
}

View File

@ -0,0 +1,13 @@
<flex-config>
<compiler>
<source-path>
<path-element>.</path-element>
<path-element>../../../lib</path-element>
</source-path>
<debug>false</debug>
<omit-trace-statements>false</omit-trace-statements>
<show-actionscript-warnings>false</show-actionscript-warnings>
<strict>false</strict>
</compiler>
<output>test.swf</output>
</flex-config>

View File

@ -0,0 +1,21 @@
Unicode String.search from 0x0A80 to 0x0A80 PASSED!
Unicode String.search for 3 chars from 0x0A80 to 0x0A80 PASSED!
Unicode String.match PASSED!
Unicode String.split PASSED!
Unicode String.replace PASSED!
Unicode Split on Mark PASSED!
Unicode Split on Mark PASSED!
Unicode Split on Mark PASSED!
Unicode Split on Mark PASSED!
Negative String.search PASSED!
0x0A80 to 0x0AFF String.search(undefined) PASSED!
0x0A80 to 0x0AFF String.search() PASSED!
Negative String.match PASSED!
0x0A80 to 0x0AFF String.match(undefined) PASSED!
0x0A80 to 0x0AFF String.match() PASSED!
String.split('') PASSED!
String.split(new RegExp()) PASSED!
String.split(new RegExp('')) PASSED!
String.split(undefined) result length PASSED!
String.split(undefined)[0] PASSED!
String.replace(0x0A800x0AFF) PASSED!

View File

@ -0,0 +1 @@
num_ticks = 1

View File

@ -0,0 +1,26 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
package {
import flash.display.MovieClip; public class Test extends MovieClip {}
}
include "../include/unicodeUtil.as";
include "../include/unicodeNegativeUtil.as";
// var SECTION = "Oriya";
// var VERSION = "ECMA_3";
// var TITLE = "Test String functions (search, match, split, replace) on all unicode characters";
var array = new Array();
var item = 0;
getTestCases();
var testcases = array;
function getTestCases():void {
// Oriya
testUnicodeRange(0x0B00, 0x0B7F);
negativeTestUnicodeRange(0x0B00, 0x0B7F);
}

View File

@ -0,0 +1,13 @@
<flex-config>
<compiler>
<source-path>
<path-element>.</path-element>
<path-element>../../../lib</path-element>
</source-path>
<debug>false</debug>
<omit-trace-statements>false</omit-trace-statements>
<show-actionscript-warnings>false</show-actionscript-warnings>
<strict>false</strict>
</compiler>
<output>test.swf</output>
</flex-config>

View File

@ -0,0 +1,21 @@
Unicode String.search from 0x0B00 to 0x0B00 PASSED!
Unicode String.search for 3 chars from 0x0B00 to 0x0B00 PASSED!
Unicode String.match PASSED!
Unicode String.split PASSED!
Unicode String.replace PASSED!
Unicode Split on Mark PASSED!
Unicode Split on Mark PASSED!
Unicode Split on Mark PASSED!
Unicode Split on Mark PASSED!
Negative String.search PASSED!
0x0B00 to 0x0B7F String.search(undefined) PASSED!
0x0B00 to 0x0B7F String.search() PASSED!
Negative String.match PASSED!
0x0B00 to 0x0B7F String.match(undefined) PASSED!
0x0B00 to 0x0B7F String.match() PASSED!
String.split('') PASSED!
String.split(new RegExp()) PASSED!
String.split(new RegExp('')) PASSED!
String.split(undefined) result length PASSED!
String.split(undefined)[0] PASSED!
String.replace(0x0B000x0B7F) PASSED!

Some files were not shown because too many files have changed in this diff Show More