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

# This is not actually an incremental compiler test as much as a compiler test.
# Test what happens when running a package file as strong NNBD (and it's marked
# with a matching language version) in a package that's with a lower language
# version (nothing should really happen --- it should just work).
# See https://github.com/dart-lang/sdk/issues/42323.

type: newworld
nnbdMode: strong
worlds:
  - entry: bin/runMe.dart
    enableStringReplacement: true
    sources:
      .dart_tool/package_config.json: |
        {
          "configVersion": 2,
          "packages": [
            {
              "name": "issue42323",
              "rootUri": "../",
              "packageUri": "lib/",
              "languageVersion": "2.8"
            }
          ]
        }
      bin/runMe.dart: |
        // @dart = %NNBD_VERSION_MARKER%
        main() {}
    expectedLibraryCount: 1