OLD | NEW |
| (Empty) |
1 // Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file | |
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. | |
4 | |
5 /// Collection of utilities which are useful for creating unit tests for | |
6 /// Barback transformers. | |
7 library code_transformers.tests; | |
8 | |
9 import 'dart:async' show Future; | |
10 | |
11 import 'package:barback/barback.dart' show Transformer; | |
12 import 'package:unittest/unittest.dart'; | |
13 | |
14 import 'src/test_harness.dart'; | |
15 | |
16 /// Defines a test which invokes [applyTransformers]. | |
17 testPhases(String testName, List<List<Transformer>> phases, | |
18 Map<String, String> inputs, Map<String, String> results, | |
19 [List<String> messages]) { | |
20 test(testName, | |
21 () => applyTransformers(phases, inputs: inputs, results: results, | |
22 messages: messages)); | |
23 } | |
24 | |
25 /// Updates the provided transformers with [inputs] as asset inputs then | |
26 /// validates that [results] were generated. | |
27 /// | |
28 /// The keys for inputs and results are 'package_name|lib/file.dart'. | |
29 /// Only files which are specified in results are validated. | |
30 /// | |
31 /// If [messages] is non-null then this will validate that only the specified | |
32 /// messages were generated, ignoring info messages. | |
33 Future applyTransformers(List<List<Transformer>> phases, | |
34 {Map<String, String> inputs: const {}, | |
35 Map<String, String> results: const {}, | |
36 List<String> messages: const []}) { | |
37 | |
38 var helper = new TestHelper(phases, inputs, messages)..run(); | |
39 return helper.checkAll(results).then((_) => helper.tearDown()); | |
40 } | |
OLD | NEW |