2018-05-28 07:40:24 +00:00
|
|
|
// Copyright (c) 2018, 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.
|
|
|
|
|
2020-03-21 16:12:36 +00:00
|
|
|
// @dart = 2.7
|
|
|
|
|
2018-05-28 07:40:24 +00:00
|
|
|
// dart2jsOptions=--strong
|
|
|
|
|
|
|
|
import 'package:expect/expect.dart';
|
|
|
|
import 'deferred_function_types_lib1.dart' deferred as lib1;
|
|
|
|
import 'deferred_function_types_lib2.dart' deferred as lib2;
|
|
|
|
|
|
|
|
main() async {
|
|
|
|
await lib1.loadLibrary();
|
|
|
|
Expect.isTrue(lib1.method1() is int Function(int));
|
|
|
|
Expect.isFalse(lib1.method1() is String Function(String));
|
|
|
|
Expect.isTrue(lib1.method5 is Object Function(Null, String, int));
|
|
|
|
Expect.isFalse(lib1.method5 is Object Function(Null, int, String));
|
2018-05-30 13:25:48 +00:00
|
|
|
Expect.isTrue(lib1.test5(lib1.method5));
|
2018-05-28 07:40:24 +00:00
|
|
|
await lib2.loadLibrary();
|
|
|
|
Expect.isFalse(lib2.method2() is int Function(int));
|
|
|
|
Expect.isTrue(lib2.method2() is String Function(String));
|
|
|
|
Expect.isFalse(lib2.method6 is Object Function(Null, String, int));
|
|
|
|
Expect.isTrue(lib2.method6 is Object Function(Null, int, String));
|
2018-05-30 13:25:48 +00:00
|
|
|
Expect.isTrue(lib2.test6(lib2.method6));
|
2018-05-28 07:40:24 +00:00
|
|
|
}
|