| Index: test/browser/language_tests.js
|
| diff --git a/test/browser/language_tests.js b/test/browser/language_tests.js
|
| index 74383ab3636e495ca89da0f87ddba7e2f7f0b81f..32ccd9091dc3488ebdf08bded66f55d458ca0275 100644
|
| --- a/test/browser/language_tests.js
|
| +++ b/test/browser/language_tests.js
|
| @@ -7,20 +7,52 @@
|
|
|
| let _isolate_helper = dart_library.import('dart/_isolate_helper');
|
| _isolate_helper.startRootIsolate(function() {}, []);
|
| -
|
| let async_helper = dart_library.import('async_helper/async_helper');
|
|
|
| + function dartLanguageTest(name) {
|
| + test(name, (done) => {
|
| + async_helper.asyncTestInitialize(done);
|
| + console.debug('Running language test: ' + name);
|
| + dart_library.import('language/' + name).main();
|
| + if (!async_helper.asyncTestStarted) done();
|
| + });
|
| + }
|
| +
|
| function dartLanguageTests(tests) {
|
| - for (const name of tests) {
|
| - test(name, (done) => {
|
| - async_helper.asyncTestInitialize(done);
|
| - console.debug('Running language test: ' + name);
|
| - dart_library.import('language/' + name).main();
|
| - if (!async_helper.asyncTestStarted) done();
|
| - });
|
| + for (let name of tests) {
|
| + if (name instanceof Array) {
|
| + let multitestName = name[0];
|
| + let testCases = name.slice(1);
|
| + for (let testCase of testCases) {
|
| + if (typeof testCase == 'number') {
|
| + testCase = (testCase < 10 ? '0' : '') + testCase;
|
| + }
|
| + dartLanguageTest(`${multitestName}_${testCase}_multi`);
|
| + }
|
| + } else {
|
| + dartLanguageTest(name);
|
| + }
|
| }
|
| }
|
|
|
| + suite('null aware ops', () => {
|
| + dartLanguageTests([
|
| + ['conditional_method_invocation_test', 'none', 1, 2, 3, 4],
|
| + ['conditional_property_access_test', 'none', 1, 2, 3],
|
| + ['conditional_property_assignment_test', 'none', 1, 2, 3, 7, 8, 9],
|
| + ['conditional_property_increment_decrement_test',
|
| + 'none', 1, 2, 3, 5, 6, 7, 9, 10, 11, 13, 14, 15],
|
| + ['if_null_assignment_behavior_test', 'none',
|
| + 1, 2, 5, 6, 7, 8, 9, 10, 11, 12, 16, 17, 18, 19, 20, 21, 22, 23, 24,
|
| + 25, 26, 27, 28, 31, 32],
|
| + ['if_null_assignment_static_test', 'none',
|
| + 1, 3, 5, 8, 10, 12, 15, 17, 19, 22, 24, 26, 29, 31, 33, 36, 38, 40],
|
| + 'nullaware_opt_test',
|
| + ['super_conditional_operator_test', 'none'],
|
| + ['this_conditional_operator_test', 'none']
|
| + ]);
|
| + });
|
| +
|
| suite('sync*', () => {
|
| test('syncstar_syntax', () => {
|
| dart_library.import('syncstar_syntax').main();
|
| @@ -60,7 +92,7 @@
|
| ]);
|
| });
|
|
|
| - dart_library.import('language/async_star_test').main();
|
| + dart_library.import('language/async_star_test_none_multi').main();
|
|
|
| suite('async*', () => {
|
| dartLanguageTests([
|
|
|