summaryrefslogtreecommitdiffstats
path: root/js/src/tests/test262/intl402/Collator/missing-unicode-ext-value-defaults-to-true.js
blob: 29be350876a372b0872ab9eacc854992c0624d73 (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
// Copyright 2011-2012 Norbert Lindenberg. All rights reserved.
// Copyright 2012 Mozilla Corporation. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.

/*---
es5id: 9.2.5_11_g_ii_2
description: >
    Tests that missing Unicode extension values default to true for
    boolean keys.
author: Norbert Lindenberg
---*/

var extensions = ["-u-co-phonebk-kn", "-u-kn-co-phonebk", "-u-co-phonebk-kn-true", "-u-kn-true-co-phonebk"];
extensions.forEach(function (extension) {
    var defaultLocale = new Intl.Collator().resolvedOptions().locale;
    var collator = new Intl.Collator([defaultLocale + extension], {usage: "sort"});
    var locale = collator.resolvedOptions().locale;
    var numeric = collator.resolvedOptions().numeric;
    if (numeric !== undefined) {
        assert.sameValue(numeric, true, "Default value for \"kn\" should be true, but is " + numeric + ".");
        assert.sameValue(locale.indexOf("-kn-false"), -1, "\"kn-false\" is returned in locale, but shouldn't be.");
        assert.sameValue(locale.indexOf("-kn-true"), -1, "\"kn-true\" is returned in locale, but shouldn't be.");
        assert.sameValue(locale.indexOf("-kn") >= 0, true, "\"kn\" should be returned in locale.");
    }
});

reportCompare(0, 0);