// Copyright (c) 2011, 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. library QueryTest; import '../../pkg/unittest/lib/unittest.dart'; import '../../pkg/unittest/lib/html_config.dart'; import 'dart:html'; main() { useHtmlConfiguration(); final div = new DivElement(); final canvas = new CanvasElement(width: 200, height: 200); canvas.id = 'testcanvas'; final element = new Element.html("

"); document.body.nodes.addAll([div, canvas, element]); var isCanvasElement = predicate((x) => x is CanvasElement, 'is a CanvasElement'); var isImageElement = predicate((x) => x is ImageElement, 'is an ImageElement'); test('query', () { Element e = query('#testcanvas'); expect(e, isNotNull); expect(e.id, 'testcanvas'); expect(e, isCanvasElement); expect(e, canvas); }); test('query (None)', () { Element e = query('#nothere'); expect(e, isNull); }); test('queryAll (One)', () { List l = queryAll('canvas'); expect(l.length, 1); expect(l[0], canvas); }); test('queryAll (Multiple)', () { List l = queryAll('img'); expect(l.length, 2); expect(l[0], isImageElement); expect(l[1], isImageElement); expect(l[0], isNot(equals(l[1]))); }); test('queryAll (None)', () { List l = queryAll('video'); expect(l.isEmpty, isTrue); }); }