| 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 |