blob: 552fd49579f5fa53cb91f865c09a72b604365313 [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:async_helper/async_helper.dart';
import "memory_compiler.dart";
runTest(String source, String categories, int expectedErrors) async {
var collector = new DiagnosticCollector();
await runCompiler(
memorySourceFiles: {"main.dart": source},
options: ["--categories=$categories"],
diagnosticHandler: collector);
Expect.equals(expectedErrors, collector.errors.length);
Expect.equals(0, collector.warnings.length);
}
void main() {
asyncTest(() async {
await runTest("import 'dart:async'; main() {}", "Client", 0);
await runTest("import 'dart:async'; main() {}", "Server", 0);
await runTest("import 'dart:html'; main() {}", "Client", 0);
await runTest("import 'dart:html'; main() {}", "Server", 1);
// Importing dart:io is temporarily allowed as a stopgap measure for the
// lack of config specific imports. Once that is added, this will be
// disallowed again.
await runTest("import 'dart:io'; main() {}", "Client", 0);
await runTest("import 'dart:io'; main() {}", "Server", 0);
});
}