shell.js (2618B)
1 /*--- 2 defines: [runNormalizeTest] 3 allow_unused: True 4 ---*/ 5 6 function runNormalizeTest(test) { 7 function codePointsToString(points) { 8 return points.map(x => String.fromCodePoint(x)).join(""); 9 } 10 function stringify(points) { 11 return points.map(x => x.toString(16)).join(); 12 } 13 14 var source = codePointsToString(test.source); 15 var NFC = codePointsToString(test.NFC); 16 var NFD = codePointsToString(test.NFD); 17 var NFKC = codePointsToString(test.NFKC); 18 var NFKD = codePointsToString(test.NFKD); 19 var sourceStr = stringify(test.source); 20 var nfcStr = stringify(test.NFC); 21 var nfdStr = stringify(test.NFD); 22 var nfkcStr = stringify(test.NFKC); 23 var nfkdStr = stringify(test.NFKD); 24 25 /* NFC */ 26 assertEq(source.normalize(), NFC, "NFC of " + sourceStr); 27 assertEq(NFC.normalize(), NFC, "NFC of " + nfcStr); 28 assertEq(NFD.normalize(), NFC, "NFC of " + nfdStr); 29 assertEq(NFKC.normalize(), NFKC, "NFC of " + nfkcStr); 30 assertEq(NFKD.normalize(), NFKC, "NFC of " + nfkdStr); 31 32 assertEq(source.normalize(undefined), NFC, "NFC of " + sourceStr); 33 assertEq(NFC.normalize(undefined), NFC, "NFC of " + nfcStr); 34 assertEq(NFD.normalize(undefined), NFC, "NFC of " + nfdStr); 35 assertEq(NFKC.normalize(undefined), NFKC, "NFC of " + nfkcStr); 36 assertEq(NFKD.normalize(undefined), NFKC, "NFC of " + nfkdStr); 37 38 assertEq(source.normalize("NFC"), NFC, "NFC of " + sourceStr); 39 assertEq(NFC.normalize("NFC"), NFC, "NFC of " + nfcStr); 40 assertEq(NFD.normalize("NFC"), NFC, "NFC of " + nfdStr); 41 assertEq(NFKC.normalize("NFC"), NFKC, "NFC of " + nfkcStr); 42 assertEq(NFKD.normalize("NFC"), NFKC, "NFC of " + nfkdStr); 43 44 /* NFD */ 45 assertEq(source.normalize("NFD"), NFD, "NFD of " + sourceStr); 46 assertEq(NFC.normalize("NFD"), NFD, "NFD of " + nfcStr); 47 assertEq(NFD.normalize("NFD"), NFD, "NFD of " + nfdStr); 48 assertEq(NFKC.normalize("NFD"), NFKD, "NFD of " + nfkcStr); 49 assertEq(NFKD.normalize("NFD"), NFKD, "NFD of " + nfkdStr); 50 51 /* NFKC */ 52 assertEq(source.normalize("NFKC"), NFKC, "NFKC of " + sourceStr); 53 assertEq(NFC.normalize("NFKC"), NFKC, "NFKC of " + nfcStr); 54 assertEq(NFD.normalize("NFKC"), NFKC, "NFKC of " + nfdStr); 55 assertEq(NFKC.normalize("NFKC"), NFKC, "NFKC of " + nfkcStr); 56 assertEq(NFKD.normalize("NFKC"), NFKC, "NFKC of " + nfkdStr); 57 58 /* NFKD */ 59 assertEq(source.normalize("NFKD"), NFKD, "NFKD of " + sourceStr); 60 assertEq(NFC.normalize("NFKD"), NFKD, "NFKD of " + nfcStr); 61 assertEq(NFD.normalize("NFKD"), NFKD, "NFKD of " + nfdStr); 62 assertEq(NFKC.normalize("NFKD"), NFKD, "NFKD of " + nfkcStr); 63 assertEq(NFKD.normalize("NFKD"), NFKD, "NFKD of " + nfkdStr); 64 }