| OLD | NEW |
| (Empty) |
| 1 #!/usr/bin/env dart | |
| 2 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file | |
| 3 // for details. All rights reserved. Use of this source code is governed by a | |
| 4 // BSD-style license that can be found in the LICENSE file. | |
| 5 | |
| 6 /** | |
| 7 * This file is the entrypoint of the dart test suite. This suite is used | |
| 8 * to test: | |
| 9 * | |
| 10 * 1. the dart vm | |
| 11 * 2. the dart2js compiler | |
| 12 * 3. the static analyzer | |
| 13 * 4. the dart core library | |
| 14 * 5. other standard dart libraries (DOM bindings, ui libraries, | |
| 15 * io libraries etc.) | |
| 16 * | |
| 17 * This script is normally invoked by test.py. (test.py finds the dart vm | |
| 18 * and passes along all command line arguments to this script.) | |
| 19 * | |
| 20 * The command line args of this script are documented in | |
| 21 * "tools/testing/dart/test_options.dart"; they are printed | |
| 22 * when this script is run with "--help". | |
| 23 * | |
| 24 * The default test directory layout is documented in | |
| 25 * "tools/testing/dart/test_suite.dart", above | |
| 26 * "factory StandardTestSuite.forDirectory". | |
| 27 */ | |
| 28 | |
| 29 library test; | |
| 30 | |
| 31 import "dart:async"; | |
| 32 import "dart:io"; | |
| 33 import "testing/dart/test_configurations.dart"; | |
| 34 import "testing/dart/test_options.dart"; | |
| 35 import "testing/dart/test_progress.dart"; | |
| 36 import "testing/dart/test_suite.dart"; | |
| 37 import "testing/dart/utils.dart"; | |
| 38 | |
| 39 Future _deleteTemporaryDartDirectories() { | |
| 40 var completer = new Completer(); | |
| 41 var environment = Platform.environment; | |
| 42 if (environment['DART_TESTING_DELETE_TEMPORARY_DIRECTORIES'] == '1') { | |
| 43 LeftOverTempDirPrinter.getLeftOverTemporaryDirectories().listen( | |
| 44 (FileSystemEntity tempEntity) { | |
| 45 Directory tempDirectory = tempEntity as Directory; | |
| 46 try { | |
| 47 tempDirectory.deleteSync(recursive: true); | |
| 48 } catch (error) { | |
| 49 DebugLogger.error(error); | |
| 50 } | |
| 51 }, onDone: completer.complete); | |
| 52 } else { | |
| 53 completer.complete(); | |
| 54 } | |
| 55 return completer.future; | |
| 56 } | |
| 57 | |
| 58 void main(List<String> arguments) { | |
| 59 // This script is in [sdk]/tools. | |
| 60 TestUtils.setDartDirUri(Platform.script.resolve('..')); | |
| 61 _deleteTemporaryDartDirectories().then((_) { | |
| 62 var optionsParser = new TestOptionsParser(); | |
| 63 var configurations = optionsParser.parse(arguments); | |
| 64 if (configurations != null && configurations.length > 0) { | |
| 65 // All the testing is carried out asynchronously in tasks created by this | |
| 66 // call. | |
| 67 // TODO(26372): Ensure that all tasks complete before the returned future. | |
| 68 testConfigurations(configurations); | |
| 69 } | |
| 70 }); | |
| 71 } | |
| OLD | NEW |