blob: 3a869c50f076d1b56fc2d4c9d5f64a363d9c29f3 [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 with a const class with a initializer assert that would
# fail once evaluated. Everything should be fine as there is no usage.
# Add a two new files each with usage of it. An error should occur each place.
# Fix one and the error should still occur in the other.
# Fix the other but re-introduce the first and the error should still occur.
# Fix both and the error should go away.
type: newworld
worlds:
- entry: main.dart
sources:
main.dart: |
import 'lib.dart';
main() {
foo();
}
lib.dart: |
class Foo {
const Foo(int i) : assert(i > 0);
}
foo() {
new Foo(0);
}
expectedLibraryCount: 2
errors: false
- entry: main.dart
errors: true
worldType: updated
invalidate:
- main.dart
sources:
main.dart: |
import 'lib.dart';
import 'lib2.dart';
import 'lib3.dart';
main() {
foo();
print(fooField2);
}
lib2.dart: |
import 'lib.dart';
const fooField = const Foo(0);
lib3.dart: |
import 'lib.dart';
const fooField2 = const Foo(0);
expectInitializeFromDill: false
expectedLibraryCount: 4
- entry: main.dart
errors: true
worldType: updated
invalidate:
- lib2.dart
sources:
lib2.dart: |
import 'lib.dart';
const fooField = const Foo(1);
expectInitializeFromDill: false
expectedLibraryCount: 4
- entry: main.dart
errors: true
worldType: updated
invalidate:
- lib2.dart
- lib3.dart
sources:
lib2.dart: |
import 'lib.dart';
const fooField = const Foo(0);
lib3.dart: |
import 'lib.dart';
const fooField2 = const Foo(1);
expectInitializeFromDill: false
expectedLibraryCount: 4
- entry: main.dart
errors: false
worldType: updated
invalidate:
- lib2.dart
- lib3.dart
sources:
lib2.dart: |
import 'lib.dart';
const fooField = const Foo(1);
lib3.dart: |
import 'lib.dart';
const fooField2 = const Foo(1);
expectInitializeFromDill: false
expectedLibraryCount: 4