dart-sdk/tests/language/deferred/type_dependency_test.dart
Robert Nystrom fd3882091c Migrate language_2/deferred to NNBD.
Change-Id: I6c936a9ad34befccf1b6775d7c9bdc621995a96f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/142280
Reviewed-by: Leaf Petersen <leafp@google.com>
Commit-Queue: Bob Nystrom <rnystrom@google.com>
Auto-Submit: Bob Nystrom <rnystrom@google.com>
2020-04-03 20:04:47 +00:00

31 lines
963 B
Dart

// Copyright (c) 2015, the Dart Team. All rights reserved. Use of this
// source code is governed by a BSD-style license that can be found in
// the LICENSE file.
/// Checks that lib1.fooX's dependencies on [A] via is-checks, as-expressions
/// and type-annotations(in checked-mode) is correctly tracked.
import "type_dependency_lib1.dart" deferred as lib1;
import "type_dependency_lib2.dart" deferred as lib2;
import "package:expect/expect.dart";
main() async {
await lib1.loadLibrary();
// Split the cases into a multi-test to test each feature separately.
Expect.isFalse(
lib1.fooIs //# is: ok
lib1.fooAs //# as: ok
lib1.fooAnnotation //# type_annotation: ok
("string")
is! String //# none: ok
);
await lib2.loadLibrary();
Expect.isTrue(
lib1.fooIs //# is: ok
lib1.fooAs //# as: ok
lib1.fooAnnotation //# type_annotation: ok
(lib2.getInstance())
is! String //# none: ok
);
}