OLD | NEW |
1 // Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2014, 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 'package:path/path.dart' as p; | 5 import 'package:path/path.dart' as p; |
6 | 6 |
7 import '../../lib/src/io.dart'; | 7 import '../../lib/src/io.dart'; |
8 import '../descriptor.dart' as d; | 8 import '../descriptor.dart' as d; |
9 import '../test_pub.dart'; | 9 import '../test_pub.dart'; |
10 | 10 |
11 main() { | 11 main() { |
12 initConfig(); | 12 initConfig(); |
13 | 13 |
14 integration('lists an activated hosted package', () { | 14 integration('lists an activated hosted package', () { |
15 servePackages((builder) { | 15 servePackages((builder) { |
16 builder.serve('foo', '1.0.0'); | 16 builder.serve('foo', '1.0.0'); |
17 }); | 17 }); |
18 | 18 |
19 schedulePub(args: ['global', 'activate', 'foo']); | 19 schedulePub(args: ['global', 'activate', 'foo']); |
20 | 20 |
21 schedulePub(args: ['global', 'list'], output: 'foo 1.0.0'); | 21 schedulePub(args: ['global', 'list'], output: 'foo 1.0.0'); |
22 }); | 22 }); |
23 | 23 |
24 integration('lists an activated Git package', () { | 24 integration('lists an activated Git package', () { |
25 ensureGit(); | 25 ensureGit(); |
26 | 26 |
27 d.git('foo.git', [ | 27 d.git( |
28 d.libPubspec('foo', '1.0.0'), | 28 'foo.git', |
29 d.dir('bin', [ | 29 [ |
30 d.file('foo.dart', 'main() => print("ok");') | 30 d.libPubspec('foo', '1.0.0'), |
31 ]) | 31 d.dir('bin', [d.file('foo.dart', 'main() => print("ok");')])]).creat
e(); |
32 ]).create(); | |
33 | 32 |
34 schedulePub(args: ['global', 'activate', '-sgit', '../foo.git']); | 33 schedulePub(args: ['global', 'activate', '-sgit', '../foo.git']); |
35 | 34 |
36 schedulePub(args: ['global', 'list'], | 35 schedulePub( |
| 36 args: ['global', 'list'], |
37 output: 'foo 1.0.0 from Git repository "../foo.git"'); | 37 output: 'foo 1.0.0 from Git repository "../foo.git"'); |
38 }); | 38 }); |
39 | 39 |
40 integration('lists an activated Path package', () { | 40 integration('lists an activated Path package', () { |
41 d.dir('foo', [ | 41 d.dir( |
42 d.libPubspec('foo', '1.0.0'), | 42 'foo', |
43 d.dir('bin', [ | 43 [ |
44 d.file('foo.dart', 'main() => print("ok");') | 44 d.libPubspec('foo', '1.0.0'), |
45 ]) | 45 d.dir('bin', [d.file('foo.dart', 'main() => print("ok");')])]).creat
e(); |
46 ]).create(); | |
47 | 46 |
48 schedulePub(args: ['global', 'activate', '-spath', '../foo']); | 47 schedulePub(args: ['global', 'activate', '-spath', '../foo']); |
49 | 48 |
50 var path = canonicalize(p.join(sandboxDir, 'foo')); | 49 var path = canonicalize(p.join(sandboxDir, 'foo')); |
51 schedulePub(args: ['global', 'list'], | 50 schedulePub(args: ['global', 'list'], output: 'foo 1.0.0 at path "$path"'); |
52 output: 'foo 1.0.0 at path "$path"'); | |
53 }); | 51 }); |
54 | 52 |
55 integration('lists activated packages in alphabetical order', () { | 53 integration('lists activated packages in alphabetical order', () { |
56 servePackages((builder) { | 54 servePackages((builder) { |
57 builder.serve('aaa', '1.0.0'); | 55 builder.serve('aaa', '1.0.0'); |
58 builder.serve('bbb', '1.0.0'); | 56 builder.serve('bbb', '1.0.0'); |
59 builder.serve('ccc', '1.0.0'); | 57 builder.serve('ccc', '1.0.0'); |
60 }); | 58 }); |
61 | 59 |
62 schedulePub(args: ['global', 'activate', 'ccc']); | 60 schedulePub(args: ['global', 'activate', 'ccc']); |
63 schedulePub(args: ['global', 'activate', 'aaa']); | 61 schedulePub(args: ['global', 'activate', 'aaa']); |
64 schedulePub(args: ['global', 'activate', 'bbb']); | 62 schedulePub(args: ['global', 'activate', 'bbb']); |
65 | 63 |
66 schedulePub(args: ['global', 'list'], output: ''' | 64 schedulePub(args: ['global', 'list'], output: ''' |
67 aaa 1.0.0 | 65 aaa 1.0.0 |
68 bbb 1.0.0 | 66 bbb 1.0.0 |
69 ccc 1.0.0 | 67 ccc 1.0.0 |
70 '''); | 68 '''); |
71 }); | 69 }); |
72 | 70 |
73 integration('lists nothing when no packages activated', () { | 71 integration('lists nothing when no packages activated', () { |
74 schedulePub(args: ['global', 'list'], output: '\n'); | 72 schedulePub(args: ['global', 'list'], output: '\n'); |
75 }); | 73 }); |
76 } | 74 } |
OLD | NEW |