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

Side by Side Diff: test/implicit_barback_dependency_test.dart

Issue 2184303002: Make pub strong-mode clean. (Closed) Base URL: git@github.com:dart-lang/pub.git@master
Patch Set: Code review changes Created 4 years, 4 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
« no previous file with comments | « test/descriptor/tar.dart ('k') | test/implicit_dependency_test.dart » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2013, 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 import 'package:pub/src/barback.dart' as barback; 5 import 'package:pub/src/barback.dart' as barback;
6 import 'package:pub_semver/pub_semver.dart'; 6 import 'package:pub_semver/pub_semver.dart';
7 7
8 import 'descriptor.dart' as d; 8 import 'descriptor.dart' as d;
9 import 'test_pub.dart'; 9 import 'test_pub.dart';
10 10
11 main() { 11 main() {
12 var constraint = barback.pubConstraints["barback"]; 12 var constraint = barback.pubConstraints["barback"];
13 var current = constraint.min.toString(); 13 var current = constraint.min.toString();
14 var previous = new Version(constraint.min.major, constraint.min.minor - 1, 0) 14 var previous = new Version(constraint.min.major, constraint.min.minor - 1, 0)
15 .toString(); 15 .toString();
16 var nextPatch = constraint.min.nextPatch.toString(); 16 var nextPatch = constraint.min.nextPatch.toString();
17 var max = constraint.max.toString(); 17 var max = constraint.max.toString();
18 18
19 var sourceSpanVersion = barback.pubConstraints["source_span"].min.toString(); 19 var sourceSpanVersion = barback.pubConstraints["source_span"].min.toString();
20 var stackTraceVersion = barback.pubConstraints["stack_trace"].min.toString(); 20 var stackTraceVersion = barback.pubConstraints["stack_trace"].min.toString();
21 var asyncVersion = barback.pubConstraints["async"].min.toString();
21 22
22 forBothPubGetAndUpgrade((command) { 23 forBothPubGetAndUpgrade((command) {
23 integration("implicitly constrains barback to versions pub supports", () { 24 integration("implicitly constrains barback to versions pub supports", () {
24 servePackages((builder) { 25 servePackages((builder) {
25 builder.serve("barback", previous); 26 builder.serve("barback", previous);
26 builder.serve("barback", current); 27 builder.serve("barback", current);
27 builder.serve("barback", nextPatch); 28 builder.serve("barback", nextPatch);
28 builder.serve("barback", max); 29 builder.serve("barback", max);
29 builder.serve("source_span", sourceSpanVersion); 30 builder.serve("source_span", sourceSpanVersion);
30 builder.serve("stack_trace", stackTraceVersion); 31 builder.serve("stack_trace", stackTraceVersion);
32 builder.serve("async", asyncVersion);
31 }); 33 });
32 34
33 d.appDir({ 35 d.appDir({
34 "barback": "any" 36 "barback": "any"
35 }).create(); 37 }).create();
36 38
37 pubCommand(command); 39 pubCommand(command);
38 40
39 d.packagesDir({ 41 d.packagesDir({
40 "barback": nextPatch 42 "barback": nextPatch
41 }).validate(); 43 }).validate();
42 }); 44 });
43 45
44 integration("discovers transitive dependency on barback", () { 46 integration("discovers transitive dependency on barback", () {
45 servePackages((builder) { 47 servePackages((builder) {
46 builder.serve("barback", previous); 48 builder.serve("barback", previous);
47 builder.serve("barback", current); 49 builder.serve("barback", current);
48 builder.serve("barback", nextPatch); 50 builder.serve("barback", nextPatch);
49 builder.serve("barback", max); 51 builder.serve("barback", max);
50 builder.serve("source_span", sourceSpanVersion); 52 builder.serve("source_span", sourceSpanVersion);
51 builder.serve("stack_trace", stackTraceVersion); 53 builder.serve("stack_trace", stackTraceVersion);
54 builder.serve("async", asyncVersion);
52 }); 55 });
53 56
54 d.dir("foo", [ 57 d.dir("foo", [
55 d.libDir("foo", "foo 0.0.1"), 58 d.libDir("foo", "foo 0.0.1"),
56 d.libPubspec("foo", "0.0.1", deps: { 59 d.libPubspec("foo", "0.0.1", deps: {
57 "barback": "any" 60 "barback": "any"
58 }) 61 })
59 ]).create(); 62 ]).create();
60 63
61 d.appDir({ 64 d.appDir({
62 "foo": {"path": "../foo"} 65 "foo": {"path": "../foo"}
63 }).create(); 66 }).create();
64 67
65 pubCommand(command); 68 pubCommand(command);
66 69
67 d.packagesDir({ 70 d.packagesDir({
68 "barback": nextPatch, 71 "barback": nextPatch,
69 "foo": "0.0.1" 72 "foo": "0.0.1"
70 }).validate(); 73 }).validate();
71 }); 74 });
72 75
73 integration("pub's implicit constraint uses the same source and " 76 integration("pub's implicit constraint uses the same source and "
74 "description as a dependency override", () { 77 "description as a dependency override", () {
75 servePackages((builder) { 78 servePackages((builder) {
76 builder.serve("source_span", sourceSpanVersion); 79 builder.serve("source_span", sourceSpanVersion);
77 builder.serve("stack_trace", stackTraceVersion); 80 builder.serve("stack_trace", stackTraceVersion);
81 builder.serve("async", asyncVersion);
78 }); 82 });
79 83
80 d.dir('barback', [ 84 d.dir('barback', [
81 d.libDir('barback', 'barback $current'), 85 d.libDir('barback', 'barback $current'),
82 d.libPubspec('barback', current), 86 d.libPubspec('barback', current),
83 ]).create(); 87 ]).create();
84 88
85 d.dir(appPath, [ 89 d.dir(appPath, [
86 d.pubspec({ 90 d.pubspec({
87 "name": "myapp", 91 "name": "myapp",
(...skipping 10 matching lines...) Expand all
98 }).validate(); 102 }).validate();
99 }); 103 });
100 }); 104 });
101 105
102 integration("unlock if the locked version doesn't meet pub's constraint", () { 106 integration("unlock if the locked version doesn't meet pub's constraint", () {
103 servePackages((builder) { 107 servePackages((builder) {
104 builder.serve("barback", previous); 108 builder.serve("barback", previous);
105 builder.serve("barback", current); 109 builder.serve("barback", current);
106 builder.serve("source_span", sourceSpanVersion); 110 builder.serve("source_span", sourceSpanVersion);
107 builder.serve("stack_trace", stackTraceVersion); 111 builder.serve("stack_trace", stackTraceVersion);
112 builder.serve("async", asyncVersion);
108 }); 113 });
109 114
110 d.appDir({"barback": "any"}).create(); 115 d.appDir({"barback": "any"}).create();
111 116
112 // Hand-create a lockfile to pin barback to an older version. 117 // Hand-create a lockfile to pin barback to an older version.
113 createLockFile("myapp", hosted: { 118 createLockFile("myapp", hosted: {
114 "barback": previous 119 "barback": previous
115 }); 120 });
116 121
117 pubGet(); 122 pubGet();
118 123
119 // It should be upgraded. 124 // It should be upgraded.
120 d.packagesDir({ 125 d.packagesDir({
121 "barback": current 126 "barback": current
122 }).validate(); 127 }).validate();
123 }); 128 });
124 129
125 integration("includes pub in the error if a solve failed because there " 130 integration("includes pub in the error if a solve failed because there "
126 "is no version available", () { 131 "is no version available", () {
127 servePackages((builder) { 132 servePackages((builder) {
128 builder.serve("barback", previous); 133 builder.serve("barback", previous);
129 builder.serve("source_span", sourceSpanVersion); 134 builder.serve("source_span", sourceSpanVersion);
130 builder.serve("stack_trace", stackTraceVersion); 135 builder.serve("stack_trace", stackTraceVersion);
136 builder.serve("async", asyncVersion);
131 }); 137 });
132 138
133 d.appDir({"barback": "any"}).create(); 139 d.appDir({"barback": "any"}).create();
134 140
135 pubGet(error: """ 141 pubGet(error: """
136 Package barback has no versions that match >=$current <$max derived from: 142 Package barback has no versions that match >=$current <$max derived from:
137 - myapp depends on version any 143 - myapp depends on version any
138 - pub itself depends on version >=$current <$max"""); 144 - pub itself depends on version >=$current <$max""");
139 }); 145 });
140 146
141 integration("includes pub in the error if a solve failed because there " 147 integration("includes pub in the error if a solve failed because there "
142 "is a disjoint constraint", () { 148 "is a disjoint constraint", () {
143 servePackages((builder) { 149 servePackages((builder) {
144 builder.serve("barback", previous); 150 builder.serve("barback", previous);
145 builder.serve("barback", current); 151 builder.serve("barback", current);
146 builder.serve("source_span", sourceSpanVersion); 152 builder.serve("source_span", sourceSpanVersion);
147 builder.serve("stack_trace", stackTraceVersion); 153 builder.serve("stack_trace", stackTraceVersion);
154 builder.serve("async", asyncVersion);
148 }); 155 });
149 156
150 d.appDir({"barback": previous}).create(); 157 d.appDir({"barback": previous}).create();
151 158
152 pubGet(error: """ 159 pubGet(error: """
153 Incompatible version constraints on barback: 160 Incompatible version constraints on barback:
154 - myapp depends on version $previous 161 - myapp depends on version $previous
155 - pub itself depends on version >=$current <$max"""); 162 - pub itself depends on version >=$current <$max""");
156 }); 163 });
157 } 164 }
OLDNEW
« no previous file with comments | « test/descriptor/tar.dart ('k') | test/implicit_dependency_test.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698