OLD | NEW |
---|---|
1 // Copyright (c) 2016, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2016, 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 @TestOn("vm") | 5 @TestOn("vm") |
6 | 6 |
7 import 'package:boolean_selector/boolean_selector.dart'; | 7 import 'package:boolean_selector/boolean_selector.dart'; |
8 import 'package:path/path.dart' as p; | 8 import 'package:path/path.dart' as p; |
9 import 'package:test/test.dart'; | 9 import 'package:test/test.dart'; |
10 | 10 |
(...skipping 165 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
176 var older = new Configuration( | 176 var older = new Configuration( |
177 testOn: new PlatformSelector.parse("vm")); | 177 testOn: new PlatformSelector.parse("vm")); |
178 var newer = new Configuration( | 178 var newer = new Configuration( |
179 testOn: new PlatformSelector.parse("linux")); | 179 testOn: new PlatformSelector.parse("linux")); |
180 var merged = older.merge(newer); | 180 var merged = older.merge(newer); |
181 expect(merged.testOn, | 181 expect(merged.testOn, |
182 equals(new PlatformSelector.parse("vm && linux"))); | 182 equals(new PlatformSelector.parse("vm && linux"))); |
183 }); | 183 }); |
184 }); | 184 }); |
185 | 185 |
186 group("for tags", () { | 186 group("for include and excludeTags", () { |
187 test("if neither is defined, preserves the default", () { | 187 test("if neither is defined, preserves the default", () { |
188 var merged = new Configuration().merge(new Configuration()); | 188 var merged = new Configuration().merge(new Configuration()); |
189 expect(merged.includeTags, equals(BooleanSelector.all)); | 189 expect(merged.includeTags, equals(BooleanSelector.all)); |
190 expect(merged.excludeTags, equals(BooleanSelector.none)); | 190 expect(merged.excludeTags, equals(BooleanSelector.none)); |
191 }); | 191 }); |
192 | 192 |
193 test("if only the old configuration's is defined, uses it", () { | 193 test("if only the old configuration's is defined, uses it", () { |
194 var merged = new Configuration( | 194 var merged = new Configuration( |
195 includeTags: new BooleanSelector.parse("foo || bar"), | 195 includeTags: new BooleanSelector.parse("foo || bar"), |
196 excludeTags: new BooleanSelector.parse("baz || bang")) | 196 excludeTags: new BooleanSelector.parse("baz || bang")) |
(...skipping 25 matching lines...) Expand all Loading... | |
222 excludeTags: new BooleanSelector.parse("qux")); | 222 excludeTags: new BooleanSelector.parse("qux")); |
223 var merged = older.merge(newer); | 223 var merged = older.merge(newer); |
224 | 224 |
225 expect(merged.includeTags, | 225 expect(merged.includeTags, |
226 equals(new BooleanSelector.parse("(foo || bar) && blip"))); | 226 equals(new BooleanSelector.parse("(foo || bar) && blip"))); |
227 expect(merged.excludeTags, | 227 expect(merged.excludeTags, |
228 equals(new BooleanSelector.parse("(baz || bang) || qux"))); | 228 equals(new BooleanSelector.parse("(baz || bang) || qux"))); |
229 }); | 229 }); |
230 }); | 230 }); |
231 | 231 |
232 group("for tags", () { | |
233 test("merges each nested configuration", () { | |
234 var merged = new Configuration( | |
235 tags: { | |
236 new BooleanSelector.parse("foo"): new Configuration(verboseTrace: tr ue), | |
kevmoo
2016/03/01 06:01:12
long line
nweiz
2016/03/01 19:24:49
Done.
| |
237 new BooleanSelector.parse("bar"): new Configuration(jsTrace: true) | |
238 } | |
239 ).merge(new Configuration( | |
240 tags: { | |
241 new BooleanSelector.parse("bar"): new Configuration(jsTrace: false), | |
242 new BooleanSelector.parse("baz"): new Configuration(skip: true) | |
243 } | |
244 )); | |
245 | |
246 expect(merged.tags[new BooleanSelector.parse("foo")].verboseTrace, | |
247 isTrue); | |
248 expect(merged.tags[new BooleanSelector.parse("bar")].jsTrace, isFalse); | |
249 expect(merged.tags[new BooleanSelector.parse("baz")].skip, isTrue); | |
250 }); | |
251 }); | |
252 | |
232 group("for timeout", () { | 253 group("for timeout", () { |
233 test("if neither is defined, preserves the default", () { | 254 test("if neither is defined, preserves the default", () { |
234 var merged = new Configuration().merge(new Configuration()); | 255 var merged = new Configuration().merge(new Configuration()); |
235 expect(merged.timeout, equals(new Timeout.factor(1))); | 256 expect(merged.timeout, equals(new Timeout.factor(1))); |
236 }); | 257 }); |
237 | 258 |
238 test("if only the old configuration's is defined, uses it", () { | 259 test("if only the old configuration's is defined, uses it", () { |
239 var merged = new Configuration(timeout: new Timeout.factor(2)) | 260 var merged = new Configuration(timeout: new Timeout.factor(2)) |
240 .merge(new Configuration()); | 261 .merge(new Configuration()); |
241 expect(merged.timeout, equals(new Timeout.factor(2))); | 262 expect(merged.timeout, equals(new Timeout.factor(2))); |
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
281 expect(merged.onPlatform[new PlatformSelector.parse("vm")].verboseTrace, | 302 expect(merged.onPlatform[new PlatformSelector.parse("vm")].verboseTrace, |
282 isTrue); | 303 isTrue); |
283 expect(merged.onPlatform[new PlatformSelector.parse("chrome")].jsTrace, | 304 expect(merged.onPlatform[new PlatformSelector.parse("chrome")].jsTrace, |
284 isFalse); | 305 isFalse); |
285 expect(merged.onPlatform[new PlatformSelector.parse("firefox")].skip, | 306 expect(merged.onPlatform[new PlatformSelector.parse("firefox")].skip, |
286 isTrue); | 307 isTrue); |
287 }); | 308 }); |
288 }); | 309 }); |
289 }); | 310 }); |
290 } | 311 } |
OLD | NEW |