aboutsummaryrefslogtreecommitdiffstats
path: root/test/suite/intl402/ch11/11.3/11.3.3.js
diff options
context:
space:
mode:
Diffstat (limited to 'test/suite/intl402/ch11/11.3/11.3.3.js')
-rw-r--r--test/suite/intl402/ch11/11.3/11.3.3.js31
1 files changed, 31 insertions, 0 deletions
diff --git a/test/suite/intl402/ch11/11.3/11.3.3.js b/test/suite/intl402/ch11/11.3/11.3.3.js
new file mode 100644
index 000000000..60f9bbbd8
--- /dev/null
+++ b/test/suite/intl402/ch11/11.3/11.3.3.js
@@ -0,0 +1,31 @@
+// Copyright 2012 Mozilla Corporation. All rights reserved.
+// This code is governed by the license found in the LICENSE file.
+
+/**
+ * @description Tests that the object returned by Intl.NumberFormat.prototype.resolvedOptions
+ * has the right properties.
+ * @author Norbert Lindenberg
+ */
+
+$INCLUDE("testIntl.js");
+
+var actual = new Intl.NumberFormat().resolvedOptions();
+
+var actual2 = new Intl.NumberFormat().resolvedOptions();
+if (actual2 === actual) {
+ $ERROR("resolvedOptions returned the same object twice.");
+}
+
+// this assumes the default values where the specification provides them
+mustHaveProperty(actual, "locale", isCanonicalizedStructurallyValidLanguageTag);
+mustHaveProperty(actual, "numberingSystem", isValidNumberingSystem);
+mustHaveProperty(actual, "style", ["decimal"]);
+mustNotHaveProperty(actual, "currency");
+mustNotHaveProperty(actual, "currencyDisplay");
+mustHaveProperty(actual, "minimumIntegerDigits", [1]);
+mustHaveProperty(actual, "minimumFractionDigits", [0]);
+mustHaveProperty(actual, "maximumFractionDigits", [3]);
+mustNotHaveProperty(actual, "minimumSignificantDigits");
+mustNotHaveProperty(actual, "maximumSignificantDigits");
+mustHaveProperty(actual, "useGrouping", [true, false]);
+