Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(552)

Side by Side Diff: sdk/lib/_internal/pub_generated/test/get/git/check_out_unfetched_revision_of_cached_repo_test.dart

Issue 937243002: Revert "Revert "Use native async/await support in pub."" (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 5 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
(Empty)
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
3 // BSD-style license that can be found in the LICENSE file.
4
5 library pub_tests;
6
7 import 'package:path/path.dart' as p;
8 import 'package:scheduled_test/scheduled_test.dart';
9
10 import '../../../lib/src/io.dart';
11 import '../../descriptor.dart' as d;
12 import '../../test_pub.dart';
13
14 main() {
15 initConfig();
16 // Regression test for issue 20947.
17 integration(
18 'checks out an unfetched and locked revision of a cached ' 'repository',
19 () {
20 ensureGit();
21
22 // In order to get a lockfile that refers to a newer revision than is in the
23 // cache, we'll switch between two caches. First we ensure that the repo is
24 // in the first cache.
25 d.git('foo.git', [d.libDir('foo'), d.libPubspec('foo', '1.0.0')]).create();
26
27 d.appDir({
28 "foo": {
29 "git": "../foo.git"
30 }
31 }).create();
32
33 pubGet();
34
35 // Switch to a new cache.
36 schedule(
37 () =>
38 renameDir(p.join(sandboxDir, cachePath), p.join(sandboxDir, "$cacheP ath.old")));
39
40 // Make the lockfile point to a new revision of the git repository.
41 d.git(
42 'foo.git',
43 [d.libDir('foo', 'foo 2'), d.libPubspec('foo', '1.0.0')]).commit();
44
45 pubUpgrade(output: contains("Changed 1 dependency!"));
46
47 // Switch back to the old cache.
48 schedule(() {
49 var cacheDir = p.join(sandboxDir, cachePath);
50 deleteEntry(cacheDir);
51 renameDir(p.join(sandboxDir, "$cachePath.old"), cacheDir);
52 });
53
54 // Get the updated version of the git dependency based on the lockfile.
55 pubGet();
56
57 d.dir(
58 cachePath,
59 [
60 d.dir(
61 'git',
62 [
63 d.dir('cache', [d.gitPackageRepoCacheDir('foo')]),
64 d.gitPackageRevisionCacheDir('foo'),
65 d.gitPackageRevisionCacheDir('foo', 2)])]).validate();
66
67 d.dir(
68 packagesPath,
69 [d.dir('foo', [d.file('foo.dart', 'main() => "foo 2";')])]).validate();
70 });
71 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698