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

# Check that asking to compile two files that doesn't import each other actually
# results in getting both libraries (aka that multiple entry points work).

type: newworld
strong: true
worlds:
  - entry:
      - a.dart
      - b.dart
    sources:
      a.dart: |
        a() {
          print("hello a");
        }
      b.dart: |
        b() {
          print("hello b");
        }
      c.dart: |
        b() {
          print("hello c (I'm not included!)");
        }
    expectedLibraryCount: 2
