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 library pub_tests; | 5 library pub_tests; |
6 | 6 |
7 import 'package:path/path.dart' as p; | 7 import 'package:path/path.dart' as p; |
8 import 'package:scheduled_test/scheduled_test.dart'; | 8 import 'package:scheduled_test/scheduled_test.dart'; |
9 | 9 |
10 import '../../../lib/src/io.dart'; | 10 import '../../../lib/src/io.dart'; |
11 import '../../descriptor.dart' as d; | 11 import '../../descriptor.dart' as d; |
12 import '../../test_pub.dart'; | 12 import '../../test_pub.dart'; |
13 | 13 |
14 main() { | 14 main() { |
15 initConfig(); | 15 initConfig(); |
16 integration("doesn't re-fetch a repository if nothing changes", () { | 16 integration("doesn't re-fetch a repository if nothing changes", () { |
17 ensureGit(); | 17 ensureGit(); |
18 | 18 |
19 var repo = d.git('foo.git', [ | 19 var repo = |
20 d.libDir('foo'), | 20 d.git('foo.git', [d.libDir('foo'), d.libPubspec('foo', '1.0.0')]); |
21 d.libPubspec('foo', '1.0.0') | |
22 ]); | |
23 repo.create(); | 21 repo.create(); |
24 | 22 |
25 d.appDir({ | 23 d.appDir({ |
26 "foo": {"git": {"url": "../foo.git"}} | 24 "foo": { |
| 25 "git": { |
| 26 "url": "../foo.git" |
| 27 } |
| 28 } |
27 }).create(); | 29 }).create(); |
28 | 30 |
29 pubGet(); | 31 pubGet(); |
30 | 32 |
31 d.dir(packagesPath, [ | 33 d.dir( |
32 d.dir('foo', [ | 34 packagesPath, |
33 d.file('foo.dart', 'main() => "foo";') | 35 [d.dir('foo', [d.file('foo.dart', 'main() => "foo";')])]).validate(); |
34 ]) | |
35 ]).validate(); | |
36 | 36 |
37 // Delete the repo. This will cause "pub get" to fail if it tries to | 37 // Delete the repo. This will cause "pub get" to fail if it tries to |
38 // re-fetch. | 38 // re-fetch. |
39 schedule(() => deleteEntry(p.join(sandboxDir, 'foo.git'))); | 39 schedule(() => deleteEntry(p.join(sandboxDir, 'foo.git'))); |
40 | 40 |
41 pubGet(); | 41 pubGet(); |
42 | 42 |
43 d.dir(packagesPath, [ | 43 d.dir( |
44 d.dir('foo', [ | 44 packagesPath, |
45 d.file('foo.dart', 'main() => "foo";') | 45 [d.dir('foo', [d.file('foo.dart', 'main() => "foo";')])]).validate(); |
46 ]) | |
47 ]).validate(); | |
48 }); | 46 }); |
49 } | 47 } |
OLD | NEW |