| Index: client/tests/client/html/DocumentFragmentTests.dart
|
| diff --git a/client/tests/client/html/DocumentFragmentTests.dart b/client/tests/client/html/DocumentFragmentTests.dart
|
| index 8ca1b89dcc730d8c0b6b8145bb76a37b6c9645d1..f3e27b38ec777a3049153da96a2bf878c9ee0fbc 100644
|
| --- a/client/tests/client/html/DocumentFragmentTests.dart
|
| +++ b/client/tests/client/html/DocumentFragmentTests.dart
|
| @@ -1,10 +1,10 @@
|
| -// Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file
|
| +// Copyright (c) 2012, 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.
|
|
|
| testDocumentFragment() {
|
| Collection<String> _nodeStrings(Collection<Node> input) {
|
| - var out = new List<String>();
|
| + final out = new List<String>();
|
| for (Node n in input) {
|
| if (n is Element) {
|
| Element e = n;
|
| @@ -28,7 +28,7 @@ testDocumentFragment() {
|
| assertConstError(void fn()) {
|
| try {
|
| fn();
|
| - } catch (var e) {
|
| + } catch (final e) {
|
| if (e is IllegalAccessException || e is UnsupportedOperationException) {
|
| return;
|
| }
|
| @@ -61,7 +61,7 @@ testDocumentFragment() {
|
| }
|
|
|
| test('Unsupported operations throw errors', () {
|
| - var emptyFragment = new DocumentFragment();
|
| + final emptyFragment = new DocumentFragment();
|
| assertUnsupported(() => emptyFragment.attributes = {});
|
| assertUnsupported(() => emptyFragment.classes = []);
|
| assertUnsupported(() => emptyFragment.dataAttributes = {});
|
| @@ -157,14 +157,14 @@ testDocumentFragment() {
|
| });
|
|
|
| test('setting innerHTML works', () {
|
| - var fragment = new DocumentFragment();
|
| + final fragment = new DocumentFragment();
|
| fragment.nodes.add(new Text("foo"));
|
| fragment.innerHTML = "<a>bar</a>baz";
|
| Expect.listEquals(["A", "baz"], _nodeStrings(fragment.nodes));
|
| });
|
|
|
| test('getting innerHTML works', () {
|
| - var fragment = new DocumentFragment();
|
| + final fragment = new DocumentFragment();
|
| fragment.nodes.addAll([new Text("foo"), new Element.html("<A>bar</A>")]);
|
| Expect.equals("foo<a>bar</a>", fragment.innerHTML);
|
| Expect.equals("foo<a>bar</a>", fragment.outerHTML);
|
| @@ -174,29 +174,29 @@ testDocumentFragment() {
|
| getFragment() => new DocumentFragment.html("<a>foo</a>");
|
|
|
| test('beforeBegin does nothing', () {
|
| - var fragment = getFragment();
|
| + final fragment = getFragment();
|
| Expect.isNull(
|
| fragment.insertAdjacentElement("beforeBegin", new Element.tag("b")));
|
| Expect.equals("<a>foo</a>", fragment.innerHTML);
|
| });
|
|
|
| test('afterEnd does nothing', () {
|
| - var fragment = getFragment();
|
| + final fragment = getFragment();
|
| Expect.isNull(
|
| fragment.insertAdjacentElement("afterEnd", new Element.tag("b")));
|
| Expect.equals("<a>foo</a>", fragment.innerHTML);
|
| });
|
|
|
| test('afterBegin inserts the element', () {
|
| - var fragment = getFragment();
|
| - var el = new Element.tag("b");
|
| + final fragment = getFragment();
|
| + final el = new Element.tag("b");
|
| Expect.equals(el, fragment.insertAdjacentElement("afterBegin", el));
|
| Expect.equals("<b></b><a>foo</a>", fragment.innerHTML);
|
| });
|
|
|
| test('beforeEnd inserts the element', () {
|
| - var fragment = getFragment();
|
| - var el = new Element.tag("b");
|
| + final fragment = getFragment();
|
| + final el = new Element.tag("b");
|
| Expect.equals(el, fragment.insertAdjacentElement("beforeEnd", el));
|
| Expect.equals("<a>foo</a><b></b>", fragment.innerHTML);
|
| });
|
| @@ -206,25 +206,25 @@ testDocumentFragment() {
|
| getFragment() => new DocumentFragment.html("<a>foo</a>");
|
|
|
| test('beforeBegin does nothing', () {
|
| - var fragment = getFragment();
|
| + final fragment = getFragment();
|
| fragment.insertAdjacentText("beforeBegin", "foo");
|
| Expect.equals("<a>foo</a>", fragment.innerHTML);
|
| });
|
|
|
| test('afterEnd does nothing', () {
|
| - var fragment = getFragment();
|
| + final fragment = getFragment();
|
| fragment.insertAdjacentText("afterEnd", "foo");
|
| Expect.equals("<a>foo</a>", fragment.innerHTML);
|
| });
|
|
|
| test('afterBegin inserts the text', () {
|
| - var fragment = getFragment();
|
| + final fragment = getFragment();
|
| fragment.insertAdjacentText("afterBegin", "foo");
|
| Expect.equals("foo<a>foo</a>", fragment.innerHTML);
|
| });
|
|
|
| test('beforeEnd inserts the text', () {
|
| - var fragment = getFragment();
|
| + final fragment = getFragment();
|
| fragment.insertAdjacentText("beforeEnd", "foo");
|
| Expect.equals("<a>foo</a>foo", fragment.innerHTML);
|
| });
|
| @@ -234,25 +234,25 @@ testDocumentFragment() {
|
| getFragment() => new DocumentFragment.html("<a>foo</a>");
|
|
|
| test('beforeBegin does nothing', () {
|
| - var fragment = getFragment();
|
| + final fragment = getFragment();
|
| fragment.insertAdjacentHTML("beforeBegin", "foo<br>");
|
| Expect.equals("<a>foo</a>", fragment.innerHTML);
|
| });
|
|
|
| test('afterEnd does nothing', () {
|
| - var fragment = getFragment();
|
| + final fragment = getFragment();
|
| fragment.insertAdjacentHTML("afterEnd", "<br>foo");
|
| Expect.equals("<a>foo</a>", fragment.innerHTML);
|
| });
|
|
|
| test('afterBegin inserts the HTML', () {
|
| - var fragment = getFragment();
|
| + final fragment = getFragment();
|
| fragment.insertAdjacentHTML("afterBegin", "foo<br>");
|
| Expect.equals("foo<br><a>foo</a>", fragment.innerHTML);
|
| });
|
|
|
| test('beforeEnd inserts the HTML', () {
|
| - var fragment = getFragment();
|
| + final fragment = getFragment();
|
| fragment.insertAdjacentHTML("beforeEnd", "<br>foo");
|
| Expect.equals("<a>foo</a><br>foo", fragment.innerHTML);
|
| });
|
| @@ -260,7 +260,7 @@ testDocumentFragment() {
|
|
|
| // Just test that these methods don't throw errors
|
| test("no-op methods don't throw errors", () {
|
| - var fragment = new DocumentFragment();
|
| + final fragment = new DocumentFragment();
|
| fragment.on.click.add((e) => null);
|
| fragment.blur();
|
| fragment.focus();
|
| @@ -269,16 +269,16 @@ testDocumentFragment() {
|
| fragment.scrollIntoView();
|
| });
|
|
|
| - asyncTest('default values', 1, () {
|
| - var fragment = new DocumentFragment();
|
| - fragment.rect.then((ElementRect rect) {
|
| - expectEmptyRect(rect.client);
|
| - expectEmptyRect(rect.offset);
|
| - expectEmptyRect(rect.scroll);
|
| - expectEmptyRect(rect.bounding);
|
| - Expect.isTrue(rect.clientRects.isEmpty());
|
| - callbackDone();
|
| - });
|
| + test('default values', () {
|
| + final fragment = new DocumentFragment();
|
| + // You don't need to be in a measurement frame to get the rect for a
|
| + // document fragment because it is not attached to the document.
|
| + final rect = fragment.rect;
|
| + expectEmptyRect(rect.client);
|
| + expectEmptyRect(rect.offset);
|
| + expectEmptyRect(rect.scroll);
|
| + expectEmptyRect(rect.bounding);
|
| + Expect.isTrue(rect.clientRects.isEmpty());
|
| Expect.equals("false", fragment.contentEditable);
|
| Expect.equals(-1, fragment.tabIndex);
|
| Expect.equals("", fragment.id);
|
| @@ -300,18 +300,15 @@ testDocumentFragment() {
|
| Expect.isFalse(fragment.matchesSelector("*"));
|
| });
|
|
|
| - asyncTest('style', 1, () {
|
| - var fragment = new DocumentFragment();
|
| - var style = fragment.style;
|
| + test('style', () {
|
| + final fragment = new DocumentFragment();
|
| + final style = fragment.style;
|
| expectEmptyStyleDeclaration(style);
|
| - fragment.computedStyle.then((computedStyle) {
|
| - expectEmptyStyleDeclaration(computedStyle);
|
| - callbackDone();
|
| - });
|
| + expectEmptyStyleDeclaration(fragment.computedStyle);
|
| });
|
|
|
| test('setters throw errors', () {
|
| - var style = new DocumentFragment().style;
|
| + final style = new DocumentFragment().style;
|
| assertUnsupported(() => style.cssText = '* {color: blue}');
|
| assertUnsupported(() => style.removeProperty('color'));
|
| assertUnsupported(() => style.setProperty('color', 'blue'));
|
| @@ -319,7 +316,7 @@ testDocumentFragment() {
|
|
|
| // TODO(nweiz): re-enable when const is better supported in dartc and/or frog
|
| // test('const fields are immutable', () {
|
| - // var fragment = new DocumentFragment();
|
| + // final fragment = new DocumentFragment();
|
| // assertConstError(() => fragment.attributes['title'] = 'foo');
|
| // assertConstError(() => fragment.dataAttributes['title'] = 'foo');
|
| // fragment.rect.then((ElementRect rect) {
|
| @@ -331,7 +328,7 @@ testDocumentFragment() {
|
| // });
|
|
|
| test('query searches the fragment', () {
|
| - var fragment = new DocumentFragment.html(
|
| + final fragment = new DocumentFragment.html(
|
| "<div class='foo'><a>foo</a><b>bar</b></div>");
|
| Expect.equals("A", fragment.query(".foo a").tagName);
|
| Expect.listEquals(["A", "B"], _nodeStrings(fragment.queryAll(".foo *")));
|
|
|