summaryrefslogtreecommitdiffstats
path: root/js/src/tests/non262/String/normalize-generateddata-part1-not-listed.js
blob: 1c3cb5085efeae588f98676e681088a6c579aadf (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
// |reftest| slow skip-if(!xulRuntime.shell) -- uses shell load() function

var BUGNUMBER = 918987;
var summary = 'String.prototype.normalize - not listed in part1';

print(BUGNUMBER + ": " + summary);

function test() {
  loadRelativeToScript('normalize-generateddata-input.js');

  var part1 = new Set();
  for (var test1 of tests_part1) {
    part1.add(test1.source[0]);
  }

  /* not listed in Part 1 */
  for (var x = 0; x <= 0x2FFFF; x++) {
    if (part1.has(x)) {
      continue;
    }
    var xstr = x.toString(16);
    var c = String.fromCodePoint(x);
    assertEq(c.normalize(), c, "NFC of " + xstr);
    assertEq(c.normalize(undefined), c, "NFC of " + xstr);
    assertEq(c.normalize("NFC"), c, "NFC of " + xstr);
    assertEq(c.normalize("NFD"), c, "NFD of " + xstr);
    assertEq(c.normalize("NFKC"), c, "NFKC of " + xstr);
    assertEq(c.normalize("NFKD"), c, "NFKD of " + xstr);
  }
}

if ("normalize" in String.prototype) {
  // String.prototype.normalize is not enabled in all builds.
  test();
}

if (typeof reportCompare === "function")
  reportCompare(true, true);