Index: test/runner/configuration/configuration_test.dart |
diff --git a/test/runner/configuration/configuration_test.dart b/test/runner/configuration/configuration_test.dart |
index fa56479b6714b31ac1d81320807455ab6f9c94d8..366d6c08aa30812758d5dadb427260848621e0a6 100644 |
--- a/test/runner/configuration/configuration_test.dart |
+++ b/test/runner/configuration/configuration_test.dart |
@@ -183,7 +183,7 @@ void main() { |
}); |
}); |
- group("for tags", () { |
+ group("for include and excludeTags", () { |
test("if neither is defined, preserves the default", () { |
var merged = new Configuration().merge(new Configuration()); |
expect(merged.includeTags, equals(BooleanSelector.all)); |
@@ -229,6 +229,28 @@ void main() { |
}); |
}); |
+ group("for tags", () { |
+ test("merges each nested configuration", () { |
+ var merged = new Configuration( |
+ tags: { |
+ new BooleanSelector.parse("foo"): |
+ new Configuration(verboseTrace: true), |
+ new BooleanSelector.parse("bar"): new Configuration(jsTrace: true) |
+ } |
+ ).merge(new Configuration( |
+ tags: { |
+ new BooleanSelector.parse("bar"): new Configuration(jsTrace: false), |
+ new BooleanSelector.parse("baz"): new Configuration(skip: true) |
+ } |
+ )); |
+ |
+ expect(merged.tags[new BooleanSelector.parse("foo")].verboseTrace, |
+ isTrue); |
+ expect(merged.tags[new BooleanSelector.parse("bar")].jsTrace, isFalse); |
+ expect(merged.tags[new BooleanSelector.parse("baz")].skip, isTrue); |
+ }); |
+ }); |
+ |
group("for timeout", () { |
test("if neither is defined, preserves the default", () { |
var merged = new Configuration().merge(new Configuration()); |