blob: 7801796926723eb48756196418bbcfc83fbb4a92 [file] [log] [blame]
# 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.md file.
# Check incremental serialization when loading from dill.
# Try to make it different by forcing a Canonical Name from package2 to be used
# in package1. Also try to force wrong order by having package1 depend on
# package3 before depending on package2.
type: newworld
incrementalSerialization: true
worlds:
- entry: main.dart
sources:
main.dart: |
import "dart:core";
import "package:package1/lib1_a.dart";
main() {
lib1();
}
package1/lib1_a.dart:
import "package:package3/lib3.dart" as lib3;
export "lib1_b.dart";
lib1a() {
lib3.lib3();
}
package1/lib1_b.dart:
import "package:package2/lib2.dart" as lib2;
lib1() {
return la(null);
}
la(lib2.Foo f) {
return 42;
}
package2/lib2.dart:
int f = 42;
class Foo {
static int y = 42;
}
package3/lib3.dart:
lib3() {
print("lib3");
}
.packages: |
package1:package1
package2:package2
package3:package3
expectedLibraryCount: 5
incrementalSerializationDoesWork: true
- entry: main.dart
expectInitializeFromDill: true
sources:
main.dart: |
import "dart:core";
import "package:package1/lib1_a.dart";
main() {
lib1();
}
package1/lib1_a.dart:
import "package:package3/lib3.dart" as lib3;
export "lib1_b.dart";
lib1a() {
lib3.lib3();
}
package1/lib1_b.dart:
import "package:package2/lib2.dart" as lib2;
lib1() {
return la(null);
}
la(lib2.Foo f) {
return 42;
}
package2/lib2.dart:
int f = 42;
class Foo {
static int y = 42;
}
package3/lib3.dart:
lib3() {
print("lib3");
}
.packages: |
package1:package1
package2:package2
package3:package3
expectedLibraryCount: 5
incrementalSerializationDoesWork: true