Index: packages/intl/test/find_default_locale_browser_test.dart |
diff --git a/packages/intl/test/find_default_locale_browser_test.dart b/packages/intl/test/find_default_locale_browser_test.dart |
new file mode 100644 |
index 0000000000000000000000000000000000000000..f00b4c8e632055e118868435413d9672c6cae86e |
--- /dev/null |
+++ b/packages/intl/test/find_default_locale_browser_test.dart |
@@ -0,0 +1,31 @@ |
+// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file |
+// for details. All rights reserved. Use of this source code is governed by a |
+// BSD-style license that can be found in the LICENSE file. |
+ |
+library find_default_locale_browser_test; |
+ |
+import 'package:intl/intl.dart'; |
+import 'package:intl/intl_browser.dart'; |
+import 'package:unittest/unittest.dart'; |
+ |
+main() { |
+ test("Find system locale in browser", () { |
+ // TODO (alanknight): This only verifies that we found some locale. We |
+ // should find a way to force the system locale before the test is run |
+ // and then verify that it's actually the correct value. |
+ Intl.systemLocale = 'xx_YY'; |
+ var callback = expectAsync(verifyLocale); |
+ findSystemLocale().then(callback); |
+ }); |
+} |
+ |
+verifyLocale(_) { |
+ expect(Intl.systemLocale, isNot(equals("xx_YY"))); |
+ // Allow either en_US or just en type locales. Windows in particular may |
+ // give us just ru for ru_RU |
+ var pattern = new RegExp(r"\w\w_[A-Z0-9]+"); |
+ var shortPattern = new RegExp(r"\w\w"); |
+ var match = pattern.hasMatch(Intl.systemLocale); |
+ var shortMatch = shortPattern.hasMatch(Intl.systemLocale); |
+ expect(match || shortMatch, isTrue); |
+} |