Index: packages/polymer/test/build/build_log_combiner_test.dart |
diff --git a/packages/polymer/test/build/build_log_combiner_test.dart b/packages/polymer/test/build/build_log_combiner_test.dart |
new file mode 100644 |
index 0000000000000000000000000000000000000000..acb1ae6155a29b1941b1c600d712441512ad4e34 |
--- /dev/null |
+++ b/packages/polymer/test/build/build_log_combiner_test.dart |
@@ -0,0 +1,44 @@ |
+// Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file |
+// for details. All rights reserved. Use of this source code is governed by a |
+// BSD-style license that can be found in the LICENSE file. |
+ |
+library polymer.test.build.build_log_combiner_test; |
+ |
+import 'package:code_transformers/messages/build_logger.dart' |
+ show LOG_EXTENSION; |
+import 'package:polymer/src/build/build_log_combiner.dart'; |
+import 'package:polymer/src/build/common.dart'; |
+import 'package:unittest/compact_vm_config.dart'; |
+import 'package:unittest/unittest.dart'; |
+ |
+import 'common.dart'; |
+ |
+final options = new TransformOptions(injectBuildLogsInOutput: true); |
+final phases = [[new BuildLogCombiner(options)]]; |
+ |
+void main() { |
+ useCompactVMConfiguration(); |
+ |
+ testPhases('combines multiple logs', phases, { |
+ 'a|web/test.html': '<!DOCTYPE html><html></html>', |
+ 'a|web/test.html$LOG_EXTENSION.1': |
+ '{"foo#0":[${_logString('Info', 0, 'foo')}]}', |
+ 'a|web/test.html$LOG_EXTENSION.2': |
+ '{"foo#2":[${_logString('Warning', 2, 'bar')}]}', |
+ 'a|web/test.html$LOG_EXTENSION.3': '{' |
+ '"foo#2":[${_logString('Error', 2, 'baz1')}],' |
+ '"foo#44":[${_logString('Error', 44, 'baz2')}]' |
+ '}', |
+ }, { |
+ 'a|web/test.html': '<!DOCTYPE html><html></html>', |
+ 'a|web/test.html$LOG_EXTENSION': '{' |
+ '"foo#0":[${_logString('Info', 0, 'foo')}],' |
+ '"foo#2":[${_logString('Warning', 2, 'bar')},' |
+ '${_logString('Error', 2, 'baz1')}],' |
+ '"foo#44":[${_logString('Error', 44, 'baz2')}]' |
+ '}', |
+ }); |
+} |
+ |
+String _logString(String level, int id, String message) => |
+ '{"level":"$level","message":{"id":"foo#$id","snippet":"$message"}}'; |