| Index: sdk/lib/_internal/pub_generated/test/get/hosted/avoid_network_requests_test.dart
|
| diff --git a/sdk/lib/_internal/pub_generated/test/get/hosted/avoid_network_requests_test.dart b/sdk/lib/_internal/pub_generated/test/get/hosted/avoid_network_requests_test.dart
|
| index 000c11c5fdac19d19ae6a1293e57e7a6a733858c..3421e8fc55774304e0cbfcf9762da61ffa3ee386 100644
|
| --- a/sdk/lib/_internal/pub_generated/test/get/hosted/avoid_network_requests_test.dart
|
| +++ b/sdk/lib/_internal/pub_generated/test/get/hosted/avoid_network_requests_test.dart
|
| @@ -1,9 +1,17 @@
|
| +// 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 'package:scheduled_test/scheduled_test.dart';
|
| +
|
| import '../../descriptor.dart' as d;
|
| import '../../test_pub.dart';
|
| +
|
| main() {
|
| initConfig();
|
| +
|
| integration('only requests versions that are needed during solving', () {
|
| servePackages((builder) {
|
| builder.serve("foo", "1.0.0");
|
| @@ -13,28 +21,41 @@ main() {
|
| builder.serve("bar", "1.1.0");
|
| builder.serve("bar", "1.2.0");
|
| });
|
| +
|
| d.appDir({
|
| "foo": "any"
|
| }).create();
|
| +
|
| + // Get once so it gets cached.
|
| pubGet();
|
| +
|
| + // Clear the cache. We don't care about anything that was served during
|
| + // the initial get.
|
| getRequestedPaths();
|
| +
|
| + // Add "bar" to the dependencies.
|
| d.appDir({
|
| "foo": "any",
|
| "bar": "any"
|
| }).create();
|
| +
|
| + // Run the solver again.
|
| pubGet();
|
| +
|
| d.packagesDir({
|
| "foo": "1.2.0",
|
| "bar": "1.2.0"
|
| }).validate();
|
| +
|
| + // The get should not have done any network requests since the lock file is
|
| + // up to date.
|
| getRequestedPaths().then((paths) {
|
| expect(
|
| paths,
|
| - unorderedEquals(
|
| - [
|
| - "api/packages/bar",
|
| - "api/packages/bar/versions/1.2.0",
|
| - "packages/bar/versions/1.2.0.tar.gz"]));
|
| + unorderedEquals([// Bar should be requested because it's new, but not foo.
|
| + "api/packages/bar", // Should only request the most recent version.
|
| + "api/packages/bar/versions/1.2.0", // Need to download it.
|
| + "packages/bar/versions/1.2.0.tar.gz"]));
|
| });
|
| });
|
| }
|
|
|