Chromium Code Reviews| 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 |