OLD | NEW |
1 // Copyright (c) 2016, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2016, the Dart project authors. Please see the AUTHORS file |
2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
4 | 4 |
5 import 'dart:html'; | 5 import 'dart:html'; |
6 import 'package:unittest/unittest.dart'; | 6 import 'package:unittest/unittest.dart'; |
7 import 'package:observatory/src/elements/script_ref.dart'; | 7 import 'package:observatory/src/elements/script_ref.dart'; |
8 import '../mocks.dart'; | 8 import '../mocks.dart'; |
9 | 9 |
10 main() { | 10 main() { |
11 ScriptRefElement.tag.ensureRegistration(); | 11 ScriptRefElement.tag.ensureRegistration(); |
12 | 12 |
13 const isolate = const IsolateRefMock(id: 'isolate-id'); | 13 const isolate = const IsolateRefMock(id: 'isolate-id'); |
14 const file = 'filename.dart'; | 14 const file = 'filename.dart'; |
15 const ref = const ScriptRefMock(id: 'script-id', uri: 'package/$file'); | 15 const ref = const ScriptRefMock(id: 'script-id', uri: 'package/$file'); |
16 group('instantiation', () { | 16 group('instantiation', () { |
17 test('no position', () { | 17 test('no position', () { |
18 final e = new ScriptRefElement(isolate, ref); | 18 final e = new ScriptRefElement(isolate, ref); |
19 expect(e, isNotNull, reason: 'element correctly created'); | 19 expect(e, isNotNull, reason: 'element correctly created'); |
20 expect(e.isolate, equals(isolate)); | 20 expect(e.isolate, equals(isolate)); |
21 expect(e.script, equals(ref)); | 21 expect(e.script, equals(ref)); |
22 }); | 22 }); |
23 }); | 23 }); |
24 test('elements created after attachment', () async { | 24 test('elements created after attachment', () async { |
25 final e = new ScriptRefElement(isolate, ref); | 25 final e = new ScriptRefElement(isolate, ref); |
26 document.body.append(e); | 26 document.body.append(e); |
27 await e.onRendered.first; | 27 await e.onRendered.first; |
28 expect(e.children.length, isNonZero, reason: 'has elements'); | 28 expect(e.children.length, isNonZero, reason: 'has elements'); |
29 expect(e.innerHtml.contains(isolate.id), isTrue, | 29 expect(e.innerHtml.contains(isolate.id), isTrue, |
30 reason: 'no message in the component'); | 30 reason: 'no message in the component'); |
31 expect(e.innerHtml.contains(file), isTrue, | 31 expect(e.innerHtml.contains(file), isTrue, |
32 reason: 'no message in the component'); | 32 reason: 'no message in the component'); |
33 e.remove(); | 33 e.remove(); |
34 await e.onRendered.first; | 34 await e.onRendered.first; |
35 expect(e.children.length, isZero, | 35 expect(e.children.length, isZero, reason: 'is empty'); |
36 reason: 'is empty'); | |
37 }); | 36 }); |
38 } | 37 } |
OLD | NEW |