Index: test/logging_test.dart |
diff --git a/test/logging_test.dart b/test/logging_test.dart |
index 223498f0a1707b4ae93accfdc9fa4803717be98b..8eb116a12379abd287b96cd826ea581e5885c5a5 100644 |
--- a/test/logging_test.dart |
+++ b/test/logging_test.dart |
@@ -5,6 +5,8 @@ |
library logging_test; |
+import 'dart:async'; |
+ |
import 'package:logging/logging.dart'; |
import 'package:unittest/unittest.dart'; |
@@ -150,6 +152,53 @@ main() { |
expect(shout.stackTrace, isNull); |
}); |
+ group('zone gets recorded to LogRecord', () { |
+ test('root zone', () { |
+ var root = Logger.root; |
+ |
+ var recordingZone = Zone.current; |
+ var records = new List<LogRecord>(); |
+ root.onRecord.listen(records.add); |
+ root.info('hello'); |
+ |
+ expect(records, hasLength(1)); |
+ expect(records.first.zone, equals(recordingZone)); |
+ }); |
+ |
+ test('child zone', () { |
+ var root = Logger.root; |
+ |
+ var recordingZone; |
+ var records = new List<LogRecord>(); |
+ root.onRecord.listen(records.add); |
+ |
+ runZoned(() { |
+ recordingZone = Zone.current; |
+ root.info('hello'); |
+ }); |
+ |
+ expect(records, hasLength(1)); |
+ expect(records.first.zone, equals(recordingZone)); |
+ }); |
+ |
+ test('custom zone', () { |
+ var root = Logger.root; |
+ |
+ var recordingZone; |
+ var records = new List<LogRecord>(); |
+ root.onRecord.listen(records.add); |
+ |
+ runZoned(() { |
+ recordingZone = Zone.current; |
+ }); |
+ |
+ runZoned(() => root.log(Level.INFO, 'hello', null, null, recordingZone)); |
+ |
+ expect(records, hasLength(1)); |
+ expect(records.first.zone, equals(recordingZone)); |
+ }); |
+ }); |
+ |
group('mutating levels', () { |
Logger root = Logger.root; |
Logger a = new Logger('a'); |