Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(474)

Side by Side Diff: runtime/observatory/tests/observatory_ui/flag-list/element_test.dart

Issue 2213613002: Converted observatory flag-list element (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: Added tests Created 4 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
(Empty)
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
3 // BSD-style license that can be found in the LICENSE file.
4 import 'dart:html';
5 import 'dart:async';
6 import 'package:unittest/unittest.dart';
7 import 'package:observatory/mocks.dart';
8 import 'package:observatory/src/elements/flag_list.dart';
9 import 'package:observatory/src/elements/nav/notify.dart';
10
11 main() {
12 FlagListElement.tag.ensureRegistration();
13
14 final nTag = NavNotifyElement.tag.name;
15 const vm = const VMMock(name: 'vm');
16 final stream = new StreamController().stream;
17
18 group('instantiation', () {
19 test('default', () {
20 final FlagListElement e = new FlagListElement(vm, stream,
21 new FlagsRepositoryMock(),
22 new NotificationRepositoryMock());
23 expect(e, isNotNull, reason: 'element correctly created');
24 });
25 });
26 group('elements', () {
27 test('created after attachment', () async {
28 const modified = const [
29 const FlagMock(name: 'f1', comment: 'c1', modified: true),
30 ];
31 const unmodifed = const [
32 const FlagMock(name: 'f2', comment: 'c2', modified: false),
33 const FlagMock(name: 'f3', comment: 'c3', modified: false),
34 ];
35 final flags = new List.unmodifiable([]..addAll(modified)
36 ..addAll(unmodifed));
37 final FlagListElement e = new FlagListElement(vm, stream,
38 new FlagsRepositoryMock(list: expectAsync((input) async {
39 expect(input, equals(vm));
40 return flags;
41 }, count: 1)), new NotificationRepositoryMock());
42 document.body.append(e);
43 await e.onRendered.first;
44 expect(e.children.length, isNonZero, reason: 'has elements');
45 expect(e.querySelectorAll(nTag).length, equals(1));
46 expect(e.querySelectorAll('.flag').length, equals(flags.length));
47 expect(e.querySelectorAll('.flag.modified').length,
48 equals(modified.length));
49 expect(e.querySelectorAll('.flag.unmodified').length,
50 equals(unmodifed.length));
51 expect(e.querySelectorAll('.flag').length, equals(flags.length));
52 expect(e.querySelectorAll('.comment').length, equals(flags.length));
53 expect(e.querySelectorAll('.name').length, equals(flags.length));
54 expect(e.querySelectorAll('.value').length, equals(flags.length));
55 e.remove();
56 await e.onRendered.first;
57 expect(e.children.length, isZero, reason: 'is empty');
58 });
59 });
60 }
OLDNEW
« no previous file with comments | « runtime/observatory/observatory_sources.gypi ('k') | runtime/observatory/tests/observatory_ui/flag-list/element_test.html » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698