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 30 matching lines...) Expand all Loading... | |
41 expect(builder.rootPrefix('/a/c'), '/'); | 41 expect(builder.rootPrefix('/a/c'), '/'); |
42 expect(builder.rootPrefix('/'), '/'); | 42 expect(builder.rootPrefix('/'), '/'); |
43 }); | 43 }); |
44 | 44 |
45 test('dirname', () { | 45 test('dirname', () { |
46 expect(builder.dirname(''), '.'); | 46 expect(builder.dirname(''), '.'); |
47 expect(builder.dirname('a'), '.'); | 47 expect(builder.dirname('a'), '.'); |
48 expect(builder.dirname('a/b'), 'a'); | 48 expect(builder.dirname('a/b'), 'a'); |
49 expect(builder.dirname('a/b/c'), 'a/b'); | 49 expect(builder.dirname('a/b/c'), 'a/b'); |
50 expect(builder.dirname('a/b.c'), 'a'); | 50 expect(builder.dirname('a/b.c'), 'a'); |
51 expect(builder.dirname('a/'), 'a'); | 51 expect(builder.dirname('a/'), '.'); |
52 expect(builder.dirname('a/.'), 'a'); | 52 expect(builder.dirname('a/.'), 'a'); |
53 expect(builder.dirname(r'a\b/c'), r'a\b'); | 53 expect(builder.dirname(r'a\b/c'), r'a\b'); |
54 expect(builder.dirname('/a'), '/'); | 54 expect(builder.dirname('/a'), '/'); |
55 expect(builder.dirname('///a'), '/'); | |
55 expect(builder.dirname('/'), '/'); | 56 expect(builder.dirname('/'), '/'); |
56 expect(builder.dirname('a/b/'), 'a/b'); | 57 expect(builder.dirname('///'), '/'); |
58 expect(builder.dirname('a/b/'), 'a'); | |
57 expect(builder.dirname(r'a/b\c'), 'a'); | 59 expect(builder.dirname(r'a/b\c'), 'a'); |
58 expect(builder.dirname('a//'), 'a/'); | 60 expect(builder.dirname('a//'), '.'); |
61 expect(builder.dirname('a/b//'), 'a'); | |
62 expect(builder.dirname('a//b'), 'a'); | |
59 }); | 63 }); |
60 | 64 |
61 test('basename', () { | 65 test('basename', () { |
62 expect(builder.basename(''), ''); | 66 expect(builder.basename(''), ''); |
63 expect(builder.basename('a'), 'a'); | 67 expect(builder.basename('a'), 'a'); |
64 expect(builder.basename('a/b'), 'b'); | 68 expect(builder.basename('a/b'), 'b'); |
65 expect(builder.basename('a/b/c'), 'c'); | 69 expect(builder.basename('a/b/c'), 'c'); |
66 expect(builder.basename('a/b.c'), 'b.c'); | 70 expect(builder.basename('a/b.c'), 'b.c'); |
67 expect(builder.basename('a/'), ''); | 71 expect(builder.basename('a/'), 'a'); |
68 expect(builder.basename('a/.'), '.'); | 72 expect(builder.basename('a/.'), '.'); |
69 expect(builder.basename(r'a\b/c'), 'c'); | 73 expect(builder.basename(r'a\b/c'), 'c'); |
70 expect(builder.basename('/a'), 'a'); | 74 expect(builder.basename('/a'), 'a'); |
71 // TODO(nweiz): this should actually return '/' | 75 expect(builder.basename('/'), '/'); |
72 expect(builder.basename('/'), ''); | 76 expect(builder.basename('a/b/'), 'b'); |
73 expect(builder.basename('a/b/'), ''); | |
74 expect(builder.basename(r'a/b\c'), r'b\c'); | 77 expect(builder.basename(r'a/b\c'), r'b\c'); |
75 expect(builder.basename('a//'), ''); | 78 expect(builder.basename('a//'), 'a'); |
79 expect(builder.basename('a/b//'), 'b'); | |
80 expect(builder.basename('a//b'), 'b'); | |
76 }); | 81 }); |
77 | 82 |
78 test('basenameWithoutExtension', () { | 83 test('basenameWithoutExtension', () { |
79 expect(builder.basenameWithoutExtension(''), ''); | 84 expect(builder.basenameWithoutExtension(''), ''); |
80 expect(builder.basenameWithoutExtension('a'), 'a'); | 85 expect(builder.basenameWithoutExtension('a'), 'a'); |
81 expect(builder.basenameWithoutExtension('a/b'), 'b'); | 86 expect(builder.basenameWithoutExtension('a/b'), 'b'); |
82 expect(builder.basenameWithoutExtension('a/b/c'), 'c'); | 87 expect(builder.basenameWithoutExtension('a/b/c'), 'c'); |
83 expect(builder.basenameWithoutExtension('a/b.c'), 'b'); | 88 expect(builder.basenameWithoutExtension('a/b.c'), 'b'); |
84 expect(builder.basenameWithoutExtension('a/'), ''); | 89 expect(builder.basenameWithoutExtension('a/'), 'a'); |
85 expect(builder.basenameWithoutExtension('a/.'), '.'); | 90 expect(builder.basenameWithoutExtension('a/.'), '.'); |
86 expect(builder.basenameWithoutExtension(r'a/b\c'), r'b\c'); | 91 expect(builder.basenameWithoutExtension(r'a/b\c'), r'b\c'); |
87 expect(builder.basenameWithoutExtension('a/.bashrc'), '.bashrc'); | 92 expect(builder.basenameWithoutExtension('a/.bashrc'), '.bashrc'); |
88 expect(builder.basenameWithoutExtension('a/b/c.d.e'), 'c.d'); | 93 expect(builder.basenameWithoutExtension('a/b/c.d.e'), 'c.d'); |
94 expect(builder.basenameWithoutExtension('a//'), 'a'); | |
95 expect(builder.basenameWithoutExtension('a/b//'), 'b'); | |
96 expect(builder.basenameWithoutExtension('a//b'), 'b'); | |
97 expect(builder.basenameWithoutExtension('a/b.c/'), 'b'); | |
98 expect(builder.basenameWithoutExtension('a/b.c//'), 'b'); | |
89 }); | 99 }); |
90 | 100 |
91 test('isAbsolute', () { | 101 test('isAbsolute', () { |
92 expect(builder.isAbsolute(''), false); | 102 expect(builder.isAbsolute(''), false); |
93 expect(builder.isAbsolute('a'), false); | 103 expect(builder.isAbsolute('a'), false); |
94 expect(builder.isAbsolute('a/b'), false); | 104 expect(builder.isAbsolute('a/b'), false); |
95 expect(builder.isAbsolute('/a'), true); | 105 expect(builder.isAbsolute('/a'), true); |
96 expect(builder.isAbsolute('/a/b'), true); | 106 expect(builder.isAbsolute('/a/b'), true); |
97 expect(builder.isAbsolute('~'), false); | 107 expect(builder.isAbsolute('~'), false); |
98 expect(builder.isAbsolute('.'), false); | 108 expect(builder.isAbsolute('.'), false); |
(...skipping 252 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
351 expect(builder.withoutExtension('a/b.c'), 'a/b'); | 361 expect(builder.withoutExtension('a/b.c'), 'a/b'); |
352 expect(builder.withoutExtension('a/b.c.d'), 'a/b.c'); | 362 expect(builder.withoutExtension('a/b.c.d'), 'a/b.c'); |
353 expect(builder.withoutExtension('a/'), 'a/'); | 363 expect(builder.withoutExtension('a/'), 'a/'); |
354 expect(builder.withoutExtension('a/b/'), 'a/b/'); | 364 expect(builder.withoutExtension('a/b/'), 'a/b/'); |
355 expect(builder.withoutExtension('a/.'), 'a/.'); | 365 expect(builder.withoutExtension('a/.'), 'a/.'); |
356 expect(builder.withoutExtension('a/.b'), 'a/.b'); | 366 expect(builder.withoutExtension('a/.b'), 'a/.b'); |
357 expect(builder.withoutExtension('a.b/c'), 'a.b/c'); | 367 expect(builder.withoutExtension('a.b/c'), 'a.b/c'); |
358 expect(builder.withoutExtension(r'a.b\c'), r'a'); | 368 expect(builder.withoutExtension(r'a.b\c'), r'a'); |
359 expect(builder.withoutExtension(r'a/b\c'), r'a/b\c'); | 369 expect(builder.withoutExtension(r'a/b\c'), r'a/b\c'); |
360 expect(builder.withoutExtension(r'a/b\c.d'), r'a/b\c'); | 370 expect(builder.withoutExtension(r'a/b\c.d'), r'a/b\c'); |
371 expect(builder.withoutExtension('a/b.c/'), 'a/b/'); | |
372 expect(builder.withoutExtension('a/b.c//'), 'a/b//'); | |
Bob Nystrom
2012/12/20 02:27:28
Nice.
nweiz
2012/12/20 20:54:49
Just for you.
| |
361 }); | 373 }); |
362 } | 374 } |
OLD | NEW |