| // Copyright (c) 2015, 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. |
| |
| import 'dart:developer' as developer; |
| import 'package:observatory_2/service_io.dart'; |
| import 'package:test/test.dart'; |
| import 'package:logging/logging.dart'; |
| import 'service_test_common.dart'; |
| import 'test_helper.dart'; |
| |
| void init() { |
| Logger.root.level = Level.ALL; |
| Logger.root.onRecord.listen((logRecord) { |
| developer.log(logRecord.message, |
| time: logRecord.time, |
| sequenceNumber: logRecord.sequenceNumber, |
| level: logRecord.level.value, |
| name: logRecord.loggerName, |
| zone: null, |
| error: logRecord.error, |
| stackTrace: logRecord.stackTrace); |
| }); |
| } |
| |
| void run() { |
| developer.debugger(); |
| Logger.root.fine('Hey Buddy!'); |
| developer.debugger(); |
| Logger.root.info('YES'); |
| } |
| |
| var tests = <IsolateTest>[ |
| hasStoppedAtBreakpoint, |
| resumeIsolateAndAwaitEvent(Isolate.kLoggingStream, (ServiceEvent event) { |
| expect(event.kind, equals(ServiceEvent.kLogging)); |
| expect(event.logRecord['sequenceNumber'], equals(0)); |
| expect(event.logRecord['message'].valueAsString, equals('Hey Buddy!')); |
| expect(event.logRecord['level'], equals(Level.FINE)); |
| expect(event.logRecord['time'], isA<DateTime>()); |
| }), |
| hasStoppedAtBreakpoint, |
| resumeIsolateAndAwaitEvent(Isolate.kLoggingStream, (ServiceEvent event) { |
| expect(event.kind, equals(ServiceEvent.kLogging)); |
| expect(event.logRecord['sequenceNumber'], equals(1)); |
| expect(event.logRecord['level'], equals(Level.INFO)); |
| expect(event.logRecord['message'].valueAsString, equals('YES')); |
| expect(event.logRecord['time'], isA<DateTime>()); |
| }), |
| ]; |
| |
| main(args) => |
| runIsolateTests(args, tests, testeeBefore: init, testeeConcurrent: run); |