| // 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. |
| // @dart=2.9 |
| |
| @TestOn('vm') |
| import 'package:intl/intl.dart'; |
| import 'package:intl/intl_standalone.dart'; |
| import 'package:test/test.dart'; |
| |
| void main() { |
| test('Find system locale standalone', () { |
| // 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. |
| // We have no way of getting this reliably for Windows, so it will fail. |
| Intl.systemLocale = 'xx_YY'; |
| var callback = expectAsync1(verifyLocale); |
| findSystemLocale().then(callback); |
| }); |
| } |
| |
| void verifyLocale(_) { |
| expect(Intl.systemLocale, isNot(equals('xx_YY'))); |
| var pattern = RegExp(r'\w\w_[A-Z0-9]+'); |
| var shortPattern = RegExp(r'\w\w'); |
| var match = pattern.hasMatch(Intl.systemLocale); |
| var shortMatch = shortPattern.hasMatch(Intl.systemLocale); |
| expect(match || shortMatch, isTrue); |
| } |