Index: utils/tests/pub/update/git/update_one_locked_test.dart |
diff --git a/utils/tests/pub/update/git/update_one_locked_test.dart b/utils/tests/pub/update/git/update_one_locked_test.dart |
new file mode 100644 |
index 0000000000000000000000000000000000000000..66fcf1d0ecfb2bd6784618affb2e56ff943d2a33 |
--- /dev/null |
+++ b/utils/tests/pub/update/git/update_one_locked_test.dart |
@@ -0,0 +1,64 @@ |
+// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file |
+// for details. All rights reserved. Use of this source code is governed by a |
+// BSD-style license that can be found in the LICENSE file. |
+ |
+#library('pub_tests'); |
+ |
+#import('dart:io'); |
+ |
+#import('../../test_pub.dart'); |
+#import('../../../../../pkg/unittest/unittest.dart'); |
+ |
+main() { |
+ test("updates one locked Git package but no others", () { |
+ ensureGit(); |
+ |
+ git('foo.git', [ |
+ libDir('foo'), |
+ libPubspec('foo', '1.0.0') |
+ ]).scheduleCreate(); |
+ |
+ git('bar.git', [ |
+ libDir('bar'), |
+ libPubspec('bar', '1.0.0') |
+ ]).scheduleCreate(); |
+ |
+ appDir([{"git": "../foo.git"}, {"git": "../bar.git"}]).scheduleCreate(); |
+ |
+ schedulePub(args: ['install'], |
+ output: const RegExp(r"Dependencies installed!$")); |
+ |
+ dir(packagesPath, [ |
+ dir('foo', [ |
+ file('foo.dart', 'main() => "foo";') |
+ ]), |
+ dir('bar', [ |
+ file('bar.dart', 'main() => "bar";') |
+ ]) |
+ ]).scheduleValidate(); |
+ |
+ git('foo.git', [ |
+ libDir('foo', 'foo 2'), |
+ libPubspec('foo', '1.0.0') |
+ ]).scheduleCommit(); |
+ |
+ git('bar.git', [ |
+ libDir('bar', 'bar 2'), |
+ libPubspec('bar', '1.0.0') |
+ ]).scheduleCommit(); |
+ |
+ schedulePub(args: ['update', 'foo'], |
+ output: const RegExp(r"Dependencies updated!$")); |
+ |
+ dir(packagesPath, [ |
+ dir('foo', [ |
+ file('foo.dart', 'main() => "foo 2";') |
+ ]), |
+ dir('bar', [ |
+ file('bar.dart', 'main() => "bar";') |
+ ]) |
+ ]).scheduleValidate(); |
+ |
+ run(); |
+ }); |
+} |