Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2012, 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 /** | 5 /** |
| 6 * Classes and methods for enumerating and preparing tests. | 6 * Classes and methods for enumerating and preparing tests. |
| 7 * | 7 * |
| 8 * This library includes: | 8 * This library includes: |
| 9 * | 9 * |
| 10 * - Creating tests by listing all the Dart files in certain directories, | 10 * - Creating tests by listing all the Dart files in certain directories, |
| (...skipping 351 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 362 if (start > testsStart) { | 362 if (start > testsStart) { |
| 363 // TODO(sigmund): delete this branch once all tests stop using the src/ | 363 // TODO(sigmund): delete this branch once all tests stop using the src/ |
| 364 // directory | 364 // directory |
| 365 testName = filename.substring(start + 4, filename.length - 5); | 365 testName = filename.substring(start + 4, filename.length - 5); |
| 366 } else if (optionsFromFile['isMultitest']) { | 366 } else if (optionsFromFile['isMultitest']) { |
| 367 start = filename.lastIndexOf('/'); | 367 start = filename.lastIndexOf('/'); |
| 368 int middle = filename.lastIndexOf('_'); | 368 int middle = filename.lastIndexOf('_'); |
| 369 testName = filename.substring(start + 1, middle) + '/' + | 369 testName = filename.substring(start + 1, middle) + '/' + |
| 370 filename.substring(middle + 1, filename.length - 5); | 370 filename.substring(middle + 1, filename.length - 5); |
| 371 } else { | 371 } else { |
| 372 // This case is hit by the dartc client compilation | 372 // This branch is hit in two cases: standard test suites created with |
| 373 // tests. These tests are pretty broken compared to the | 373 // forDirectory and dartc code compilation tests. |
| 374 | |
| 375 // Dartc compilation tests are pretty broken compared to the | |
| 374 // rest. They use the .dart suffix in the status files. They | 376 // rest. They use the .dart suffix in the status files. They |
| 375 // find tests in weird ways (testing that they contain "#"). | 377 // find tests in weird ways (testing that they contain "#"). |
| 376 // They need to be redone. | 378 // They need to be redone. |
| 377 // TODO(1058): This does not work on Windows. | 379 // TODO(1058): This does not work on Windows. |
| 378 start = filename.indexOf(directoryPath); | 380 start = filename.indexOf(directoryPath); |
| 379 if (start != -1) { | 381 if (start != -1) { |
| 380 testName = filename.substring(start + directoryPath.length + 1); | 382 testName = filename.substring(start + directoryPath.length + 1); |
| 381 } else { | 383 } else { |
| 382 testName = filename; | 384 testName = filename; |
|
Bill Hesse
2012/05/03 14:44:04
I don't like the possibility that we might hit thi
Siggi Cherem (dart-lang)
2012/05/04 23:51:24
maybe we can split the dartc vs non-dartc cases up
| |
| 383 } | 385 } |
| 384 | 386 |
| 385 if (configuration['compiler'] != 'dartc' || | 387 if (configuration['compiler'] != 'dartc' || |
| 386 testName.endsWith('_test.dart')) { | 388 testName.endsWith('_test.dart')) { |
| 387 if (testName.endsWith('.dart')) { | 389 if (testName.endsWith('.dart')) { |
| 388 testName = testName.substring(0, testName.length - 5); | 390 testName = testName.substring(0, testName.length - 5); |
| 389 } | 391 } |
| 390 } | 392 } |
| 391 } | 393 } |
| 392 int shards = configuration['shards']; | 394 int shards = configuration['shards']; |
| (...skipping 747 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 1140 void createTest(successIgnored) { | 1142 void createTest(successIgnored) { |
| 1141 var sdkDir = "$buildDir/dart-sdk".trim(); | 1143 var sdkDir = "$buildDir/dart-sdk".trim(); |
| 1142 List<String> args = <String>[ | 1144 List<String> args = <String>[ |
| 1143 '-ea', | 1145 '-ea', |
| 1144 '-classpath', classPath, | 1146 '-classpath', classPath, |
| 1145 '-Dcom.google.dart.sdk=$sdkDir', | 1147 '-Dcom.google.dart.sdk=$sdkDir', |
| 1146 '-Dcom.google.dart.corelib.SharedTests.test_py=' + | 1148 '-Dcom.google.dart.corelib.SharedTests.test_py=' + |
| 1147 dartDir + '/tools/test.py', | 1149 dartDir + '/tools/test.py', |
| 1148 'org.junit.runner.JUnitCore']; | 1150 'org.junit.runner.JUnitCore']; |
| 1149 args.addAll(testClasses); | 1151 args.addAll(testClasses); |
| 1150 | 1152 |
| 1151 // Lengthen the timeout for JUnit tests. It is normal for them | 1153 // Lengthen the timeout for JUnit tests. It is normal for them |
| 1152 // to run for a few minutes. | 1154 // to run for a few minutes. |
| 1153 Map updatedConfiguration = new Map(); | 1155 Map updatedConfiguration = new Map(); |
| 1154 configuration.forEach((key, value) { | 1156 configuration.forEach((key, value) { |
| 1155 updatedConfiguration[key] = value; | 1157 updatedConfiguration[key] = value; |
| 1156 }); | 1158 }); |
| 1157 updatedConfiguration['timeout'] *= 2; | 1159 updatedConfiguration['timeout'] *= 2; |
| 1158 doTest(new TestCase(suiteName, | 1160 doTest(new TestCase(suiteName, |
| 1159 [new Command('java', args)], | 1161 [new Command('java', args)], |
| 1160 updatedConfiguration, | 1162 updatedConfiguration, |
| (...skipping 236 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 1397 * $noCrash tests are expected to be flaky but not crash | 1399 * $noCrash tests are expected to be flaky but not crash |
| 1398 * $pass tests are expected to pass | 1400 * $pass tests are expected to pass |
| 1399 * $failOk tests are expected to fail that we won't fix | 1401 * $failOk tests are expected to fail that we won't fix |
| 1400 * $fail tests are expected to fail that we should fix | 1402 * $fail tests are expected to fail that we should fix |
| 1401 * $crash tests are expected to crash that we should fix | 1403 * $crash tests are expected to crash that we should fix |
| 1402 * $timeout tests are allowed to timeout | 1404 * $timeout tests are allowed to timeout |
| 1403 """; | 1405 """; |
| 1404 print(report); | 1406 print(report); |
| 1405 } | 1407 } |
| 1406 } | 1408 } |
| OLD | NEW |