Chromium Code Reviews| Index: pkg/intl/test/date_time_format_test_stub.dart |
| diff --git a/pkg/intl/test/date_time_format_test_stub.dart b/pkg/intl/test/date_time_format_test_stub.dart |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..1aa15779008e5dc3dd048c7989485f6e8ceb26bd |
| --- /dev/null |
| +++ b/pkg/intl/test/date_time_format_test_stub.dart |
| @@ -0,0 +1,70 @@ |
| +// 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. |
| + |
| +/** |
| + * Test date formatting and parsing using locale data which is available |
| + * directly in the program as a constant. |
| + */ |
| + |
| +library date_time_format_test; |
| + |
| +import 'dart:async'; |
| +import 'package:unittest/unittest.dart'; |
| +import 'package:intl/intl.dart'; |
| +import 'date_time_format_test_core.dart'; |
| + |
| +typedef List<String> TestListFunc(); |
| + |
| +typedef Future InitializeDateFormattingFunc(String locale, String filePath); |
| + |
| +/** |
| + * Return only the odd-numbered locales. A simple way to divide the list into |
| + * two roughly equal parts. |
| + */ |
| +List<String> oddLocales() { |
| + int i = 1; |
| + return allLocales().where((x) => (i++).isOdd).toList(); |
| +} |
| + |
| +/** |
| + * Return a set of a few locales to run just the tests on a small sample. |
| + */ |
| +List smallSetOfLocales() { |
| + return allLocales().sublist(0,10); |
| +} |
| + |
| +/** |
| + * Return only the even-numbered locales. A simple way to divide the list into |
| + * two roughly equal parts. |
| + */ |
| +List<String> evenLocales() { |
| + int i = 1; |
| + return allLocales().where((x) => !((i++).isOdd)).toList(); |
| +} |
| + |
| +void runWith(TestListFunc getSubset, String dir, |
|
kevmoo-old
2013/04/05 00:45:43
Unify all of the 'runWith' logic across local, fil
|
| + InitializeDateFormattingFunc initFunction) { |
| + // Initialize one locale just so we know what the list is. |
| + // Also, note that we take the list of locales as a function so that we don't |
| + // evaluate it until after we know that all the locales are available. |
| + |
| + bool initialized = false; |
| + |
| + setUp(() { |
|
kevmoo-old
2013/04/05 00:45:43
Instead of creating more tests within a running te
|
| + if(initialized) { |
| + return; |
| + } |
| + return initFunction("en_US", dir) |
| + .then((_) { |
| + return Future.forEach(DateFormat.allLocalesWithSymbols(), (locale) { |
| + return initFunction(locale, dir); |
| + }); |
| + }) |
| + .then((_) { |
| + initialized = true; |
| + }); |
| + }); |
| + |
| + runDateTests(getSubset); |
| +} |