# 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.

type: newworld
worlds:
  - entry: main.dart
    errors: true
    sources:
      main.dart: |
        part 'lib.dart';
        main() {}
      lib.dart: |
        methodFromLib() {}
    expectedLibraryCount: 2

  - entry: main.dart
    errors: true
    invalidate:
      - main.dart
    sources:
      main.dart: |
        part 'lib.dart';
        main() {}
      lib.dart: |
        methodFromLib() {}
    expectedLibraryCount: 2

  - entry: main.dart
    errors: true
    invalidate:
      - lib.dart
    sources:
      main.dart: |
        part 'lib.dart';
        main() {}
      lib.dart: |
        methodFromLib() {}
    expectedLibraryCount: 2
