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