OLD | NEW |
1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS d.file | 1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS d.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 d.file. | 3 // BSD-style license that can be found in the LICENSE d.file. |
4 | 4 |
5 import 'package:path/path.dart' as path; | 5 import 'package:path/path.dart' as path; |
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 initConfig(); | 11 initConfig(); |
12 integration("shared dependency with same path", () { | 12 integration("shared dependency with same path", () { |
13 d.dir("shared", [ | 13 d.dir("shared", [ |
14 d.libDir("shared"), | 14 d.libDir("shared"), |
15 d.libPubspec("shared", "0.0.1") | 15 d.libPubspec("shared", "0.0.1") |
16 ]).create(); | 16 ]).create(); |
17 | 17 |
18 d.dir("foo", [ | 18 d.dir("foo", [ |
19 d.libDir("foo"), | 19 d.libDir("foo"), |
20 d.libPubspec("foo", "0.0.1", deps: [ | 20 d.libPubspec("foo", "0.0.1", deps: { |
21 {"path": "../shared"} | 21 "shared": {"path": "../shared"} |
22 ]) | 22 }) |
23 ]).create(); | 23 ]).create(); |
24 | 24 |
25 d.dir("bar", [ | 25 d.dir("bar", [ |
26 d.libDir("bar"), | 26 d.libDir("bar"), |
27 d.libPubspec("bar", "0.0.1", deps: [ | 27 d.libPubspec("bar", "0.0.1", deps: { |
28 {"path": "../shared"} | 28 "shared": {"path": "../shared"} |
29 ]) | 29 }) |
30 ]).create(); | 30 ]).create(); |
31 | 31 |
32 d.dir(appPath, [ | 32 d.dir(appPath, [ |
33 d.pubspec({ | 33 d.pubspec({ |
34 "name": "myapp", | 34 "name": "myapp", |
35 "dependencies": { | 35 "dependencies": { |
36 "foo": {"path": "../foo"}, | 36 "foo": {"path": "../foo"}, |
37 "bar": {"path": "../bar"} | 37 "bar": {"path": "../bar"} |
38 } | 38 } |
39 }) | 39 }) |
40 ]).create(); | 40 ]).create(); |
41 | 41 |
42 pubInstall(); | 42 pubInstall(); |
43 | 43 |
44 d.dir(packagesPath, [ | 44 d.dir(packagesPath, [ |
45 d.dir("foo", [d.file("foo.dart", 'main() => "foo";')]), | 45 d.dir("foo", [d.file("foo.dart", 'main() => "foo";')]), |
46 d.dir("bar", [d.file("bar.dart", 'main() => "bar";')]), | 46 d.dir("bar", [d.file("bar.dart", 'main() => "bar";')]), |
47 d.dir("shared", [d.file("shared.dart", 'main() => "shared";')]) | 47 d.dir("shared", [d.file("shared.dart", 'main() => "shared";')]) |
48 ]).validate(); | 48 ]).validate(); |
49 }); | 49 }); |
50 | 50 |
51 integration("shared dependency with paths that normalize the same", () { | 51 integration("shared dependency with paths that normalize the same", () { |
52 d.dir("shared", [ | 52 d.dir("shared", [ |
53 d.libDir("shared"), | 53 d.libDir("shared"), |
54 d.libPubspec("shared", "0.0.1") | 54 d.libPubspec("shared", "0.0.1") |
55 ]).create(); | 55 ]).create(); |
56 | 56 |
57 d.dir("foo", [ | 57 d.dir("foo", [ |
58 d.libDir("foo"), | 58 d.libDir("foo"), |
59 d.libPubspec("foo", "0.0.1", deps: [ | 59 d.libPubspec("foo", "0.0.1", deps: { |
60 {"path": "../shared"} | 60 "shared": {"path": "../shared"} |
61 ]) | 61 }) |
62 ]).create(); | 62 ]).create(); |
63 | 63 |
64 d.dir("bar", [ | 64 d.dir("bar", [ |
65 d.libDir("bar"), | 65 d.libDir("bar"), |
66 d.libPubspec("bar", "0.0.1", deps: [ | 66 d.libPubspec("bar", "0.0.1", deps: { |
67 {"path": "../././shared"} | 67 "shared": {"path": "../././shared"} |
68 ]) | 68 }) |
69 ]).create(); | 69 ]).create(); |
70 | 70 |
71 d.dir(appPath, [ | 71 d.dir(appPath, [ |
72 d.pubspec({ | 72 d.pubspec({ |
73 "name": "myapp", | 73 "name": "myapp", |
74 "dependencies": { | 74 "dependencies": { |
75 "foo": {"path": "../foo"}, | 75 "foo": {"path": "../foo"}, |
76 "bar": {"path": "../bar"} | 76 "bar": {"path": "../bar"} |
77 } | 77 } |
78 }) | 78 }) |
79 ]).create(); | 79 ]).create(); |
80 | 80 |
81 pubInstall(); | 81 pubInstall(); |
82 | 82 |
83 d.dir(packagesPath, [ | 83 d.dir(packagesPath, [ |
84 d.dir("foo", [d.file("foo.dart", 'main() => "foo";')]), | 84 d.dir("foo", [d.file("foo.dart", 'main() => "foo";')]), |
85 d.dir("bar", [d.file("bar.dart", 'main() => "bar";')]), | 85 d.dir("bar", [d.file("bar.dart", 'main() => "bar";')]), |
86 d.dir("shared", [d.file("shared.dart", 'main() => "shared";')]) | 86 d.dir("shared", [d.file("shared.dart", 'main() => "shared";')]) |
87 ]).validate(); | 87 ]).validate(); |
88 }); | 88 }); |
89 | 89 |
90 integration("shared dependency with absolute and relative path", () { | 90 integration("shared dependency with absolute and relative path", () { |
91 d.dir("shared", [ | 91 d.dir("shared", [ |
92 d.libDir("shared"), | 92 d.libDir("shared"), |
93 d.libPubspec("shared", "0.0.1") | 93 d.libPubspec("shared", "0.0.1") |
94 ]).create(); | 94 ]).create(); |
95 | 95 |
96 d.dir("foo", [ | 96 d.dir("foo", [ |
97 d.libDir("foo"), | 97 d.libDir("foo"), |
98 d.libPubspec("foo", "0.0.1", deps: [ | 98 d.libPubspec("foo", "0.0.1", deps: { |
99 {"path": "../shared"} | 99 "shared": {"path": "../shared"} |
100 ]) | 100 }) |
101 ]).create(); | 101 ]).create(); |
102 | 102 |
103 d.dir("bar", [ | 103 d.dir("bar", [ |
104 d.libDir("bar"), | 104 d.libDir("bar"), |
105 d.libPubspec("bar", "0.0.1", deps: [ | 105 d.libPubspec("bar", "0.0.1", deps: { |
106 {"path": path.join(sandboxDir, "shared")} | 106 "shared": {"path": path.join(sandboxDir, "shared")} |
107 ]) | 107 }) |
108 ]).create(); | 108 ]).create(); |
109 | 109 |
110 d.dir(appPath, [ | 110 d.dir(appPath, [ |
111 d.pubspec({ | 111 d.pubspec({ |
112 "name": "myapp", | 112 "name": "myapp", |
113 "dependencies": { | 113 "dependencies": { |
114 "foo": {"path": "../foo"}, | 114 "foo": {"path": "../foo"}, |
115 "bar": {"path": "../bar"} | 115 "bar": {"path": "../bar"} |
116 } | 116 } |
117 }) | 117 }) |
118 ]).create(); | 118 ]).create(); |
119 | 119 |
120 pubInstall(); | 120 pubInstall(); |
121 | 121 |
122 d.dir(packagesPath, [ | 122 d.dir(packagesPath, [ |
123 d.dir("foo", [d.file("foo.dart", 'main() => "foo";')]), | 123 d.dir("foo", [d.file("foo.dart", 'main() => "foo";')]), |
124 d.dir("bar", [d.file("bar.dart", 'main() => "bar";')]), | 124 d.dir("bar", [d.file("bar.dart", 'main() => "bar";')]), |
125 d.dir("shared", [d.file("shared.dart", 'main() => "shared";')]) | 125 d.dir("shared", [d.file("shared.dart", 'main() => "shared";')]) |
126 ]).validate(); | 126 ]).validate(); |
127 }); | 127 }); |
128 } | 128 } |
OLD | NEW |