| Index: test/browser/runtime_tests.js
|
| diff --git a/test/browser/runtime_tests.js b/test/browser/runtime_tests.js
|
| index 9412c97696ababa85cd19dc033864b874f1d854d..67706b50672c0d189aaff98ecf83befac4227505 100644
|
| --- a/test/browser/runtime_tests.js
|
| +++ b/test/browser/runtime_tests.js
|
| @@ -647,7 +647,7 @@ suite('instanceOf', () => {
|
| // Tear off of an inherited method
|
| let map = new (Map$(core.int, core.String))();
|
| checkType(dart.bind(map, 'toString'),
|
| - dart.functionType(String, []));
|
| + dart.functionType(String, []));
|
| checkType(dart.bind(map, 'toString'),
|
| dart.functionType(int, []), false, true);
|
|
|
| @@ -951,15 +951,62 @@ suite('subtyping', function() {
|
|
|
| test('fuzzy function types', () => {
|
| always(functionType(int, [int]), functionType(dyn, [dyn]));
|
| -
|
| always(functionType(int, [], [int]), functionType(dyn, [], [dyn]));
|
| -
|
| always(functionType(int, [], [int]), functionType(dyn, [dyn]));
|
| -
|
| always(functionType(int, [], [int]), functionType(dyn, []));
|
| -
|
| always(functionType(int, [int], {extra: int}), functionType(dyn, [dyn]));
|
|
|
| + always(functionType(dyn, [dyn]), functionType(dyn, [dyn]));
|
| + always(functionType(dyn, [], [dyn]), functionType(dyn, [], [dyn]));
|
| + always(functionType(dyn, [], [dyn]), functionType(dyn, [dyn]));
|
| + always(functionType(dyn, [], [dyn]), functionType(dyn, []));
|
| + always(functionType(dyn, [dyn], {extra: dyn}), functionType(dyn, [dyn]));
|
| +
|
| + });
|
| +
|
| + test('void function types', () => {
|
| + always(functionType(int, [int]), functionType(dart.void, [dyn]));
|
| + always(functionType(int, [], [int]), functionType(dart.void, [], [dyn]));
|
| + always(functionType(int, [], [int]), functionType(dart.void, [dyn]));
|
| + always(functionType(int, [], [int]), functionType(dart.void, []));
|
| + always(functionType(int, [int], {extra: int}), functionType(dart.void, [dyn]));
|
| +
|
| + always(functionType(dart.void, [int]), functionType(dart.void, [dyn]));
|
| + always(functionType(dart.void, [], [int]), functionType(dart.void, [], [dyn]));
|
| + always(functionType(dart.void, [], [int]), functionType(dart.void, [dyn]));
|
| + always(functionType(dart.void, [], [int]), functionType(dart.void, []));
|
| + always(functionType(dart.void, [int], {extra: int}), functionType(dart.void, [dyn]));
|
| +
|
| + always(functionType(dyn, [dyn]), functionType(dart.void, [dyn]));
|
| + always(functionType(dyn, [], [dyn]), functionType(dart.void, [], [dyn]));
|
| + always(functionType(dyn, [], [dyn]), functionType(dart.void, [dyn]));
|
| + always(functionType(dyn, [], [dyn]), functionType(dart.void, []));
|
| + always(functionType(dyn, [dyn], {extra: dyn}), functionType(dart.void, [dyn]));
|
| +
|
| + always(functionType(dart.void, [dyn]), functionType(dart.void, [dyn]));
|
| + always(functionType(dart.void, [], [dyn]), functionType(dart.void, [], [dyn]));
|
| + always(functionType(dart.void, [], [dyn]), functionType(dart.void, [dyn]));
|
| + always(functionType(dart.void, [], [dyn]), functionType(dart.void, []));
|
| + always(functionType(dart.void, [dyn], {extra: dyn}), functionType(dart.void, [dyn]));
|
| +
|
| + always(functionType(dart.void, [int]), functionType(dyn, [dyn]));
|
| + always(functionType(dart.void, [], [int]), functionType(dyn, [], [dyn]));
|
| + always(functionType(dart.void, [], [int]), functionType(dyn, [dyn]));
|
| + always(functionType(dart.void, [], [int]), functionType(dyn, []));
|
| + always(functionType(dart.void, [int], {extra: int}), functionType(dyn, [dyn]));
|
| +
|
| + never(functionType(dart.void, [int]), functionType(int, [dyn]));
|
| + never(functionType(dart.void, [], [int]), functionType(int, [], [dyn]));
|
| + never(functionType(dart.void, [], [int]), functionType(int, [dyn]));
|
| + never(functionType(dart.void, [], [int]), functionType(int, []));
|
| + never(functionType(dart.void, [int], {extra: int}), functionType(int, [dyn]));
|
| +
|
| + never(functionType(dart.void, [int]), functionType(int, [int]));
|
| + never(functionType(dart.void, [], [int]), functionType(int, [], [int]));
|
| + never(functionType(dart.void, [], [int]), functionType(int, [int]));
|
| + never(functionType(dart.void, [], [int]), functionType(int, []));
|
| + never(functionType(dart.void, [int], {extra: int}), functionType(int, [int]));
|
| +
|
| });
|
|
|
| test('higher-order typedef', () => {
|
|
|