| 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 import "package:expect/expect.dart"; | |
| 6 import "dart:io"; | 5 import "dart:io"; |
| 7 | 6 |
| 8 main() { | 7 main() { |
| 9 if (Platform.operatingSystem != 'windows') return; | 8 if (Platform.operatingSystem != 'windows') return; |
| 10 var tempDir = new Directory('').createTempSync(); | 9 var tempDir = new Directory('').createTempSync(); |
| 11 var funkyDir = new Directory("${tempDir.path}/å"); | 10 var funkyDir = new Directory("${tempDir.path}/å"); |
| 12 funkyDir.createSync(); | 11 funkyDir.createSync(); |
| 13 var funkyFile = new File('${funkyDir.path}/funky.bat'); | 12 var funkyFile = new File('${funkyDir.path}/funky.bat'); |
| 14 funkyFile.writeAsStringSync(""" | 13 funkyFile.writeAsStringSync(""" |
| 15 @echo off | 14 @echo off |
| 16 set SCRIPTDIR=%~dp0 | 15 set SCRIPTDIR=%~dp0 |
| 17 %1 %2 | 16 %1 %2 |
| 18 """); | 17 """); |
| 19 var options = new Options(); | 18 var options = new Options(); |
| 20 var dart = options.executable; | 19 var dart = options.executable; |
| 21 var scriptDir = new Path(options.script).directoryPath; | 20 var scriptDir = new Path(options.script).directoryPath; |
| 22 var script = scriptDir.append('windows_environment_script.dart'); | 21 var script = scriptDir.append('windows_environment_script.dart'); |
| 23 Process.run('cmd', | 22 Process.run('cmd', |
| 24 ['/c', funkyFile.path, dart, script.toNativePath()]).then((p) { | 23 ['/c', funkyFile.path, dart, script.toNativePath()]).then((p) { |
| 25 Expect.equals(0, p.exitCode); | 24 Expect.equals(0, p.exitCode); |
| 26 tempDir.deleteSync(recursive: true); | 25 tempDir.deleteSync(recursive: true); |
| 27 }); | 26 }); |
| 28 } | 27 } |
| OLD | NEW |