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 library path_test; | 5 library path_test; |
6 | 6 |
7 import 'dart:io' as io; | 7 import 'dart:io' as io; |
8 | 8 |
9 // TODO(rnystrom): Use "package:" path when #7491 is fixed. | 9 // TODO(rnystrom): Use "package:" path when #7491 is fixed. |
10 import '../../unittest/lib/unittest.dart'; | 10 import '../../unittest/lib/unittest.dart'; |
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
47 // TODO(nweiz): enable this once issue 7323 is fixed. | 47 // TODO(nweiz): enable this once issue 7323 is fixed. |
48 // expect(builder.rootPrefix(r'\\server\a\b'), r'\\server\'); | 48 // expect(builder.rootPrefix(r'\\server\a\b'), r'\\server\'); |
49 }); | 49 }); |
50 | 50 |
51 test('dirname', () { | 51 test('dirname', () { |
52 expect(builder.dirname(r''), '.'); | 52 expect(builder.dirname(r''), '.'); |
53 expect(builder.dirname(r'a'), '.'); | 53 expect(builder.dirname(r'a'), '.'); |
54 expect(builder.dirname(r'a\b'), 'a'); | 54 expect(builder.dirname(r'a\b'), 'a'); |
55 expect(builder.dirname(r'a\b\c'), r'a\b'); | 55 expect(builder.dirname(r'a\b\c'), r'a\b'); |
56 expect(builder.dirname(r'a\b.c'), 'a'); | 56 expect(builder.dirname(r'a\b.c'), 'a'); |
57 expect(builder.dirname(r'a\'), 'a'); | 57 expect(builder.dirname(r'a\'), '.'); |
58 expect(builder.dirname('a/'), 'a'); | 58 expect(builder.dirname('a/'), '.'); |
59 expect(builder.dirname(r'a\.'), 'a'); | 59 expect(builder.dirname(r'a\.'), 'a'); |
60 expect(builder.dirname(r'a\b/c'), r'a\b'); | 60 expect(builder.dirname(r'a\b/c'), r'a\b'); |
61 expect(builder.dirname(r'C:\a'), r'C:\'); | 61 expect(builder.dirname(r'C:\a'), r'C:\'); |
62 expect(builder.dirname('C:\\'), r'C:\'); | 62 expect(builder.dirname(r'C:\\\a'), r'C:\'); |
63 expect(builder.dirname(r'a\b\'), r'a\b'); | 63 expect(builder.dirname(r'C:\'), r'C:\'); |
| 64 expect(builder.dirname(r'C:\\\'), r'C:\'); |
| 65 expect(builder.dirname(r'a\b\'), r'a'); |
64 expect(builder.dirname(r'a/b\c'), 'a/b'); | 66 expect(builder.dirname(r'a/b\c'), 'a/b'); |
65 expect(builder.dirname(r'a\\'), r'a\'); | 67 expect(builder.dirname(r'a\\'), r'.'); |
| 68 expect(builder.dirname(r'a\b\\'), 'a'); |
| 69 expect(builder.dirname(r'a\\b'), 'a'); |
66 }); | 70 }); |
67 | 71 |
68 test('basename', () { | 72 test('basename', () { |
69 expect(builder.basename(r''), ''); | 73 expect(builder.basename(r''), ''); |
70 expect(builder.basename(r'a'), 'a'); | 74 expect(builder.basename(r'a'), 'a'); |
71 expect(builder.basename(r'a\b'), 'b'); | 75 expect(builder.basename(r'a\b'), 'b'); |
72 expect(builder.basename(r'a\b\c'), 'c'); | 76 expect(builder.basename(r'a\b\c'), 'c'); |
73 expect(builder.basename(r'a\b.c'), 'b.c'); | 77 expect(builder.basename(r'a\b.c'), 'b.c'); |
74 expect(builder.basename(r'a\'), ''); | 78 expect(builder.basename(r'a\'), 'a'); |
75 expect(builder.basename(r'a/'), ''); | 79 expect(builder.basename(r'a/'), 'a'); |
76 expect(builder.basename(r'a\.'), '.'); | 80 expect(builder.basename(r'a\.'), '.'); |
77 expect(builder.basename(r'a\b/c'), r'c'); | 81 expect(builder.basename(r'a\b/c'), r'c'); |
78 expect(builder.basename(r'C:\a'), 'a'); | 82 expect(builder.basename(r'C:\a'), 'a'); |
79 // TODO(nweiz): this should actually return 'C:\' | 83 expect(builder.basename(r'C:\'), r'C:\'); |
80 expect(builder.basename(r'C:\'), ''); | 84 expect(builder.basename(r'a\b\'), 'b'); |
81 expect(builder.basename(r'a\b\'), ''); | |
82 expect(builder.basename(r'a/b\c'), 'c'); | 85 expect(builder.basename(r'a/b\c'), 'c'); |
83 expect(builder.basename(r'a\\'), ''); | 86 expect(builder.basename(r'a\\'), 'a'); |
| 87 expect(builder.basename(r'a\b\\'), 'b'); |
| 88 expect(builder.basename(r'a\\b'), 'b'); |
84 }); | 89 }); |
85 | 90 |
86 test('basenameWithoutExtension', () { | 91 test('basenameWithoutExtension', () { |
87 expect(builder.basenameWithoutExtension(''), ''); | 92 expect(builder.basenameWithoutExtension(''), ''); |
88 expect(builder.basenameWithoutExtension('a'), 'a'); | 93 expect(builder.basenameWithoutExtension('a'), 'a'); |
89 expect(builder.basenameWithoutExtension(r'a\b'), 'b'); | 94 expect(builder.basenameWithoutExtension(r'a\b'), 'b'); |
90 expect(builder.basenameWithoutExtension(r'a\b\c'), 'c'); | 95 expect(builder.basenameWithoutExtension(r'a\b\c'), 'c'); |
91 expect(builder.basenameWithoutExtension(r'a\b.c'), 'b'); | 96 expect(builder.basenameWithoutExtension(r'a\b.c'), 'b'); |
92 expect(builder.basenameWithoutExtension(r'a\'), ''); | 97 expect(builder.basenameWithoutExtension(r'a\'), 'a'); |
93 expect(builder.basenameWithoutExtension(r'a\.'), '.'); | 98 expect(builder.basenameWithoutExtension(r'a\.'), '.'); |
94 expect(builder.basenameWithoutExtension(r'a\b/c'), r'c'); | 99 expect(builder.basenameWithoutExtension(r'a\b/c'), r'c'); |
95 expect(builder.basenameWithoutExtension(r'a\.bashrc'), '.bashrc'); | 100 expect(builder.basenameWithoutExtension(r'a\.bashrc'), '.bashrc'); |
96 expect(builder.basenameWithoutExtension(r'a\b\c.d.e'), 'c.d'); | 101 expect(builder.basenameWithoutExtension(r'a\b\c.d.e'), 'c.d'); |
| 102 expect(builder.basenameWithoutExtension(r'a\\'), 'a'); |
| 103 expect(builder.basenameWithoutExtension(r'a\b\\'), 'b'); |
| 104 expect(builder.basenameWithoutExtension(r'a\\b'), 'b'); |
| 105 expect(builder.basenameWithoutExtension(r'a\b.c\'), 'b'); |
| 106 expect(builder.basenameWithoutExtension(r'a\b.c\\'), 'b'); |
97 }); | 107 }); |
98 | 108 |
99 test('isAbsolute', () { | 109 test('isAbsolute', () { |
100 expect(builder.isAbsolute(''), false); | 110 expect(builder.isAbsolute(''), false); |
101 expect(builder.isAbsolute('a'), false); | 111 expect(builder.isAbsolute('a'), false); |
102 expect(builder.isAbsolute(r'a\b'), false); | 112 expect(builder.isAbsolute(r'a\b'), false); |
103 expect(builder.isAbsolute(r'\a'), false); | 113 expect(builder.isAbsolute(r'\a'), false); |
104 expect(builder.isAbsolute(r'\a\b'), false); | 114 expect(builder.isAbsolute(r'\a\b'), false); |
105 expect(builder.isAbsolute('~'), false); | 115 expect(builder.isAbsolute('~'), false); |
106 expect(builder.isAbsolute('.'), false); | 116 expect(builder.isAbsolute('.'), false); |
(...skipping 278 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
385 expect(builder.withoutExtension(r'a\b.c.d'), r'a\b.c'); | 395 expect(builder.withoutExtension(r'a\b.c.d'), r'a\b.c'); |
386 expect(builder.withoutExtension(r'a\'), r'a\'); | 396 expect(builder.withoutExtension(r'a\'), r'a\'); |
387 expect(builder.withoutExtension(r'a\b\'), r'a\b\'); | 397 expect(builder.withoutExtension(r'a\b\'), r'a\b\'); |
388 expect(builder.withoutExtension(r'a\.'), r'a\.'); | 398 expect(builder.withoutExtension(r'a\.'), r'a\.'); |
389 expect(builder.withoutExtension(r'a\.b'), r'a\.b'); | 399 expect(builder.withoutExtension(r'a\.b'), r'a\.b'); |
390 expect(builder.withoutExtension(r'a.b\c'), r'a.b\c'); | 400 expect(builder.withoutExtension(r'a.b\c'), r'a.b\c'); |
391 expect(builder.withoutExtension(r'a/b.c/d'), r'a/b.c/d'); | 401 expect(builder.withoutExtension(r'a/b.c/d'), r'a/b.c/d'); |
392 expect(builder.withoutExtension(r'a\b/c'), r'a\b/c'); | 402 expect(builder.withoutExtension(r'a\b/c'), r'a\b/c'); |
393 expect(builder.withoutExtension(r'a\b/c.d'), r'a\b/c'); | 403 expect(builder.withoutExtension(r'a\b/c.d'), r'a\b/c'); |
394 expect(builder.withoutExtension(r'a.b/c'), r'a.b/c'); | 404 expect(builder.withoutExtension(r'a.b/c'), r'a.b/c'); |
| 405 expect(builder.withoutExtension(r'a\b.c\'), r'a\b\'); |
395 }); | 406 }); |
396 } | 407 } |
OLD | NEW |