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 12 matching lines...) Expand all Loading... |
23 expect(merged.version, isFalse); | 23 expect(merged.version, isFalse); |
24 expect(merged.verboseTrace, isFalse); | 24 expect(merged.verboseTrace, isFalse); |
25 expect(merged.jsTrace, isFalse); | 25 expect(merged.jsTrace, isFalse); |
26 expect(merged.skip, isFalse); | 26 expect(merged.skip, isFalse); |
27 expect(merged.skipReason, isNull); | 27 expect(merged.skipReason, isNull); |
28 expect(merged.pauseAfterLoad, isFalse); | 28 expect(merged.pauseAfterLoad, isFalse); |
29 expect(merged.color, equals(canUseSpecialChars)); | 29 expect(merged.color, equals(canUseSpecialChars)); |
30 expect(merged.packageRoot, equals(p.join(p.current, 'packages'))); | 30 expect(merged.packageRoot, equals(p.join(p.current, 'packages'))); |
31 expect(merged.reporter, equals(defaultReporter)); | 31 expect(merged.reporter, equals(defaultReporter)); |
32 expect(merged.pubServeUrl, isNull); | 32 expect(merged.pubServeUrl, isNull); |
33 expect(merged.pattern, isNull); | |
34 expect(merged.platforms, equals([TestPlatform.vm])); | 33 expect(merged.platforms, equals([TestPlatform.vm])); |
35 expect(merged.paths, equals(["test"])); | 34 expect(merged.paths, equals(["test"])); |
36 }); | 35 }); |
37 | 36 |
38 test("if only the old configuration's is defined, uses it", () { | 37 test("if only the old configuration's is defined, uses it", () { |
39 var merged = new Configuration( | 38 var merged = new Configuration( |
40 help: true, | 39 help: true, |
41 version: true, | 40 version: true, |
42 verboseTrace: true, | 41 verboseTrace: true, |
43 jsTrace: true, | 42 jsTrace: true, |
44 skip: true, | 43 skip: true, |
45 skipReason: "boop", | 44 skipReason: "boop", |
46 pauseAfterLoad: true, | 45 pauseAfterLoad: true, |
47 color: true, | 46 color: true, |
48 packageRoot: "root", | 47 packageRoot: "root", |
49 reporter: "json", | 48 reporter: "json", |
50 pubServePort: 1234, | 49 pubServePort: 1234, |
51 pattern: "foo", | |
52 platforms: [TestPlatform.chrome], | 50 platforms: [TestPlatform.chrome], |
53 paths: ["bar"]) | 51 paths: ["bar"]) |
54 .merge(new Configuration()); | 52 .merge(new Configuration()); |
55 | 53 |
56 expect(merged.help, isTrue); | 54 expect(merged.help, isTrue); |
57 expect(merged.version, isTrue); | 55 expect(merged.version, isTrue); |
58 expect(merged.verboseTrace, isTrue); | 56 expect(merged.verboseTrace, isTrue); |
59 expect(merged.jsTrace, isTrue); | 57 expect(merged.jsTrace, isTrue); |
60 expect(merged.skip, isTrue); | 58 expect(merged.skip, isTrue); |
61 expect(merged.skipReason, equals("boop")); | 59 expect(merged.skipReason, equals("boop")); |
62 expect(merged.pauseAfterLoad, isTrue); | 60 expect(merged.pauseAfterLoad, isTrue); |
63 expect(merged.color, isTrue); | 61 expect(merged.color, isTrue); |
64 expect(merged.packageRoot, equals("root")); | 62 expect(merged.packageRoot, equals("root")); |
65 expect(merged.reporter, equals("json")); | 63 expect(merged.reporter, equals("json")); |
66 expect(merged.pubServeUrl.port, equals(1234)); | 64 expect(merged.pubServeUrl.port, equals(1234)); |
67 expect(merged.pattern, equals("foo")); | |
68 expect(merged.platforms, equals([TestPlatform.chrome])); | 65 expect(merged.platforms, equals([TestPlatform.chrome])); |
69 expect(merged.paths, equals(["bar"])); | 66 expect(merged.paths, equals(["bar"])); |
70 }); | 67 }); |
71 | 68 |
72 test("if only the new configuration's is defined, uses it", () { | 69 test("if only the new configuration's is defined, uses it", () { |
73 var merged = new Configuration().merge(new Configuration( | 70 var merged = new Configuration().merge(new Configuration( |
74 help: true, | 71 help: true, |
75 version: true, | 72 version: true, |
76 verboseTrace: true, | 73 verboseTrace: true, |
77 jsTrace: true, | 74 jsTrace: true, |
78 skip: true, | 75 skip: true, |
79 skipReason: "boop", | 76 skipReason: "boop", |
80 pauseAfterLoad: true, | 77 pauseAfterLoad: true, |
81 color: true, | 78 color: true, |
82 packageRoot: "root", | 79 packageRoot: "root", |
83 reporter: "json", | 80 reporter: "json", |
84 pubServePort: 1234, | 81 pubServePort: 1234, |
85 pattern: "foo", | |
86 platforms: [TestPlatform.chrome], | 82 platforms: [TestPlatform.chrome], |
87 paths: ["bar"])); | 83 paths: ["bar"])); |
88 | 84 |
89 expect(merged.help, isTrue); | 85 expect(merged.help, isTrue); |
90 expect(merged.version, isTrue); | 86 expect(merged.version, isTrue); |
91 expect(merged.verboseTrace, isTrue); | 87 expect(merged.verboseTrace, isTrue); |
92 expect(merged.jsTrace, isTrue); | 88 expect(merged.jsTrace, isTrue); |
93 expect(merged.skip, isTrue); | 89 expect(merged.skip, isTrue); |
94 expect(merged.skipReason, equals("boop")); | 90 expect(merged.skipReason, equals("boop")); |
95 expect(merged.pauseAfterLoad, isTrue); | 91 expect(merged.pauseAfterLoad, isTrue); |
96 expect(merged.color, isTrue); | 92 expect(merged.color, isTrue); |
97 expect(merged.packageRoot, equals("root")); | 93 expect(merged.packageRoot, equals("root")); |
98 expect(merged.reporter, equals("json")); | 94 expect(merged.reporter, equals("json")); |
99 expect(merged.pubServeUrl.port, equals(1234)); | 95 expect(merged.pubServeUrl.port, equals(1234)); |
100 expect(merged.pattern, equals("foo")); | |
101 expect(merged.platforms, equals([TestPlatform.chrome])); | 96 expect(merged.platforms, equals([TestPlatform.chrome])); |
102 expect(merged.paths, equals(["bar"])); | 97 expect(merged.paths, equals(["bar"])); |
103 }); | 98 }); |
104 | 99 |
105 test("if the two configurations conflict, uses the new configuration's " | 100 test("if the two configurations conflict, uses the new configuration's " |
106 "values", () { | 101 "values", () { |
107 var older = new Configuration( | 102 var older = new Configuration( |
108 help: true, | 103 help: true, |
109 version: false, | 104 version: false, |
110 verboseTrace: true, | 105 verboseTrace: true, |
111 jsTrace: false, | 106 jsTrace: false, |
112 skip: true, | 107 skip: true, |
113 skipReason: "foo", | 108 skipReason: "foo", |
114 pauseAfterLoad: true, | 109 pauseAfterLoad: true, |
115 color: false, | 110 color: false, |
116 packageRoot: "root", | 111 packageRoot: "root", |
117 reporter: "json", | 112 reporter: "json", |
118 pubServePort: 1234, | 113 pubServePort: 1234, |
119 pattern: "foo", | |
120 platforms: [TestPlatform.chrome], | 114 platforms: [TestPlatform.chrome], |
121 paths: ["bar"]); | 115 paths: ["bar"]); |
122 var newer = new Configuration( | 116 var newer = new Configuration( |
123 help: false, | 117 help: false, |
124 version: true, | 118 version: true, |
125 verboseTrace: false, | 119 verboseTrace: false, |
126 jsTrace: true, | 120 jsTrace: true, |
127 skip: true, | 121 skip: true, |
128 skipReason: "bar", | 122 skipReason: "bar", |
129 pauseAfterLoad: false, | 123 pauseAfterLoad: false, |
130 color: true, | 124 color: true, |
131 packageRoot: "boot", | 125 packageRoot: "boot", |
132 reporter: "compact", | 126 reporter: "compact", |
133 pubServePort: 5678, | 127 pubServePort: 5678, |
134 pattern: "gonk", | |
135 platforms: [TestPlatform.dartium], | 128 platforms: [TestPlatform.dartium], |
136 paths: ["blech"]); | 129 paths: ["blech"]); |
137 var merged = older.merge(newer); | 130 var merged = older.merge(newer); |
138 | 131 |
139 expect(merged.help, isFalse); | 132 expect(merged.help, isFalse); |
140 expect(merged.version, isTrue); | 133 expect(merged.version, isTrue); |
141 expect(merged.verboseTrace, isFalse); | 134 expect(merged.verboseTrace, isFalse); |
142 expect(merged.jsTrace, isTrue); | 135 expect(merged.jsTrace, isTrue); |
143 expect(merged.skipReason, equals("bar")); | 136 expect(merged.skipReason, equals("bar")); |
144 expect(merged.pauseAfterLoad, isFalse); | 137 expect(merged.pauseAfterLoad, isFalse); |
145 expect(merged.color, isTrue); | 138 expect(merged.color, isTrue); |
146 expect(merged.packageRoot, equals("boot")); | 139 expect(merged.packageRoot, equals("boot")); |
147 expect(merged.reporter, equals("compact")); | 140 expect(merged.reporter, equals("compact")); |
148 expect(merged.pubServeUrl.port, equals(5678)); | 141 expect(merged.pubServeUrl.port, equals(5678)); |
149 expect(merged.pattern, equals("gonk")); | |
150 expect(merged.platforms, equals([TestPlatform.dartium])); | 142 expect(merged.platforms, equals([TestPlatform.dartium])); |
151 expect(merged.paths, equals(["blech"])); | 143 expect(merged.paths, equals(["blech"])); |
152 }); | 144 }); |
153 }); | 145 }); |
154 | 146 |
155 group("for testOn", () { | 147 group("for testOn", () { |
156 test("if neither is defined, preserves the default", () { | 148 test("if neither is defined, preserves the default", () { |
157 var merged = new Configuration().merge(new Configuration()); | 149 var merged = new Configuration().merge(new Configuration()); |
158 expect(merged.testOn, equals(PlatformSelector.all)); | 150 expect(merged.testOn, equals(PlatformSelector.all)); |
159 }); | 151 }); |
(...skipping 67 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
227 expect(merged.excludeTags, | 219 expect(merged.excludeTags, |
228 equals(new BooleanSelector.parse("(baz || bang) || qux"))); | 220 equals(new BooleanSelector.parse("(baz || bang) || qux"))); |
229 }); | 221 }); |
230 }); | 222 }); |
231 | 223 |
232 group("for sets", () { | 224 group("for sets", () { |
233 test("if neither is defined, preserves the default", () { | 225 test("if neither is defined, preserves the default", () { |
234 var merged = new Configuration().merge(new Configuration()); | 226 var merged = new Configuration().merge(new Configuration()); |
235 expect(merged.addTags, isEmpty); | 227 expect(merged.addTags, isEmpty); |
236 expect(merged.chosenPresets, isEmpty); | 228 expect(merged.chosenPresets, isEmpty); |
| 229 expect(merged.patterns, isEmpty); |
237 }); | 230 }); |
238 | 231 |
239 test("if only the old configuration's is defined, uses it", () { | 232 test("if only the old configuration's is defined, uses it", () { |
240 var merged = new Configuration( | 233 var merged = new Configuration( |
241 addTags: new Set.from(["foo", "bar"]), | 234 addTags: ["foo", "bar"], |
242 chosenPresets: new Set.from(["baz", "bang"])) | 235 chosenPresets: ["baz", "bang"], |
| 236 patterns: ["beep", "boop"]) |
243 .merge(new Configuration()); | 237 .merge(new Configuration()); |
244 | 238 |
245 expect(merged.addTags, unorderedEquals(["foo", "bar"])); | 239 expect(merged.addTags, unorderedEquals(["foo", "bar"])); |
246 expect(merged.chosenPresets, equals(["baz", "bang"])); | 240 expect(merged.chosenPresets, equals(["baz", "bang"])); |
| 241 expect(merged.patterns, equals(["beep", "boop"])); |
247 }); | 242 }); |
248 | 243 |
249 test("if only the new configuration's is defined, uses it", () { | 244 test("if only the new configuration's is defined, uses it", () { |
250 var merged = new Configuration().merge(new Configuration( | 245 var merged = new Configuration().merge(new Configuration( |
251 addTags: new Set.from(["foo", "bar"]), | 246 addTags: ["foo", "bar"], |
252 chosenPresets: new Set.from(["baz", "bang"]))); | 247 chosenPresets: ["baz", "bang"], |
| 248 patterns: ["beep", "boop"])); |
253 | 249 |
254 expect(merged.addTags, unorderedEquals(["foo", "bar"])); | 250 expect(merged.addTags, unorderedEquals(["foo", "bar"])); |
255 expect(merged.chosenPresets, equals(["baz", "bang"])); | 251 expect(merged.chosenPresets, equals(["baz", "bang"])); |
| 252 expect(merged.patterns, equals(["beep", "boop"])); |
256 }); | 253 }); |
257 | 254 |
258 test("if both are defined, unions them", () { | 255 test("if both are defined, unions them", () { |
259 var older = new Configuration( | 256 var older = new Configuration( |
260 addTags: new Set.from(["foo", "bar"]), | 257 addTags: ["foo", "bar"], |
261 chosenPresets: new Set.from(["baz", "bang"])); | 258 chosenPresets: ["baz", "bang"], |
| 259 patterns: ["beep", "boop"]); |
262 var newer = new Configuration( | 260 var newer = new Configuration( |
263 addTags: new Set.from(["blip"]), | 261 addTags: ["blip"], |
264 chosenPresets: new Set.from(["qux"])); | 262 chosenPresets: ["qux"], |
| 263 patterns: ["bonk"]); |
265 var merged = older.merge(newer); | 264 var merged = older.merge(newer); |
266 | 265 |
267 expect(merged.addTags, unorderedEquals(["foo", "bar", "blip"])); | 266 expect(merged.addTags, unorderedEquals(["foo", "bar", "blip"])); |
268 expect(merged.chosenPresets, equals(["baz", "bang", "qux"])); | 267 expect(merged.chosenPresets, equals(["baz", "bang", "qux"])); |
| 268 expect(merged.patterns, unorderedEquals(["beep", "boop", "bonk"])); |
269 }); | 269 }); |
270 }); | 270 }); |
271 | 271 |
272 group("for timeout", () { | 272 group("for timeout", () { |
273 test("if neither is defined, preserves the default", () { | 273 test("if neither is defined, preserves the default", () { |
274 var merged = new Configuration().merge(new Configuration()); | 274 var merged = new Configuration().merge(new Configuration()); |
275 expect(merged.timeout, equals(new Timeout.factor(1))); | 275 expect(merged.timeout, equals(new Timeout.factor(1))); |
276 }); | 276 }); |
277 | 277 |
278 test("if only the old configuration's is defined, uses it", () { | 278 test("if only the old configuration's is defined, uses it", () { |
(...skipping 139 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
418 .merge(new Configuration()); | 418 .merge(new Configuration()); |
419 | 419 |
420 expect(configuration.presets, isEmpty); | 420 expect(configuration.presets, isEmpty); |
421 expect(configuration.chosenPresets, equals(["foo"])); | 421 expect(configuration.chosenPresets, equals(["foo"])); |
422 expect(configuration.knownPresets, equals(["foo"])); | 422 expect(configuration.knownPresets, equals(["foo"])); |
423 expect(configuration.verboseTrace, isTrue); | 423 expect(configuration.verboseTrace, isTrue); |
424 }); | 424 }); |
425 }); | 425 }); |
426 }); | 426 }); |
427 } | 427 } |
OLD | NEW |