blob: eadacf92e35bf141c30e316f0b4e8d33e0be4171 [file] [log] [blame]
// Copyright (c) 2015, 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 file.
import 'package:expect/expect.dart';
import 'package:expect/config.dart';
main() {
// Common libraries should appear on all backends.
Expect.isTrue(const bool.fromEnvironment("dart.library.async"));
Expect.isTrue(const bool.fromEnvironment("dart.library.collection"));
Expect.isTrue(const bool.fromEnvironment("dart.library.convert"));
Expect.isTrue(const bool.fromEnvironment("dart.library.core"));
Expect.isTrue(const bool.fromEnvironment("dart.library.typed_data"));
Expect.isTrue(const bool.fromEnvironment("dart.library.developer"));
// Internal libraries should not be exposed.
Expect.isFalse(const bool.fromEnvironment("dart.library._internal"));
// `dart:html` is only supported on Dart2js and DDC.
bool hasHtmlSupport = isDart2jsConfiguration || isDdcConfiguration;
Expect.equals(
hasHtmlSupport, const bool.fromEnvironment("dart.library.html"));
Expect.equals(
hasHtmlSupport, const bool.fromEnvironment("dart.library.indexed_db"));
Expect.equals(hasHtmlSupport, const bool.fromEnvironment("dart.library.svg"));
Expect.equals(
hasHtmlSupport, const bool.fromEnvironment("dart.library.web_audio"));
Expect.equals(
hasHtmlSupport, const bool.fromEnvironment("dart.library.web_gl"));
// All web backends support `dart:js_util`
Expect.equals(
isWebConfiguration, const bool.fromEnvironment("dart.library.js_util"));
// Web platforms override 'dart.library.io' to return "false".
// We don't test for the non-existence, but just make sure that
// dart.library.io is not set to true.
Expect.equals(
isVmConfiguration, const bool.fromEnvironment("dart.library.io"));
// `dart:mirrors` is only supported in JIT mode.
Expect.equals(
isVmJitConfiguration, const bool.fromEnvironment("dart.library.mirrors"));
// `fromEnvironment` should return false for non-existing dart libraries.
Expect.isFalse(const bool.fromEnvironment("dart.library.XYZ"));
Expect.isFalse(const bool.fromEnvironment("dart.library.Collection"));
Expect.isFalse(const bool.fromEnvironment("dart.library.converT"));
Expect.isFalse(const bool.fromEnvironment("dart.library."));
Expect.isFalse(const bool.fromEnvironment("dart.library.core "));
}