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 'dart:io'; | 5 import 'dart:io'; |
6 | 6 |
7 import '../descriptor.dart' as d; | 7 import '../descriptor.dart' as d; |
8 import '../test_pub.dart'; | 8 import '../test_pub.dart'; |
9 | 9 |
10 main() { | 10 main() { |
11 // Pub uses NTFS junction points to create links in the packages directory. | 11 // Pub uses NTFS junction points to create links in the packages directory. |
12 // These (unlike the symlinks that are supported in Vista and later) do not | 12 // These (unlike the symlinks that are supported in Vista and later) do not |
13 // support relative paths. So this test, by design, will not pass on Windows. | 13 // support relative paths. So this test, by design, will not pass on Windows. |
14 // So just skip it. | 14 // So just skip it. |
15 if (Platform.operatingSystem == "windows") return; | 15 if (Platform.operatingSystem == "windows") return; |
16 | 16 |
17 integration('uses a relative symlink for the self link', () { | 17 integration('uses a relative symlink for the self link', () { |
18 d.dir(appPath, [ | 18 d.dir(appPath, [ |
19 d.appPubspec(), | 19 d.appPubspec(), |
20 d.libDir('foo') | 20 d.libDir('foo') |
21 ]).create(); | 21 ]).create(); |
22 | 22 |
23 pubGet(); | 23 pubGet(args: ["--packages-dir"]); |
24 | 24 |
25 scheduleRename(appPath, "moved"); | 25 scheduleRename(appPath, "moved"); |
26 | 26 |
27 d.dir("moved", [ | 27 d.dir("moved", [ |
28 d.dir("packages", [ | 28 d.dir("packages", [ |
29 d.dir("myapp", [ | 29 d.dir("myapp", [ |
30 d.file('foo.dart', 'main() => "foo";') | 30 d.file('foo.dart', 'main() => "foo";') |
31 ]) | 31 ]) |
32 ]) | 32 ]) |
33 ]).validate(); | 33 ]).validate(); |
34 }); | 34 }); |
35 | 35 |
36 integration('uses a relative symlink for secondary packages directory', () { | 36 integration('uses a relative symlink for secondary packages directory', () { |
37 d.dir(appPath, [ | 37 d.dir(appPath, [ |
38 d.appPubspec(), | 38 d.appPubspec(), |
39 d.libDir('foo'), | 39 d.libDir('foo'), |
40 d.dir("bin") | 40 d.dir("bin") |
41 ]).create(); | 41 ]).create(); |
42 | 42 |
43 pubGet(); | 43 pubGet(args: ["--packages-dir"]); |
44 | 44 |
45 scheduleRename(appPath, "moved"); | 45 scheduleRename(appPath, "moved"); |
46 | 46 |
47 d.dir("moved", [ | 47 d.dir("moved", [ |
48 d.dir("bin", [ | 48 d.dir("bin", [ |
49 d.dir("packages", [ | 49 d.dir("packages", [ |
50 d.dir("myapp", [ | 50 d.dir("myapp", [ |
51 d.file('foo.dart', 'main() => "foo";') | 51 d.file('foo.dart', 'main() => "foo";') |
52 ]) | 52 ]) |
53 ]) | 53 ]) |
54 ]) | 54 ]) |
55 ]).validate(); | 55 ]).validate(); |
56 }); | 56 }); |
57 } | 57 } |
OLD | NEW |