Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(204)

Unified Diff: tools/testing/dart/test_runner.dart

Issue 9662063: Fix some type and logical errors in test.dart, found by the Dart editor. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Fix a type error. Created 8 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « tools/testing/dart/test_progress.dart ('k') | tools/testing/dart/test_suite.dart » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: tools/testing/dart/test_runner.dart
diff --git a/tools/testing/dart/test_runner.dart b/tools/testing/dart/test_runner.dart
index ce470acbde3a006ca62521fc0769e4add75d7cb0..dcbcdf119370f882507b2947179757a05af28050 100644
--- a/tools/testing/dart/test_runner.dart
+++ b/tools/testing/dart/test_runner.dart
@@ -12,6 +12,7 @@
#library("test_runner");
#import("dart:io");
+#import("dart:builtin");
#import("status_file_parser.dart");
#import("test_progress.dart");
#import("test_suite.dart");
@@ -59,7 +60,7 @@ class TestCase {
* it. Some isolate tests might even have three, if they require compiling
* multiple sources that are run in isolation.
*/
- final List<Command> commands;
+ List<Command> commands;
Map configuration;
String displayName;
@@ -105,7 +106,7 @@ class TestCase {
}
newArguments.add(c.executable);
}
- newArguments.addAll(arguments);
+ newArguments.addAll(c.arguments);
var suffixSplit = suffix.split(' ');
suffixSplit.forEach((e) {
if (!e.isEmpty()) newArguments.add(e);
@@ -115,7 +116,7 @@ class TestCase {
Expect.stringEquals('$prefix ${c.commandLine} $suffix',
newCommand.commandLine);
}
- commands = newCommand;
+ commands = newCommands;
}
}
@@ -184,7 +185,13 @@ interface TestOutput default TestOutputImpl {
bool get hasTimedOut();
bool get didFail();
+
+ Duration get time();
+
+ List<String> get stdout();
+ List<String> get stderr();
+
List<String> get diagnostics();
}
@@ -206,14 +213,18 @@ class TestOutputImpl implements TestOutput {
// Don't call this constructor, call TestOutput.fromCase() to
// get anew TestOutput instance.
- TestOutputImpl(this.testCase, this.exitCode, this.timedOut, this.stdout,
- this.stderr, this.time) {
+ TestOutputImpl(TestCase this.testCase,
+ int this.exitCode,
+ bool this.timedOut,
+ List<String> this.stdout,
+ List<String> this.stderr,
+ Duration this.time) {
testCase.output = this;
diagnostics = [];
}
- factory TestOutputImpl.fromCase (testCase, exitCode, timedOut,
- stdout, stderr, time) {
+ factory TestOutputImpl.fromCase (TestCase testCase, int exitCode, bool timedOut,
+ List<String> stdout, List<String> stderr, Duration time) {
if (testCase is BrowserTestCase) {
return new BrowserTestOutputImpl(testCase, exitCode, timedOut,
stdout, stderr, time);
@@ -265,7 +276,7 @@ class BrowserTestOutputImpl extends TestOutputImpl {
// and the virtual framebuffer X server didn't hook up, or DRT crashed with
// a core dump. Sometimes DRT crashes after it has set the stdout to PASS,
// so we have to do this check first.
- for (String line in stderr) {
+ for (String line in super.stderr) {
if (line.contains('Gtk-WARNING **: cannot open display: :99') ||
line.contains('Failed to run command. return code=1')) {
// If we get the X server error, or DRT crashes with a core dump, retry
@@ -280,7 +291,7 @@ class BrowserTestOutputImpl extends TestOutputImpl {
// Browser tests fail unless stdout contains
// 'Content-Type: text/plain\nPASS'.
String previous_line = '';
- for (String line in stdout) {
+ for (String line in super.stdout) {
if (line == 'PASS' && previous_line == 'Content-Type: text/plain') {
return (exitCode != 0 && !hasCrashed);
}
@@ -290,7 +301,7 @@ class BrowserTestOutputImpl extends TestOutputImpl {
}
}
-// The static analyzer does not actaully execute code, so
+// The static analyzer does not actually execute code, so
// the criteria for success now depend on the text sent
// to stderr.
class AnalysisTestOutputImpl extends TestOutputImpl {
@@ -315,7 +326,7 @@ class AnalysisTestOutputImpl extends TestOutputImpl {
List<String> staticWarnings = [];
// Read the returned list of errors and stuff them away.
- for (String line in stderr) {
+ for (String line in super.stderr) {
if (line.length == 0) continue;
List<String> fields = splitMachineError(line);
if (fields[0] == 'ERROR') {
@@ -641,7 +652,7 @@ class BatchRunnerProcess {
_process.stdin.write('--terminate\n'.charCodes());
// In case the run_selenium process didn't close, kill it after 30s
- bool shutdownMillisecs = 30000;
+ int shutdownMillisecs = 30000;
new Timer(shutdownMillisecs, (e) { if (!closed) _process.kill(); });
} else {
_process.kill();
@@ -1003,7 +1014,7 @@ class ProcessQueue {
filePath = filePath.substring(0, index) + '${pathSep}testing${pathSep}';
var dir = new Directory(filePath);
dir.onFile = (String file) {
- if (const RegExp(@"selenium-server-standalone-.*\.jar").hasMatch(file)
+ if (const RegExp("selenium-server-standalone-.*\.jar").hasMatch(file)
&& _seleniumServer == null) {
_seleniumServer = new Process.start('java', ['-jar', file]);
// Heads up: there seems to an obscure data race of some form in
« no previous file with comments | « tools/testing/dart/test_progress.dart ('k') | tools/testing/dart/test_suite.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698