tests: Port avmplus ecma3 Unicode tests
This commit is contained in:
parent
c8e4ec98f0
commit
e1749cd0ad
|
@ -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;
|
||||||
|
}
|
|
@ -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;
|
||||||
|
}
|
|
@ -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);
|
||||||
|
}
|
|
@ -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>
|
|
@ -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!
|
Binary file not shown.
|
@ -0,0 +1 @@
|
||||||
|
num_ticks = 1
|
|
@ -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);
|
||||||
|
}
|
|
@ -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>
|
|
@ -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!
|
Binary file not shown.
|
@ -0,0 +1 @@
|
||||||
|
num_ticks = 1
|
|
@ -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);
|
||||||
|
}
|
|
@ -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>
|
|
@ -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!
|
Binary file not shown.
|
@ -0,0 +1 @@
|
||||||
|
num_ticks = 1
|
|
@ -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);
|
||||||
|
}
|
|
@ -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>
|
|
@ -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!
|
Binary file not shown.
|
@ -0,0 +1 @@
|
||||||
|
num_ticks = 1
|
|
@ -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);
|
||||||
|
}
|
|
@ -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>
|
|
@ -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!
|
Binary file not shown.
|
@ -0,0 +1 @@
|
||||||
|
num_ticks = 1
|
|
@ -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);
|
||||||
|
}
|
|
@ -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>
|
|
@ -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!
|
Binary file not shown.
|
@ -0,0 +1 @@
|
||||||
|
num_ticks = 1
|
|
@ -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);
|
||||||
|
}
|
|
@ -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>
|
|
@ -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!
|
Binary file not shown.
|
@ -0,0 +1 @@
|
||||||
|
num_ticks = 1
|
|
@ -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);
|
||||||
|
}
|
|
@ -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>
|
|
@ -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!
|
Binary file not shown.
|
@ -0,0 +1 @@
|
||||||
|
num_ticks = 1
|
|
@ -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);
|
||||||
|
}
|
|
@ -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>
|
|
@ -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!
|
Binary file not shown.
|
@ -0,0 +1 @@
|
||||||
|
num_ticks = 1
|
|
@ -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);
|
||||||
|
}
|
|
@ -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>
|
|
@ -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!
|
Binary file not shown.
|
@ -0,0 +1 @@
|
||||||
|
num_ticks = 1
|
|
@ -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);
|
||||||
|
}
|
|
@ -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>
|
|
@ -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!
|
Binary file not shown.
|
@ -0,0 +1 @@
|
||||||
|
num_ticks = 1
|
|
@ -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);
|
||||||
|
}
|
|
@ -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>
|
|
@ -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!
|
Binary file not shown.
|
@ -0,0 +1 @@
|
||||||
|
num_ticks = 1
|
|
@ -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);
|
||||||
|
}
|
|
@ -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>
|
|
@ -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!
|
Binary file not shown.
|
@ -0,0 +1 @@
|
||||||
|
num_ticks = 1
|
|
@ -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);
|
||||||
|
}
|
|
@ -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>
|
|
@ -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!
|
Binary file not shown.
|
@ -0,0 +1 @@
|
||||||
|
num_ticks = 1
|
|
@ -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);
|
||||||
|
}
|
|
@ -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>
|
|
@ -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!
|
Binary file not shown.
|
@ -0,0 +1 @@
|
||||||
|
num_ticks = 1
|
|
@ -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);
|
||||||
|
}
|
|
@ -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>
|
|
@ -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!
|
Binary file not shown.
|
@ -0,0 +1 @@
|
||||||
|
num_ticks = 1
|
|
@ -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);
|
||||||
|
}
|
|
@ -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>
|
|
@ -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!
|
Binary file not shown.
|
@ -0,0 +1 @@
|
||||||
|
num_ticks = 1
|
|
@ -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);
|
||||||
|
}
|
|
@ -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>
|
|
@ -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!
|
Binary file not shown.
|
@ -0,0 +1 @@
|
||||||
|
num_ticks = 1
|
|
@ -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);
|
||||||
|
}
|
|
@ -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>
|
|
@ -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!
|
Binary file not shown.
|
@ -0,0 +1 @@
|
||||||
|
num_ticks = 1
|
|
@ -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);
|
||||||
|
}
|
|
@ -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>
|
|
@ -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
Loading…
Reference in New Issue