# 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 errors in it, then - without fixing the errors - # recompile. Make sure we still get errors. As long as we don't fix the error, # we keep getting errors. Once we fix it, we no longer get errors. type: newworld worlds: - entry: main.dart sources: .packages: mypackage:mypackage main.dart: | import "package:mypackage/a.dart"; mypackage/a.dart: | import "package:mypackage/b.dart"; class Foo {} class Bar extends Foo {} mypackage/b.dart: | import "package:mypackage/a.dart"; class Baz extends Bar implements Foo {} expectedLibraryCount: 3 errors: true - entry: main.dart errors: true worldType: updated expectInitializeFromDill: false expectedLibraryCount: 3 - entry: main.dart sources: .packages: mypackage:mypackage main.dart: | import "package:mypackage/a.dart"; mypackage/a.dart: | import "package:mypackage/b.dart"; class Foo {} class Bar extends Foo {} mypackage/b.dart: | import "package:mypackage/a.dart"; class Baz extends Bar implements Foo {} expectedLibraryCount: 3 errors: true - entry: main.dart errors: true worldType: updated invalidate: - main.dart expectedLibraryCount: 3 - entry: main.dart errors: false worldType: updated invalidate: - mypackage/b.dart sources: mypackage/b.dart: | import "package:mypackage/a.dart"; class Baz extends Bar {} expectedLibraryCount: 3