9394b30b77
Bug: b/286184681 Change-Id: I903528c4adfbc576644aec7541903df6b9633e26 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/325523 Reviewed-by: Jonas Termansen <sortie@google.com> Reviewed-by: Samuel Rawlins <srawlins@google.com> Commit-Queue: Alexander Thomas <athom@google.com>
152 lines
3.6 KiB
YAML
152 lines
3.6 KiB
YAML
# Copyright (c) 2019, 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.
|
|
|
|
# Compile an application with a number of modules.
|
|
# Try out "trickery" in the module dependencies to force needing more or less
|
|
# dill libraries.
|
|
|
|
type: newworld
|
|
modules:
|
|
module:
|
|
module/lib1.dart: |
|
|
import 'lib3.dart';
|
|
|
|
class Class1 {
|
|
Class3a get c3a => throw '';
|
|
}
|
|
module/lib2.dart: |
|
|
import 'lib4.dart';
|
|
|
|
class Class2 {
|
|
void cl4() {
|
|
Class4 class4 = new Class4();
|
|
print(class4);
|
|
}
|
|
}
|
|
module/lib3.dart: |
|
|
class Class3a {
|
|
Class3b get c3b => throw '';
|
|
}
|
|
|
|
class Class3b {
|
|
String str() => throw '';
|
|
}
|
|
module/lib4.dart: |
|
|
class Class4 {}
|
|
module/.dart_tool/package_config.json: |
|
|
{
|
|
"configVersion": 2,
|
|
"packages": [
|
|
{
|
|
"name": "module",
|
|
"rootUri": ".."
|
|
}
|
|
]
|
|
}
|
|
worlds:
|
|
- entry: compileme.dart
|
|
fromComponent: true
|
|
sources:
|
|
compileme.dart: |
|
|
import 'package:module/lib1.dart';
|
|
import 'package:module/lib2.dart';
|
|
|
|
main() {
|
|
Class2 class2 = new Class2();
|
|
print(class2);
|
|
}
|
|
|
|
class Foo {
|
|
Class1 class1() {
|
|
Class1 class1 = new Class1();
|
|
class1.c3a.c3b.str();
|
|
return class1;
|
|
}
|
|
}
|
|
.dart_tool/package_config.json: |
|
|
{
|
|
"configVersion": 2,
|
|
"packages": [
|
|
{
|
|
"name": "module",
|
|
"rootUri": "../module"
|
|
}
|
|
]
|
|
}
|
|
modules:
|
|
- module
|
|
expectedLibraryCount: 5
|
|
neededDillLibraries:
|
|
- package:module/lib1.dart
|
|
- package:module/lib2.dart
|
|
- package:module/lib3.dart
|
|
expectedContent:
|
|
org-dartlang-test:///compileme.dart:
|
|
- Class Foo
|
|
- Procedure main
|
|
package:module/lib1.dart:
|
|
- Class Class1
|
|
package:module/lib2.dart:
|
|
- Class Class2
|
|
package:module/lib3.dart:
|
|
- Class Class3a
|
|
- Class Class3b
|
|
package:module/lib4.dart:
|
|
- Class Class4
|
|
advancedInvalidation: modulesToLoad
|
|
|
|
- entry: compileme.dart
|
|
fromComponent: true
|
|
expectInitializeFromDill: false
|
|
outlineOnly: true
|
|
skipOutlineBodyCheck: true
|
|
sources:
|
|
compileme.dart: |
|
|
import 'package:module/lib1.dart';
|
|
import 'package:module/lib2.dart';
|
|
|
|
main() {
|
|
Class2 class2 = new Class2();
|
|
print(class2);
|
|
}
|
|
|
|
class Foo {
|
|
Class1 class1() {
|
|
Class1 class1 = new Class1();
|
|
class1.c3a.c3b.str();
|
|
return class1;
|
|
}
|
|
}
|
|
.dart_tool/package_config.json: |
|
|
{
|
|
"configVersion": 2,
|
|
"packages": [
|
|
{
|
|
"name": "module",
|
|
"rootUri": "../module"
|
|
}
|
|
]
|
|
}
|
|
modules:
|
|
- module
|
|
expectedLibraryCount: 5
|
|
neededDillLibraries:
|
|
# This is the outline version. It doesn't use lib3.dart.
|
|
- package:module/lib1.dart
|
|
- package:module/lib2.dart
|
|
expectedContent:
|
|
org-dartlang-test:///compileme.dart:
|
|
- Class Foo
|
|
- Procedure main
|
|
package:module/lib1.dart:
|
|
- Class Class1
|
|
package:module/lib2.dart:
|
|
- Class Class2
|
|
package:module/lib3.dart:
|
|
- Class Class3a
|
|
- Class Class3b
|
|
package:module/lib4.dart:
|
|
- Class Class4
|
|
advancedInvalidation: modulesToLoad
|