blob: 8fb3d4f434b742d01afe86d5f6e923e074cf1a5b [file] [log] [blame]
# Copyright (c) 2020, 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.
# A field has 2 references. Both should be passed when creating a new field
# for references to both set and get to work. And both should be put in the
# `buildersCreatedWithReferences` map so - when lazy-loading a dill library
# with additional exports to a library that we're currently recompiling
# those will get setup correctly too.
type: newworld
worlds:
- entry: main.dart
experiments: alternative-invalidation-strategy
sources:
main.dart: |
import 'libExporter.dart';
void foo() {
int value = libField;
libField = value+1;
}
libExporter.dart: |
export "lib.dart";
String fromLibExporter = "hello";
lib.dart: |
import "libExporter.dart";
int libField = 42;
void requireStuffFromLibExporter() {
print(fromLibExporter);
}
expectedLibraryCount: 3
- entry: main.dart
experiments: alternative-invalidation-strategy
worldType: updated
expectInitializeFromDill: false
invalidate:
- lib.dart
expectedLibraryCount: 3
expectsRebuildBodiesOnly: true
- entry: main.dart
experiments: alternative-invalidation-strategy
worldType: updated
expectInitializeFromDill: false
invalidate:
- libExporter.dart
expectedLibraryCount: 3
expectsRebuildBodiesOnly: true
- entry: main.dart
experiments: alternative-invalidation-strategy
worldType: updated
expectInitializeFromDill: false
invalidate:
- main.dart
expectedLibraryCount: 3
expectsRebuildBodiesOnly: true