OLD | NEW |
(Empty) | |
| 1 // Copyright (c) 2013, 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 |
| 5 import 'dart:html'; |
| 6 import 'package:polymer/polymer.dart'; |
| 7 import 'package:unittest/unittest.dart'; |
| 8 import 'package:unittest/html_config.dart'; |
| 9 |
| 10 /// This test runs the news example and checks the state of the initial page. |
| 11 main() { |
| 12 initPolymer(); |
| 13 useHtmlConfiguration(); |
| 14 |
| 15 extractLinks(nodes) => nodes |
| 16 .where((n) => n is Element) |
| 17 .map((n) => n.query('a').href.split('/').last) |
| 18 .toList(); |
| 19 |
| 20 setUp(() => Polymer.onReady); |
| 21 |
| 22 test('initial state', () { |
| 23 final listComp = querySelector('ul'); |
| 24 final items = listComp.querySelectorAll('li'); |
| 25 expect(items.length, 6); |
| 26 expect(extractLinks(items), ['1', '2', '3', '4', '4', '5']); |
| 27 expect(listComp is Polymer, true, reason: 'x-news should be created'); |
| 28 |
| 29 final contents = listComp.shadowRoot.querySelectorAll('content'); |
| 30 expect(contents.length, 2, reason: 'news has 2 content tags'); |
| 31 expect(extractLinks(contents[0].getDistributedNodes()), ['3', '5'], |
| 32 reason: 'breaking stories first'); |
| 33 expect( |
| 34 extractLinks(contents[1].getDistributedNodes()), ['1', '2', '4', '4'], |
| 35 reason: 'other stories after breaking stories'); |
| 36 }); |
| 37 } |
OLD | NEW |