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 Directory tempDir = new Directory('').createTempSync(); | 8 Directory tempDir = new Directory('').createTempSync(); |
10 var nonAsciiDir = new Directory("${tempDir.path}/æøå"); | 9 var nonAsciiDir = new Directory("${tempDir.path}/æøå"); |
11 // On MacOS you get the decomposed utf8 form of file and directory | 10 // On MacOS you get the decomposed utf8 form of file and directory |
12 // names from the system. Therefore, we have to check for both here. | 11 // names from the system. Therefore, we have to check for both here. |
13 var precomposed = 'æøå'; | 12 var precomposed = 'æøå'; |
14 var decomposed = new String.fromCharCodes([47, 230, 248, 97, 778]); | 13 var decomposed = new String.fromCharCodes([47, 230, 248, 97, 778]); |
15 Expect.isFalse(nonAsciiDir.existsSync()); | 14 Expect.isFalse(nonAsciiDir.existsSync()); |
16 nonAsciiDir.createSync(); | 15 nonAsciiDir.createSync(); |
17 Expect.isTrue(nonAsciiDir.existsSync()); | 16 Expect.isTrue(nonAsciiDir.existsSync()); |
18 var temp = new Directory("${tempDir.path}/æøå").createTempSync(); | 17 var temp = new Directory("${tempDir.path}/æøå").createTempSync(); |
19 Expect.isTrue(temp.path.contains(precomposed) || | 18 Expect.isTrue(temp.path.contains(precomposed) || |
20 temp.path.contains(decomposed)); | 19 temp.path.contains(decomposed)); |
21 temp.deleteSync(); | 20 temp.deleteSync(); |
22 tempDir.deleteSync(recursive: true); | 21 tempDir.deleteSync(recursive: true); |
23 Expect.isFalse(nonAsciiDir.existsSync()); | 22 Expect.isFalse(nonAsciiDir.existsSync()); |
24 Expect.isFalse(temp.existsSync()); | 23 Expect.isFalse(temp.existsSync()); |
25 } | 24 } |
OLD | NEW |