Add a deprecation warning to console for Web SQL
[WebKit-https.git] / LayoutTests / js / intl-pluralrules-expected.txt
1 This test checks the behavior of Intl.PluralRules as described in the ECMAScript Internationalization API Specification.
2
3 On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
4
5
6 PASS Intl.PluralRules is an instance of Function
7 PASS Intl.PluralRules() threw exception TypeError: calling PluralRules constructor without new is invalid.
8 PASS Intl.PluralRules.call({}) threw exception TypeError: calling PluralRules constructor without new is invalid.
9 PASS new Intl.PluralRules('$') threw exception RangeError: invalid language tag: $.
10 PASS new Intl.PluralRules('en', null) threw exception TypeError: null is not an object (evaluating 'new Intl.PluralRules('en', null)').
11 PASS new Intl.PluralRules() is an instance of Intl.PluralRules
12 PASS class DerivedPluralRules extends Intl.PluralRules {};(new DerivedPluralRules) instanceof DerivedPluralRules is true
13 PASS class DerivedPluralRules extends Intl.PluralRules {};(new DerivedPluralRules) instanceof Intl.PluralRules is true
14 PASS class DerivedPluralRules extends Intl.PluralRules {};new DerivedPluralRules('en').select(1) === 'one' is true
15 PASS class DerivedPluralRules extends Intl.PluralRules {};Object.getPrototypeOf(new DerivedPluralRules) === DerivedPluralRules.prototype is true
16 PASS class DerivedPluralRules extends Intl.PluralRules {};Object.getPrototypeOf(Object.getPrototypeOf(new DerivedPluralRules)) === Intl.PluralRules.prototype is true
17 PASS Intl.PluralRules.length is 0
18 PASS Object.getOwnPropertyDescriptor(Intl.PluralRules, 'prototype').writable is false
19 PASS Object.getOwnPropertyDescriptor(Intl.PluralRules, 'prototype').enumerable is false
20 PASS Object.getOwnPropertyDescriptor(Intl.PluralRules, 'prototype').configurable is false
21 PASS Intl.PluralRules.supportedLocalesOf.length is 1
22 PASS Intl.PluralRules.supportedLocalesOf() is an instance of Array
23 PASS Intl.PluralRules.supportedLocalesOf.call(null, 'en') is [ 'en' ]
24 PASS Intl.PluralRules.supportedLocalesOf.call({}, 'en') is [ 'en' ]
25 PASS Intl.PluralRules.supportedLocalesOf.call(1, 'en') is [ 'en' ]
26 PASS Intl.PluralRules.supportedLocalesOf(9) is []
27 PASS Intl.PluralRules.supportedLocalesOf('en') is [ 'en' ]
28 PASS Intl.PluralRules.supportedLocalesOf({ length: 4, 1: 'en', 0: 'es', 3: 'de' }) is [ 'es', 'en', 'de' ]
29 PASS Intl.PluralRules.supportedLocalesOf([ 'en', 'pt', 'en', 'es' ]) is [ 'en', 'pt', 'es' ]
30 PASS Intl.PluralRules.supportedLocalesOf('En-laTn-us-variant2-variant1-1abc-U-ko-tRue-A-aa-aaa-x-RESERVED') is [ 'en-Latn-US-variant2-variant1-1abc-a-aa-aaa-u-ko-true-x-reserved' ]
31 PASS Intl.PluralRules.supportedLocalesOf('no-bok') is [ 'nb' ]
32 PASS Intl.PluralRules.supportedLocalesOf('x-some-thing') is []
33 PASS Intl.PluralRules.supportedLocalesOf(Object.create(null, { length: { get() { throw Error('a') } } })) threw exception Error: a.
34 PASS Intl.PluralRules.supportedLocalesOf(Object.create(null, { length: { value: 1 }, 0: { get() { throw Error('b') } } })) threw exception Error: b.
35 PASS Intl.PluralRules.supportedLocalesOf([ { toString() { throw Error('c') } } ]) threw exception Error: c.
36 PASS Intl.PluralRules.supportedLocalesOf([ 5 ]) threw exception TypeError: locale value must be a string or object.
37 PASS Intl.PluralRules.supportedLocalesOf('') threw exception RangeError: invalid language tag: .
38 PASS Intl.PluralRules.supportedLocalesOf('a') threw exception RangeError: invalid language tag: a.
39 PASS Intl.PluralRules.supportedLocalesOf('abcdefghij') threw exception RangeError: invalid language tag: abcdefghij.
40 PASS Intl.PluralRules.supportedLocalesOf('#$') threw exception RangeError: invalid language tag: #$.
41 PASS Intl.PluralRules.supportedLocalesOf('en-@-abc') threw exception RangeError: invalid language tag: en-@-abc.
42 PASS Intl.PluralRules.supportedLocalesOf('en-u') threw exception RangeError: invalid language tag: en-u.
43 PASS Intl.PluralRules.supportedLocalesOf('en-u-kn-true-u-ko-true') threw exception RangeError: invalid language tag: en-u-kn-true-u-ko-true.
44 PASS Intl.PluralRules.supportedLocalesOf('en-x') threw exception RangeError: invalid language tag: en-x.
45 PASS Intl.PluralRules.supportedLocalesOf('en-*') threw exception RangeError: invalid language tag: en-*.
46 PASS Intl.PluralRules.supportedLocalesOf('en-') threw exception RangeError: invalid language tag: en-.
47 PASS Intl.PluralRules.supportedLocalesOf('en--US') threw exception RangeError: invalid language tag: en--US.
48 PASS Intl.PluralRules.supportedLocalesOf('de') did not throw exception.
49 PASS Intl.PluralRules.supportedLocalesOf('de-DE') did not throw exception.
50 PASS Intl.PluralRules.supportedLocalesOf('DE-de') did not throw exception.
51 PASS Intl.PluralRules.supportedLocalesOf('cmn') did not throw exception.
52 PASS Intl.PluralRules.supportedLocalesOf('cmn-Hans') did not throw exception.
53 PASS Intl.PluralRules.supportedLocalesOf('CMN-hANS') did not throw exception.
54 PASS Intl.PluralRules.supportedLocalesOf('cmn-hans-cn') did not throw exception.
55 PASS Intl.PluralRules.supportedLocalesOf('es-419') did not throw exception.
56 PASS Intl.PluralRules.supportedLocalesOf('es-419-u-nu-latn-cu-bob') did not throw exception.
57 PASS Intl.PluralRules.supportedLocalesOf('i-klingon') did not throw exception.
58 PASS Intl.PluralRules.supportedLocalesOf('cmn-hans-cn-t-ca-u-ca-x-t-u') did not throw exception.
59 PASS Intl.PluralRules.supportedLocalesOf('enochian-enochian') did not throw exception.
60 PASS Intl.PluralRules.supportedLocalesOf('de-gregory-u-ca-gregory') did not throw exception.
61 PASS Intl.PluralRules.supportedLocalesOf('aa-a-foo-x-a-foo-bar') did not throw exception.
62 PASS Intl.PluralRules.supportedLocalesOf('x-en-US-12345') did not throw exception.
63 PASS Intl.PluralRules.supportedLocalesOf('x-12345-12345-en-US') did not throw exception.
64 PASS Intl.PluralRules.supportedLocalesOf('x-en-US-12345-12345') did not throw exception.
65 PASS Intl.PluralRules.supportedLocalesOf('x-en-u-foo') did not throw exception.
66 PASS Intl.PluralRules.supportedLocalesOf('x-en-u-foo-u-bar') did not throw exception.
67 PASS Object.getPrototypeOf(Intl.PluralRules.prototype) is Object.prototype
68 PASS Intl.PluralRules.prototype.constructor is Intl.PluralRules
69 PASS Intl.PluralRules.prototype[Symbol.toStringTag] is 'Object'
70 PASS Object.prototype.toString.call(Intl.PluralRules.prototype) is '[object Object]'
71 PASS Object.getOwnPropertyDescriptor(Intl.PluralRules.prototype, Symbol.toStringTag).writable is false
72 PASS Object.getOwnPropertyDescriptor(Intl.PluralRules.prototype, Symbol.toStringTag).enumerable is false
73 PASS Object.getOwnPropertyDescriptor(Intl.PluralRules.prototype, Symbol.toStringTag).configurable is true
74 PASS Object.getOwnPropertyDescriptor(Intl.PluralRules.prototype, 'select').value is an instance of Function
75 PASS Object.getOwnPropertyDescriptor(Intl.PluralRules.prototype, 'select').writable is true
76 PASS Object.getOwnPropertyDescriptor(Intl.PluralRules.prototype, 'select').enumerable is false
77 PASS Object.getOwnPropertyDescriptor(Intl.PluralRules.prototype, 'select').configurable is true
78 PASS new Intl.PluralRules().select === new Intl.PluralRules().select is true
79 PASS Intl.PluralRules.prototype.select.length is 1
80 PASS Intl.PluralRules.prototype.select.call(1) threw exception TypeError: Intl.PluralRules.prototype.select called on value that's not an object initialized as a PluralRules.
81 PASS Intl.PluralRules.prototype.select.call({}) threw exception TypeError: Intl.PluralRules.prototype.select called on value that's not an object initialized as a PluralRules.
82 PASS defaultPluralRules.select({ valueOf() { throw Error('4') } }) threw exception Error: 4.
83 PASS defaultPluralRules.select(1) is 'one'
84 PASS Intl.PluralRules.prototype.select.call(defaultPluralRules, 1) is 'one'
85 PASS defaultPluralRules.select(0) is 'other'
86 PASS defaultPluralRules.select(-1) is 'one'
87 PASS defaultPluralRules.select(2) is 'other'
88 PASS englishOrdinals.select(0) is 'other'
89 PASS englishOrdinals.select(1) is 'one'
90 PASS englishOrdinals.select(2) is 'two'
91 PASS englishOrdinals.select(3) is 'few'
92 PASS englishOrdinals.select(4) is 'other'
93 PASS englishOrdinals.select(11) is 'other'
94 PASS englishOrdinals.select(12) is 'other'
95 PASS englishOrdinals.select(13) is 'other'
96 PASS englishOrdinals.select(14) is 'other'
97 PASS englishOrdinals.select(21) is 'one'
98 PASS englishOrdinals.select(22) is 'two'
99 PASS englishOrdinals.select(23) is 'few'
100 PASS englishOrdinals.select(24) is 'other'
101 PASS englishOrdinals.select(101) is 'one'
102 PASS englishOrdinals.select(102) is 'two'
103 PASS englishOrdinals.select(103) is 'few'
104 PASS englishOrdinals.select(104) is 'other'
105 PASS arabicCardinals.select(0) is 'zero'
106 PASS arabicCardinals.select(1) is 'one'
107 PASS arabicCardinals.select(2) is 'two'
108 PASS arabicCardinals.select(3) is 'few'
109 PASS arabicCardinals.select(11) is 'many'
110 PASS Intl.PluralRules.prototype.resolvedOptions.length is 0
111 PASS Intl.PluralRules.prototype.resolvedOptions.call(5) threw exception TypeError: Intl.PluralRules.prototype.resolvedOptions called on value that's not an object initialized as a PluralRules.
112 PASS Intl.PluralRules.prototype.resolvedOptions.call({}) threw exception TypeError: Intl.PluralRules.prototype.resolvedOptions called on value that's not an object initialized as a PluralRules.
113 PASS defaultPluralRules.resolvedOptions() is an instance of Object
114 PASS defaultPluralRules.resolvedOptions() === defaultPluralRules.resolvedOptions() is false
115 PASS defaultPluralRules.resolvedOptions().type is 'cardinal'
116 PASS defaultPluralRules.resolvedOptions().minimumIntegerDigits is 1
117 PASS defaultPluralRules.resolvedOptions().minimumFractionDigits is 0
118 PASS defaultPluralRules.resolvedOptions().maximumFractionDigits is 3
119 PASS defaultPluralRules.resolvedOptions().minimumSignificantDigits is undefined
120 PASS defaultPluralRules.resolvedOptions().maximumSignificantDigits is undefined
121 PASS new Intl.PluralRules('en', { localeMatcher: { toString() { throw 'nope' } } }) threw exception nope.
122 PASS new Intl.PluralRules('en', { localeMatcher:'bad' }) threw exception RangeError: localeMatcher must be either "lookup" or "best fit".
123 PASS new Intl.PluralRules('en', { localeMatcher:'lookup' }) did not throw exception.
124 PASS new Intl.PluralRules('en', { localeMatcher:'best fit' }) did not throw exception.
125 PASS new Intl.PluralRules('en', {type: 'cardinal'}).resolvedOptions().type is 'cardinal'
126 PASS new Intl.PluralRules('en', {type: 'ordinal'}).resolvedOptions().type is 'ordinal'
127 PASS new Intl.PluralRules('en', {type: 'bad'}) threw exception RangeError: type must be "cardinal" or "ordinal".
128 PASS new Intl.PluralRules('en', {type: { toString() { throw 'badtype' } }}) threw exception badtype.
129 PASS new Intl.PluralRules('en', {minimumIntegerDigits: 1}).resolvedOptions().minimumIntegerDigits is 1
130 PASS new Intl.PluralRules('en', {minimumIntegerDigits: '2'}).resolvedOptions().minimumIntegerDigits is 2
131 PASS new Intl.PluralRules('en', {minimumIntegerDigits: {valueOf() { return 3; }}}).resolvedOptions().minimumIntegerDigits is 3
132 PASS new Intl.PluralRules('en', {minimumIntegerDigits: 4.9}).resolvedOptions().minimumIntegerDigits is 4
133 PASS new Intl.PluralRules('en', {minimumIntegerDigits: 21}).resolvedOptions().minimumIntegerDigits is 21
134 PASS new Intl.PluralRules('en', {minimumIntegerDigits: 0}) threw exception RangeError: minimumIntegerDigits is out of range.
135 PASS new Intl.PluralRules('en', {minimumIntegerDigits: 22}) threw exception RangeError: minimumIntegerDigits is out of range.
136 PASS new Intl.PluralRules('en', {minimumIntegerDigits: 0.9}) threw exception RangeError: minimumIntegerDigits is out of range.
137 PASS new Intl.PluralRules('en', {minimumIntegerDigits: 21.1}) threw exception RangeError: minimumIntegerDigits is out of range.
138 PASS new Intl.PluralRules('en', {minimumIntegerDigits: NaN}) threw exception RangeError: minimumIntegerDigits is out of range.
139 PASS new Intl.PluralRules('en', {minimumIntegerDigits: Infinity}) threw exception RangeError: minimumIntegerDigits is out of range.
140 PASS new Intl.PluralRules('en', { get minimumIntegerDigits() { throw 42; } }) threw exception 42.
141 PASS new Intl.PluralRules('en', {minimumIntegerDigits: {valueOf() { throw 42; }}}) threw exception 42.
142 PASS new Intl.PluralRules('en', {minimumFractionDigits: 0}).resolvedOptions().minimumFractionDigits is 0
143 PASS new Intl.PluralRules('en', {minimumFractionDigits: 0}).resolvedOptions().maximumFractionDigits is 3
144 PASS new Intl.PluralRules('en', {minimumFractionDigits: 6}).resolvedOptions().minimumFractionDigits is 6
145 PASS new Intl.PluralRules('en', {minimumFractionDigits: 6}).resolvedOptions().maximumFractionDigits is 6
146 PASS new Intl.PluralRules('en', {minimumFractionDigits: -1}) threw exception RangeError: minimumFractionDigits is out of range.
147 PASS new Intl.PluralRules('en', {minimumFractionDigits: 21}) threw exception RangeError: minimumFractionDigits is out of range.
148 PASS new Intl.PluralRules('en', {maximumFractionDigits: 6}).resolvedOptions().maximumFractionDigits is 6
149 PASS new Intl.PluralRules('en', {minimumFractionDigits: 7, maximumFractionDigits: 6}) threw exception RangeError: maximumFractionDigits is out of range.
150 PASS new Intl.PluralRules('en', {maximumFractionDigits: -1}) threw exception RangeError: maximumFractionDigits is out of range.
151 PASS new Intl.PluralRules('en', {maximumFractionDigits: 21}) threw exception RangeError: maximumFractionDigits is out of range.
152 PASS new Intl.PluralRules('en', {minimumSignificantDigits: 6}).resolvedOptions().minimumSignificantDigits is 6
153 PASS new Intl.PluralRules('en', {minimumSignificantDigits: 6}).resolvedOptions().maximumSignificantDigits is 21
154 PASS new Intl.PluralRules('en', {minimumSignificantDigits: 0}) threw exception RangeError: minimumSignificantDigits is out of range.
155 PASS new Intl.PluralRules('en', {minimumSignificantDigits: 22}) threw exception RangeError: minimumSignificantDigits is out of range.
156 PASS new Intl.PluralRules('en', {maximumSignificantDigits: 6}).resolvedOptions().minimumSignificantDigits is 1
157 PASS new Intl.PluralRules('en', {maximumSignificantDigits: 6}).resolvedOptions().maximumSignificantDigits is 6
158 PASS new Intl.PluralRules('en', {minimumSignificantDigits: 7, maximumSignificantDigits: 6}) threw exception RangeError: maximumSignificantDigits is out of range.
159 PASS new Intl.PluralRules('en', {maximumSignificantDigits: 0}) threw exception RangeError: maximumSignificantDigits is out of range.
160 PASS new Intl.PluralRules('en', {maximumSignificantDigits: 22}) threw exception RangeError: maximumSignificantDigits is out of range.
161 PASS new Intl.PluralRules('en', {maximumFractionDigits: 0}).select(1.4) is 'one'
162 PASS new Intl.PluralRules('en', {maximumSignificantDigits: 1}).select(1.4) is 'one'
163 PASS new Intl.PluralRules('en', {type: 'ordinal', maximumSignificantDigits: 2}).select(123) is 'other'
164 PASS new Intl.PluralRules('en', {type: 'ordinal', maximumSignificantDigits: 3}).select(123.4) is 'few'
165 PASS successfullyParsed is true
166
167 TEST COMPLETE
168