blob: 861576bf2e766460516611e8356f41e81ddd4538 [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.
# Compile an application, change a file, but don't change the outline.
type: newworld
worlds:
- entry: main.dart
experiments: alternative-invalidation-strategy
sources:
main.dart: |
import 'libA.dart';
class Foo {
final message;
Foo(this.message);
@override
toString() { return '$message'; }
}
main() {
Foo foo = new Foo("hello");
whatever(foo);
CompilationStrategy compilationStrategy = CompilationStrategy.direct;
print(compilationStrategy);
}
enum CompilationStrategy { direct, toKernel, toData, fromData }
libA.dart: |
import 'main.dart';
whatever(Foo foo) {
print(foo);
}
expectedLibraryCount: 2
- entry: main.dart
experiments: alternative-invalidation-strategy
worldType: updated
expectInitializeFromDill: false
invalidate:
- main.dart
sources:
main.dart: |
import 'libA.dart';
class Foo {
final message;
Foo(this.message);
@override
toString() { return '$message!'; }
}
main() {
Foo foo = new Foo("hello");
whatever(foo);
CompilationStrategy compilationStrategy = CompilationStrategy.direct;
print(compilationStrategy);
}
enum CompilationStrategy { direct, toKernel, toData, fromData }
expectedLibraryCount: 2
expectsRebuildBodiesOnly: true