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

Side by Side Diff: lib/src/runner.dart

Issue 1258163002: Split out a RunnerSuite class. (Closed) Base URL: git@github.com:dart-lang/test@master
Patch Set: Code review changes Created 5 years, 4 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 unified diff | Download patch
« no previous file with comments | « lib/src/backend/suite.dart ('k') | lib/src/runner/browser/browser_manager.dart » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 library test.runner; 5 library test.runner;
6 6
7 import 'dart:async'; 7 import 'dart:async';
8 import 'dart:io'; 8 import 'dart:io';
9 9
10 import 'backend/metadata.dart'; 10 import 'backend/metadata.dart';
11 import 'backend/suite.dart';
12 import 'backend/test_platform.dart'; 11 import 'backend/test_platform.dart';
13 import 'runner/application_exception.dart'; 12 import 'runner/application_exception.dart';
14 import 'runner/configuration.dart'; 13 import 'runner/configuration.dart';
15 import 'runner/engine.dart'; 14 import 'runner/engine.dart';
16 import 'runner/load_exception.dart'; 15 import 'runner/load_exception.dart';
17 import 'runner/load_suite.dart'; 16 import 'runner/load_suite.dart';
18 import 'runner/loader.dart'; 17 import 'runner/loader.dart';
19 import 'runner/reporter.dart'; 18 import 'runner/reporter.dart';
20 import 'runner/reporter/compact.dart'; 19 import 'runner/reporter/compact.dart';
21 import 'runner/reporter/expanded.dart'; 20 import 'runner/reporter/expanded.dart';
21 import 'runner/runner_suite.dart';
22 import 'util/async_thunk.dart'; 22 import 'util/async_thunk.dart';
23 import 'util/io.dart'; 23 import 'util/io.dart';
24 import 'utils.dart'; 24 import 'utils.dart';
25 25
26 /// The set of platforms for which debug flags are (currently) not supported. 26 /// The set of platforms for which debug flags are (currently) not supported.
27 final _debugUnsupportedPlatforms = new Set.from( 27 final _debugUnsupportedPlatforms = new Set.from(
28 [TestPlatform.vm, TestPlatform.phantomJS, TestPlatform.contentShell]); 28 [TestPlatform.vm, TestPlatform.phantomJS, TestPlatform.contentShell]);
29 29
30 /// A class that loads and runs tests based on a [Configuration]. 30 /// A class that loads and runs tests based on a [Configuration].
31 /// 31 ///
(...skipping 182 matching lines...) Expand 10 before | Expand all | Expand 10 after
214 _engine.run() 214 _engine.run()
215 ]); 215 ]);
216 return results.last; 216 return results.last;
217 } 217 }
218 218
219 /// Pauses the engine and the reporter so that the user can set breakpoints as 219 /// Pauses the engine and the reporter so that the user can set breakpoints as
220 /// necessary. 220 /// necessary.
221 /// 221 ///
222 /// This is a no-op for test suites that aren't on platforms where debugging 222 /// This is a no-op for test suites that aren't on platforms where debugging
223 /// is supported. 223 /// is supported.
224 Future _pause(Suite suite) async { 224 Future _pause(RunnerSuite suite) async {
225 if (suite.platform == null) return; 225 if (suite.platform == null) return;
226 if (_debugUnsupportedPlatforms.contains(suite.platform)) return; 226 if (_debugUnsupportedPlatforms.contains(suite.platform)) return;
227 227
228 try { 228 try {
229 _reporter.pause(); 229 _reporter.pause();
230 230
231 var bold = _configuration.color ? '\u001b[1m' : ''; 231 var bold = _configuration.color ? '\u001b[1m' : '';
232 var noColor = _configuration.color ? '\u001b[0m' : ''; 232 var noColor = _configuration.color ? '\u001b[0m' : '';
233 print(''); 233 print('');
234 print(wordWrap( 234 print(wordWrap(
235 "${bold}The test runner is paused.${noColor} Open the dev console in " 235 "${bold}The test runner is paused.${noColor} Open the dev console in "
236 "${suite.platform} and set breakpoints. Once you're finished, " 236 "${suite.platform} and set breakpoints. Once you're finished, "
237 "return to this terminal and press Enter.")); 237 "return to this terminal and press Enter."));
238 238
239 // TODO(nweiz): Display something in the paused browsers indicating that 239 // TODO(nweiz): Display something in the paused browsers indicating that
240 // they're paused. 240 // they're paused.
241 241
242 await stdinLines.next; 242 await stdinLines.next;
243 } finally { 243 } finally {
244 _reporter.resume(); 244 _reporter.resume();
245 } 245 }
246 } 246 }
247 } 247 }
OLDNEW
« no previous file with comments | « lib/src/backend/suite.dart ('k') | lib/src/runner/browser/browser_manager.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698