Chromium Code Reviews| Index: tools/testing/dart/test_suite.dart |
| =================================================================== |
| --- tools/testing/dart/test_suite.dart (revision 3505) |
| +++ tools/testing/dart/test_suite.dart (working copy) |
| @@ -409,7 +409,15 @@ |
| // the client/samples/dartcombat test to its css file, remove the |
| // "../../" from this path, and move this out of the isWebTest guard. |
| // Also remove getHtmlName, and just use test.html. |
| - htmlPath = '${tempDir.path}/../../${getHtmlName(filename)}'; |
| + // TODO(efortuna): this shortening of htmlFilename is a band-aid until |
| + // the above gets fixed. Windows cannot have paths that are longer than |
| + // 260 characters, and without this hack, we were running past the |
| + // limit. |
| + String htmlFilename = getHtmlName(filename); |
| + while ('${tempDir.path}/../../$htmlFilename'.length >= 260) { |
| + htmlFilename = htmlFilename.substring(htmlFilename.length~/2); |
| + } |
| + htmlPath = '${tempDir.path}/../../$htmlFilename'; |
| } |
| final String scriptPath = (component == 'dartium') ? |
| dartWrapperFilename : compiledDartWrapperFilename; |
| @@ -443,9 +451,9 @@ |
| if (libdir == '') { |
| libdir = '$dartDir/frog/lib'; |
| } |
| - compilerArgs.addAll(['--libdir=$libdir', |
| - '--compile-only', |
| - '--out=$compiledDartWrapperFilename']); |
| + compilerArgs.addAll(['--compile-only', |
| + '--out=$compiledDartWrapperFilename', |
| + '--libdir=$libdir']); |
| compilerArgs.addAll(vmOptions); |
| compilerArgs.add(dartWrapperFilename); |
| break; |
| @@ -461,9 +469,14 @@ |
| String executable = getFilename(dumpRenderTreeFilename); |
| List<String> args; |
| if (component == 'webdriver') { |
| - // TODO(efortuna): These paths are not OS independent! |
| executable = '$dartDir/tools/testing/run_selenium.py'; |
| - args = ['--out', htmlPath, '--browser', configuration['browser']]; |
| + if (new Platform().operatingSystem() == 'windows') { |
| + // For Windows, the first command, must have the Windows |
| + // slash direction. |
| + // TODO(efortuna): Get rid of this hack when issue 1306 is fixed. |
| + executable = executable.replaceAll('/', '\\'); |
| + } |
| + args = ['--out=$htmlPath', '--browser=${configuration["browser"]}']; |
| } else { |
| args = ['--no-timeout']; |
| if (component == 'dartium') { |
| @@ -907,14 +920,16 @@ |
| static String compilerName(Map configuration) { |
| String postfix = |
| - (new Platform().operatingSystem() == 'windows') ? '.exe' : ''; |
| + ((new Platform().operatingSystem() == 'windows') && |
| + (configuration['component'] != 'frogium' && |
| + configuration['component'] != 'webdriver')) ? '.exe' : ''; |
|
Bill Hesse
2012/01/24 09:29:22
I meant that 2/3 of the condition here can be elim
Emily Fortuna
2012/01/24 17:20:22
Right. I ended up fixing it in a new CL here (http
|
| switch (configuration['component']) { |
| case 'chromium': |
| case 'dartc': |
| return 'compiler/bin/dartc$postfix'; |
| case 'frogium': |
| case 'webdriver': |
| - return 'frog/bin/frogsh$postfix'; |
| + return 'frog/bin/frogsh'; |
| default: |
| throw "Unknown compiler for: ${configuration['component']}"; |
| } |