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

Side by Side Diff: packages/barback/test/package_graph/source_test.dart

Issue 3014633002: Roll to pickup pool changes (Closed)
Patch Set: Created 3 years, 2 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
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 library barback.test.package_graph.source_test; 5 library barback.test.package_graph.source_test;
6 6
7 import 'package:scheduled_test/scheduled_test.dart'; 7 import 'package:scheduled_test/scheduled_test.dart';
8 8
9 import '../utils.dart'; 9 import '../utils.dart';
10 10
(...skipping 23 matching lines...) Expand all
34 // Sources must be explicitly made visible to barback by calling 34 // Sources must be explicitly made visible to barback by calling
35 // updateSources() on them. It isn't enough for the provider to be able 35 // updateSources() on them. It isn't enough for the provider to be able
36 // to provide it. 36 // to provide it.
37 // 37 //
38 // This lets you distinguish between sources that you want to be primaries 38 // This lets you distinguish between sources that you want to be primaries
39 // and the larger set of inputs that those primaries are allowed to pull in. 39 // and the larger set of inputs that those primaries are allowed to pull in.
40 expectNoAsset("app|foo.txt"); 40 expectNoAsset("app|foo.txt");
41 }); 41 });
42 42
43 test("gets a source asset if not transformed", () { 43 test("gets a source asset if not transformed", () {
44 initGraph(["app|foo.txt"], {"app": [ 44 initGraph([
45 [new RewriteTransformer("nottxt", "whatever")] 45 "app|foo.txt"
46 ]}); 46 ], {
47 "app": [
48 [new RewriteTransformer("nottxt", "whatever")]
49 ]
50 });
47 51
48 updateSources(["app|foo.txt"]); 52 updateSources(["app|foo.txt"]);
49 expectAsset("app|foo.txt"); 53 expectAsset("app|foo.txt");
50 buildShouldSucceed(); 54 buildShouldSucceed();
51 }); 55 });
52 56
53 test("doesn't get a removed source", () { 57 test("doesn't get a removed source", () {
54 initGraph(["app|foo.txt"]); 58 initGraph(["app|foo.txt"]);
55 59
56 updateSources(["app|foo.txt"]); 60 updateSources(["app|foo.txt"]);
57 expectAsset("app|foo.txt"); 61 expectAsset("app|foo.txt");
58 buildShouldSucceed(); 62 buildShouldSucceed();
59 63
60 removeSources(["app|foo.txt"]); 64 removeSources(["app|foo.txt"]);
61 expectNoAsset("app|foo.txt"); 65 expectNoAsset("app|foo.txt");
62 buildShouldSucceed(); 66 buildShouldSucceed();
63 }); 67 });
64 68
65 test("collapses redundant updates", () { 69 test("collapses redundant updates", () {
66 var transformer = new RewriteTransformer("blub", "blab"); 70 var transformer = new RewriteTransformer("blub", "blab");
67 initGraph(["app|foo.blub"], {"app": [[transformer]]}); 71 initGraph([
72 "app|foo.blub"
73 ], {
74 "app": [
75 [transformer]
76 ]
77 });
68 78
69 schedule(() { 79 schedule(() {
70 // Make a bunch of synchronous update calls. 80 // Make a bunch of synchronous update calls.
71 updateSourcesSync(["app|foo.blub"]); 81 updateSourcesSync(["app|foo.blub"]);
72 updateSourcesSync(["app|foo.blub"]); 82 updateSourcesSync(["app|foo.blub"]);
73 updateSourcesSync(["app|foo.blub"]); 83 updateSourcesSync(["app|foo.blub"]);
74 updateSourcesSync(["app|foo.blub"]); 84 updateSourcesSync(["app|foo.blub"]);
75 }); 85 });
76 86
77 expectAsset("app|foo.blab", "foo.blab"); 87 expectAsset("app|foo.blab", "foo.blab");
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after
115 modifyAsset("app|foo.txt", "bar"); 125 modifyAsset("app|foo.txt", "bar");
116 updateSources(["app|foo.txt"]); 126 updateSources(["app|foo.txt"]);
117 127
118 resumeProvider(); 128 resumeProvider();
119 expectAsset("app|foo.txt", "bar"); 129 expectAsset("app|foo.txt", "bar");
120 buildShouldSucceed(); 130 buildShouldSucceed();
121 }); 131 });
122 132
123 test("restarts a build if a source is updated while sources are loading", () { 133 test("restarts a build if a source is updated while sources are loading", () {
124 var transformer = new RewriteTransformer("txt", "out"); 134 var transformer = new RewriteTransformer("txt", "out");
125 initGraph(["app|foo.txt", "app|other.bar"], {"app": [[transformer]]}); 135 initGraph([
136 "app|foo.txt",
137 "app|other.bar"
138 ], {
139 "app": [
140 [transformer]
141 ]
142 });
126 143
127 // Run the whole graph so all nodes are clean. 144 // Run the whole graph so all nodes are clean.
128 updateSources(["app|foo.txt", "app|other.bar"]); 145 updateSources(["app|foo.txt", "app|other.bar"]);
129 expectAsset("app|foo.out", "foo.out"); 146 expectAsset("app|foo.out", "foo.out");
130 expectAsset("app|other.bar"); 147 expectAsset("app|other.bar");
131 148
132 buildShouldSucceed(); 149 buildShouldSucceed();
133 150
134 // Make the provider slow to load a source. 151 // Make the provider slow to load a source.
135 pauseProvider(); 152 pauseProvider();
136 153
137 // Update an asset that doesn't trigger any transformers. 154 // Update an asset that doesn't trigger any transformers.
138 updateSources(["app|other.bar"]); 155 updateSources(["app|other.bar"]);
139 156
140 // Now update an asset that does trigger a transformer. 157 // Now update an asset that does trigger a transformer.
141 updateSources(["app|foo.txt"]); 158 updateSources(["app|foo.txt"]);
142 159
143 resumeProvider(); 160 resumeProvider();
144 161
145 buildShouldSucceed(); 162 buildShouldSucceed();
146 163
147 expect(transformer.numRuns, completion(equals(2))); 164 expect(transformer.numRuns, completion(equals(2)));
148 }); 165 });
149 } 166 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698