OLD | NEW |
---|---|
1 import 'package:observatory/service_io.dart'; | 1 import 'package:observatory/service_io.dart'; |
2 import 'package:unittest/unittest.dart'; | 2 import 'package:unittest/unittest.dart'; |
3 import 'test_helper.dart'; | 3 import 'test_helper.dart'; |
4 | 4 |
5 import 'dart:profiler'; | 5 import 'dart:profiler'; |
6 | 6 |
7 void script() { | 7 void script() { |
8 var counter = new Counter('a.b.c', 'description'); | 8 var counter = new Counter('a.b.c', 'description'); |
9 Metrics.register(counter); | 9 Metrics.register(counter); |
10 counter.value = 1234.5; | 10 counter.value = 1234.5; |
11 } | 11 } |
12 | 12 |
13 var tests = [ | 13 var tests = [ |
14 | 14 |
15 (Isolate isolate) => | 15 (Isolate isolate) => |
16 isolate.get('metrics').then((ServiceMap metrics) { | 16 isolate.get('metrics/vm').then((ServiceMap metrics) { |
17 expect(metrics['type'], equals('MetricList')); | 17 expect(metrics['type'], equals('MetricList')); |
18 var members = metrics['members']; | 18 var members = metrics['members']; |
19 expect(members, isList); | 19 expect(members, isList); |
20 expect(members.length, equals(1)); | 20 expect(members.length, greaterThan(1)); |
21 var counter = members[0]; | 21 bool foundOldHeapCapacity = false; |
22 expect(counter['name'], equals('a.b.c')); | 22 for (var member in members) { |
koda
2014/08/15 17:16:14
Iterable.any would make this a one-liner.
Cutch
2014/08/15 17:32:41
Done.
| |
23 expect(counter['value'], equals(1234.5)); | 23 if (member['name'] == 'heap.old.capacity') { |
24 foundOldHeapCapacity = true; | |
25 break; | |
26 } | |
27 } | |
28 expect(foundOldHeapCapacity, equals(true)); | |
24 }), | 29 }), |
25 | 30 |
26 (Isolate isolate) => | 31 (Isolate isolate) => |
27 isolate.get('metrics/a.b.c').then((ServiceMap counter) { | 32 isolate.get('metrics/vm/heap.old.used').then((ServiceMap counter) { |
28 expect(counter['name'], equals('a.b.c')); | 33 expect(counter['type'], equals('Counter')); |
29 expect(counter['value'], equals(1234.5)); | 34 expect(counter['name'], equals('heap.old.used')); |
30 }), | 35 }), |
31 | 36 |
32 (Isolate isolate) => | 37 (Isolate isolate) => |
33 isolate.get('metrics/a.b.d').then((DartError err) { | 38 isolate.get('metrics/vm/doesnotexist').then((DartError err) { |
34 expect(err is DartError, isTrue); | 39 expect(err is DartError, isTrue); |
35 }), | 40 }), |
36 | 41 |
37 ]; | 42 ]; |
38 | 43 |
39 main(args) => runIsolateTests(args, tests, testeeBefore: script); | 44 main(args) => runIsolateTests(args, tests, testeeBefore: script); |
OLD | NEW |