blob: 519497d643e935812ffed8475ba04438b3fc01aa [file] [log] [blame]
[email protected]0ba76c32012-08-21 21:32:12 +00001// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
2// for details. All rights reserved. Use of this source code is governed by a
3// BSD-style license that can be found in the LICENSE file.
4
[email protected]3a88e392012-10-31 21:32:10 +00005library intl_test;
[email protected]0ba76c32012-08-21 21:32:12 +00006
[email protected]3a88e392012-10-31 21:32:10 +00007import '../lib/intl.dart';
[email protected]7974ea92012-09-18 22:18:15 +00008// TODO(rnystrom): Use "package:" import when test.dart supports it (#4968).
[email protected]3a88e392012-10-31 21:32:10 +00009import '../../unittest/unittest.dart';
10import '../lib/date_symbol_data_local.dart';
[email protected]0ba76c32012-08-21 21:32:12 +000011
12main() {
[email protected]50aa5d22012-09-13 18:20:29 +000013 test("Locale setting doesn't verify the core locale", () {
14 var de = new Intl('de_DE');
15 expect(de.locale, equals('de_DE'));
16 });
17
18 test('DateFormat creation does verify the locale', (){
[email protected]47a318c2012-09-05 19:54:01 +000019 // TODO(alanknight): We need to make the locale verification be on a per
20 // usage basis rather than once for the entire Intl object. The set of
21 // locales covered for messages may be different from that for date
22 // formatting.
23 initializeDateFormatting('de_DE', null).then((_) {
24 var de = new Intl('de_DE');
[email protected]50aa5d22012-09-13 18:20:29 +000025 var format = de.date().add_d();
26 expect(format.locale, equals('de'));
27 });
[email protected]0ba76c32012-08-21 21:32:12 +000028 });
[email protected]74ed1562012-09-18 17:08:29 +000029
30 test("Canonicalizing locales", () {
31 expect(Intl.canonicalizedLocale('en-us'), 'en_US');
32 expect(Intl.canonicalizedLocale('en_us'), 'en_US');
33 expect(Intl.canonicalizedLocale('en_US'), 'en_US');
34 expect(Intl.canonicalizedLocale('xx-yyy'), 'xx_YYY');
35 expect(Intl.canonicalizedLocale('xx_YYY'), 'xx_YYY');
36 expect(Intl.canonicalizedLocale('C'), 'en_ISO');
37 });
[email protected]0ba76c32012-08-21 21:32:12 +000038}