blob: 777412fd08f5b677bd7e807dec7e93d280585242 [file] [log] [blame]
// 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/service_io.dart';
import 'package:unittest/unittest.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 = [
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'], new isInstanceOf<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'], new isInstanceOf<DateTime>());
}),
];
main(args) => runIsolateTests(args,
tests,
testeeBefore: init,
testeeConcurrent: run);