| Index: tests/standalone/coverage_test.dart
|
| diff --git a/tests/standalone/coverage_test.dart b/tests/standalone/coverage_test.dart
|
| deleted file mode 100644
|
| index 1ec4af4e7982d518e83788b8a3d6d3a3d66950fe..0000000000000000000000000000000000000000
|
| --- a/tests/standalone/coverage_test.dart
|
| +++ /dev/null
|
| @@ -1,88 +0,0 @@
|
| -// Copyright (c) 2013, 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.
|
| -
|
| -// This test forks a second vm process that runs the script tools/coverage.dart
|
| -// and verifies that the coverage tool produces its expected output.
|
| -// This test is mainly here to ensure that the coverage tool compiles and
|
| -// runs.
|
| -
|
| -import "dart:async";
|
| -import "dart:convert";
|
| -import "dart:io";
|
| -
|
| -import "package:path/path.dart";
|
| -
|
| -// Coverage tool script relative to the path of this test.
|
| -var coverageToolScript = "../../tools/coverage.dart";
|
| -
|
| -// Coverage target script relative to this test.
|
| -var coverageTargetScript = "../language/hello_dart_test.dart";
|
| -var targPath;
|
| -
|
| -Process coverageToolProcess;
|
| -List sourceLines;
|
| -int nextLineToMatch = 0;
|
| -
|
| -void onCoverageOutput(String line) {
|
| - print("COV: $line");
|
| - if (nextLineToMatch < sourceLines.length) {
|
| - if (line.endsWith("|" + sourceLines[nextLineToMatch])) {
|
| - nextLineToMatch++;
|
| - }
|
| - }
|
| -}
|
| -
|
| -bool checkExitCode(exitCode) {
|
| - var pid = coverageToolProcess.pid;
|
| - print("Coverage tool process (pid $pid) terminated with "
|
| - "exit code $exitCode.");
|
| - return exitCode == 0;
|
| -}
|
| -
|
| -void checkSuccess() {
|
| - if (nextLineToMatch == sourceLines.length) {
|
| - print("Successfully matched all lines of '$targPath'");
|
| - } else {
|
| - print("Error: could not match all source code lines of '$targPath'");
|
| - exit(-1);
|
| - }
|
| -}
|
| -
|
| -void main() {
|
| - // Compute paths for coverage tool and coverage target relative
|
| - // the the path of this script.
|
| - var scriptPath = dirname(Platform.script.toFilePath());
|
| - var toolPath = normalize(join(scriptPath, coverageToolScript));
|
| - targPath = normalize(join(scriptPath, coverageTargetScript));
|
| -
|
| - sourceLines = new File(targPath).readAsLinesSync();
|
| - assert(sourceLines != null);
|
| -
|
| - var processOpts = [ "--compile_all", toolPath, targPath ];
|
| -
|
| - Process.start(Platform.executable, processOpts).then((Process process) {
|
| - coverageToolProcess = process;
|
| - coverageToolProcess.stdin.close();
|
| - var stdoutStringStream = coverageToolProcess.stdout
|
| - .transform(UTF8.decoder)
|
| - .transform(new LineSplitter());
|
| -
|
| - var stderrStringStream = coverageToolProcess.stderr
|
| - .transform(UTF8.decoder)
|
| - .transform(new LineSplitter());
|
| -
|
| - // Wait for 3 future events: stdout and stderr streams of the coverage
|
| - // tool process closed, and coverage tool process terminated.
|
| - var futures = [];
|
| - var subscription = stdoutStringStream.listen(onCoverageOutput);
|
| - futures.add(subscription.asFuture(true));
|
| - subscription = stderrStringStream.listen(onCoverageOutput);
|
| - futures.add(subscription.asFuture(true));
|
| - futures.add(coverageToolProcess.exitCode.then(checkExitCode));
|
| - Future.wait(futures).then((results) {
|
| - checkSuccess();
|
| - if (results.contains(false)) exit(-1);
|
| - });
|
| - });
|
| -}
|
|
|