Skip to content
Permalink
Browse files
2011-06-24 Dominic Cooney <dominicc@chromium.org>
        Reviewed by Dimitri Glazkov.

        Convert shadow DOM-related tests to use window.internals
        https://bugs.webkit.org/show_bug.cgi?id=61671

        * Source/autotools/symbols.filter: Export symbols for GTK.
2011-06-24  Dominic Cooney  <dominicc@chromium.org>

        Reviewed by Dimitri Glazkov.

        Convert shadow DOM-related tests to use window.internals
        https://bugs.webkit.org/show_bug.cgi?id=61671

        Update tests to use internals.{ensureShadowRoot, shadowRoot,
        shadowPseudoId, removeShadowRoot} instead of layoutTestController.

        * fast/dom/HTMLKeygenElement/keygen-expected.txt:
        * fast/dom/HTMLKeygenElement/keygen.html:
        * fast/dom/HTMLMeterElement/meter-clone-expected.txt:
        * fast/dom/HTMLMeterElement/meter-clone.html:
        * fast/dom/HTMLProgressElement/progress-clone-expected.txt:
        * fast/dom/HTMLProgressElement/progress-clone.html:
        * fast/dom/shadow/activeelement-should-be-shadowhost.html:
        * fast/dom/shadow/create-content-element.html:
        * fast/dom/shadow/gc-shadow-expected.txt:
        * fast/dom/shadow/gc-shadow.html:
        * fast/dom/shadow/layout-tests-can-access-shadow-expected.txt: shadowRoot of non-element throws now, so verify new behavior.
        * fast/dom/shadow/layout-tests-can-access-shadow.html:
        * fast/dom/shadow/nodetype.html:
        * fast/dom/shadow/tab-order-iframe-and-shadow.html:
        * fast/events/shadow-boundary-crossing.html:
        * fast/forms/resources/common.js:
        (getValidationMessageBubbleNode):
        * fast/html/clone-keygen-expected.txt:
        * fast/html/clone-keygen.html:
        * fast/html/clone-range-expected.txt:
        * fast/html/clone-range.html:
        * fast/html/details-clone.html:
        * fullscreen/video-controls-override-expected.txt:
        * fullscreen/video-controls-override.html:
        * media/audio-controls-do-not-fade-out.html:
        * media/media-controls.js:
        (mediaControlsButtonCoordinates):
        * media/video-controls-in-media-document.html:
        * platform/win/Skipped: shadowRoot and friends now available on win.
2011-06-24  Dominic Cooney  <dominicc@chromium.org>

        Reviewed by Dimitri Glazkov.

        Convert shadow DOM-related tests to use window.internals
        https://bugs.webkit.org/show_bug.cgi?id=61671

        * WebCore.exp.in: Exports for symbols used by WebCoreTestSupport.
        * testing/Internals.cpp: The new home of shadowRoot and friends.
        (WebCore::Internals::ensureShadowRoot):
        (WebCore::Internals::shadowRoot):
        (WebCore::Internals::removeShadowRoot):
        (WebCore::Internals::shadowPseudoId):
        * testing/Internals.h:
        * testing/Internals.idl:
2011-06-24  Dominic Cooney  <dominicc@chromium.org>

        Reviewed by Dimitri Glazkov.

        Convert shadow DOM-related tests to use window.internals
        https://bugs.webkit.org/show_bug.cgi?id=61671

        Remove shadow DOM-related methods from Chromium API. These are not
        required any more.

        * public/WebElement.h:
        * src/WebElement.cpp:
2011-06-24  Dominic Cooney  <dominicc@chromium.org>

        Reviewed by Dimitri Glazkov.

        Convert shadow DOM-related tests to use window.internals
        https://bugs.webkit.org/show_bug.cgi?id=61671

        Remove shadow-DOM related methods from GTK DRT API. These are not
        required any more.

        * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
        * WebCoreSupport/DumpRenderTreeSupportGtk.h:
2011-06-24  Dominic Cooney  <dominicc@chromium.org>

        Reviewed by Dimitri Glazkov.

        Convert shadow DOM-related tests to use window.internals
        https://bugs.webkit.org/show_bug.cgi?id=61671

        Remove shadow DOM-related methods from Mac API. These are not
        required any more.

        * DOM/WebDOMOperations.mm:
        * DOM/WebDOMOperationsPrivate.h:
2011-06-24  Dominic Cooney  <dominicc@chromium.org>

        Reviewed by Dimitri Glazkov.

        Convert shadow-DOM related tests to use window.internals
        https://bugs.webkit.org/show_bug.cgi?id=61671

        Remove shadow-DOM related methods from Qt DRT API. These are not
        required any more.

        * WebCoreSupport/DumpRenderTreeSupportQt.cpp:
        * WebCoreSupport/DumpRenderTreeSupportQt.h:
2011-06-24  Dominic Cooney  <dominicc@chromium.org>

        Reviewed by Dimitri Glazkov.

        Convert shadow DOM-related tests to use window.internals
        https://bugs.webkit.org/show_bug.cgi?id=61671

        Remove shadow DOM-related methods from WebKit2 API. These are not
        required any more.

        * WebProcess/InjectedBundle/API/c/WKBundleNodeHandle.cpp:
        * WebProcess/InjectedBundle/API/c/WKBundleNodeHandlePrivate.h:
        * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp:
        * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.h:
        * win/WebKit2.def: Re-exports for symbols used by WebCoreTestSupport.
        * win/WebKit2CFLite.def: Same for Cairo.
2011-06-24  Dominic Cooney   <dominicc@chromium.org>

        Reviewed by Dimitri Glazkov.

        Convert shadow DOM-related tests to use window.internals
        https://bugs.webkit.org/show_bug.cgi?id=61671

        Remove ensureShadowRoot, shadowRoot, shadowPseudoId and
        removeShadowRoot from layoutTestController; these have been
        replaced by equivalents in window.internals instead.

        * DumpRenderTree/LayoutTestController.cpp:
        (LayoutTestController::staticFunctions):
        * DumpRenderTree/LayoutTestController.h:
        * DumpRenderTree/chromium/LayoutTestController.cpp:
        (LayoutTestController::LayoutTestController):
        * DumpRenderTree/chromium/LayoutTestController.h:
        * DumpRenderTree/gtk/LayoutTestControllerGtk.cpp:
        * DumpRenderTree/mac/LayoutTestControllerMac.mm:
        * DumpRenderTree/qt/LayoutTestControllerQt.cpp:
        * DumpRenderTree/qt/LayoutTestControllerQt.h:
        * DumpRenderTree/win/LayoutTestControllerWin.cpp:
        * DumpRenderTree/wx/LayoutTestControllerWx.cpp:
        * WebKitTestRunner/InjectedBundle/Bindings/LayoutTestController.idl:
        * WebKitTestRunner/InjectedBundle/LayoutTestController.cpp:
        * WebKitTestRunner/InjectedBundle/LayoutTestController.h:

Canonical link: https://commits.webkit.org/78987@main
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@89682 268f45cc-cd09-0410-ab3c-d52691b4dbfc
  • Loading branch information
dominiccooney committed Jun 24, 2011
1 parent 8954a35 commit df658ed2b8c5610f2228a2a999f101ee83d8eb86
Showing 68 changed files with 336 additions and 680 deletions.
@@ -1,3 +1,12 @@
2011-06-24 Dominic Cooney <dominicc@chromium.org>

Reviewed by Dimitri Glazkov.

Convert shadow DOM-related tests to use window.internals
https://bugs.webkit.org/show_bug.cgi?id=61671

* Source/autotools/symbols.filter: Export symbols for GTK.

2011-06-24 Carlos Garcia Campos <cgarcia@igalia.com>

Reviewed by Martin Robinson.
@@ -1,3 +1,43 @@
2011-06-24 Dominic Cooney <dominicc@chromium.org>

Reviewed by Dimitri Glazkov.

Convert shadow DOM-related tests to use window.internals
https://bugs.webkit.org/show_bug.cgi?id=61671

Update tests to use internals.{ensureShadowRoot, shadowRoot,
shadowPseudoId, removeShadowRoot} instead of layoutTestController.

* fast/dom/HTMLKeygenElement/keygen-expected.txt:
* fast/dom/HTMLKeygenElement/keygen.html:
* fast/dom/HTMLMeterElement/meter-clone-expected.txt:
* fast/dom/HTMLMeterElement/meter-clone.html:
* fast/dom/HTMLProgressElement/progress-clone-expected.txt:
* fast/dom/HTMLProgressElement/progress-clone.html:
* fast/dom/shadow/activeelement-should-be-shadowhost.html:
* fast/dom/shadow/create-content-element.html:
* fast/dom/shadow/gc-shadow-expected.txt:
* fast/dom/shadow/gc-shadow.html:
* fast/dom/shadow/layout-tests-can-access-shadow-expected.txt: shadowRoot of non-element throws now, so verify new behavior.
* fast/dom/shadow/layout-tests-can-access-shadow.html:
* fast/dom/shadow/nodetype.html:
* fast/dom/shadow/tab-order-iframe-and-shadow.html:
* fast/events/shadow-boundary-crossing.html:
* fast/forms/resources/common.js:
(getValidationMessageBubbleNode):
* fast/html/clone-keygen-expected.txt:
* fast/html/clone-keygen.html:
* fast/html/clone-range-expected.txt:
* fast/html/clone-range.html:
* fast/html/details-clone.html:
* fullscreen/video-controls-override-expected.txt:
* fullscreen/video-controls-override.html:
* media/audio-controls-do-not-fade-out.html:
* media/media-controls.js:
(mediaControlsButtonCoordinates):
* media/video-controls-in-media-document.html:
* platform/win/Skipped: shadowRoot and friends now available on win.

2011-06-24 Matthew Delaney <mdelaney@apple.com>

Reviewed by Simon Fraser.
@@ -3,8 +3,7 @@ This tests the keygen element.

PASS keygen.options is undefined
PASS shadow.firstChild.tagName is "SELECT"
PASS layoutTestController.shadowRoot(shadow) is null
PASS layoutTestController.shadowRoot(shadow.firstChild) is null
PASS internals.shadowRoot(shadow.firstChild) is null
PASS successfullyParsed is true

TEST COMPLETE
@@ -13,11 +13,10 @@
var keygen = document.getElementById('keys');
shouldBe('keygen.options', 'undefined'); // keygen is not a select

if (window.layoutTestController) {
var shadow = layoutTestController.shadowRoot(keygen);
if (window.internals) {
var shadow = internals.shadowRoot(keygen);
shouldBe('shadow.firstChild.tagName', '"SELECT"');
shouldBe('layoutTestController.shadowRoot(shadow)', 'null');
shouldBe('layoutTestController.shadowRoot(shadow.firstChild)', 'null');
shouldBe('internals.shadowRoot(shadow.firstChild)', 'null');
}

var successfullyParsed = true;
@@ -1,6 +1,6 @@
PASS cloned.value is target.value
PASS layoutTestController.shadowPseudoId(clonedShadowRoot.firstChild) is layoutTestController.shadowPseudoId(targetShadowRoot.firstChild)
PASS layoutTestController.shadowPseudoId(clonedShadowRoot.firstChild.firstChild) is layoutTestController.shadowPseudoId(targetShadowRoot.firstChild.firstChild)
PASS internals.shadowPseudoId(clonedShadowRoot.firstChild) is internals.shadowPseudoId(targetShadowRoot.firstChild)
PASS internals.shadowPseudoId(clonedShadowRoot.firstChild.firstChild) is internals.shadowPseudoId(targetShadowRoot.firstChild.firstChild)
PASS clonedShadowRoot.firstChild.firstChild.style.width is "70%"
PASS targetShadowRoot.firstChild.firstChild.style.width is "50%"
PASS successfullyParsed is true
@@ -13,17 +13,17 @@
cloned = target.cloneNode();
document.body.insertBefore(cloned, target.nextSibling);

if (!window.layoutTestController) {
debug("You need layoutTestController to run this test.");
if (!window.internals) {
debug("You need internals to run this test.");
return;
}

targetShadowRoot = layoutTestController.shadowRoot(target);
clonedShadowRoot = layoutTestController.shadowRoot(cloned);
targetShadowRoot = internals.shadowRoot(target);
clonedShadowRoot = internals.shadowRoot(cloned);

shouldBe("cloned.value", "target.value");
shouldBe("layoutTestController.shadowPseudoId(clonedShadowRoot.firstChild)", "layoutTestController.shadowPseudoId(targetShadowRoot.firstChild)");
shouldBe("layoutTestController.shadowPseudoId(clonedShadowRoot.firstChild.firstChild)", "layoutTestController.shadowPseudoId(targetShadowRoot.firstChild.firstChild)");
shouldBe("internals.shadowPseudoId(clonedShadowRoot.firstChild)", "internals.shadowPseudoId(targetShadowRoot.firstChild)");
shouldBe("internals.shadowPseudoId(clonedShadowRoot.firstChild.firstChild)", "internals.shadowPseudoId(targetShadowRoot.firstChild.firstChild)");
cloned.value = 70;
shouldBe("clonedShadowRoot.firstChild.firstChild.style.width", '"70%"');
shouldBe("targetShadowRoot.firstChild.firstChild.style.width", '"50%"');
@@ -1,6 +1,6 @@
PASS cloned.value is target.value
PASS layoutTestController.shadowPseudoId(clonedShadowRoot.firstChild) is layoutTestController.shadowPseudoId(targetShadowRoot.firstChild)
PASS layoutTestController.shadowPseudoId(clonedShadowRoot.firstChild.firstChild) is layoutTestController.shadowPseudoId(targetShadowRoot.firstChild.firstChild)
PASS internals.shadowPseudoId(clonedShadowRoot.firstChild) is internals.shadowPseudoId(targetShadowRoot.firstChild)
PASS internals.shadowPseudoId(clonedShadowRoot.firstChild.firstChild) is internals.shadowPseudoId(targetShadowRoot.firstChild.firstChild)
PASS clonedShadowRoot.firstChild.firstChild.style.width is "70%"
PASS targetShadowRoot.firstChild.firstChild.style.width is "50%"
PASS successfullyParsed is true
@@ -13,17 +13,17 @@
cloned = target.cloneNode();
document.body.insertBefore(cloned, target.nextSibling);

if (!window.layoutTestController) {
debug("You need layoutTestController to run this test.");
if (!window.internals) {
debug("You need internals to run this test.");
return;
}

targetShadowRoot = layoutTestController.shadowRoot(target);
clonedShadowRoot = layoutTestController.shadowRoot(cloned);
targetShadowRoot = internals.shadowRoot(target);
clonedShadowRoot = internals.shadowRoot(cloned);

shouldBe("cloned.value", "target.value");
shouldBe("layoutTestController.shadowPseudoId(clonedShadowRoot.firstChild)", "layoutTestController.shadowPseudoId(targetShadowRoot.firstChild)");
shouldBe("layoutTestController.shadowPseudoId(clonedShadowRoot.firstChild.firstChild)", "layoutTestController.shadowPseudoId(targetShadowRoot.firstChild.firstChild)");
shouldBe("internals.shadowPseudoId(clonedShadowRoot.firstChild)", "internals.shadowPseudoId(targetShadowRoot.firstChild)");
shouldBe("internals.shadowPseudoId(clonedShadowRoot.firstChild.firstChild)", "internals.shadowPseudoId(targetShadowRoot.firstChild.firstChild)");

cloned.value = 70;
shouldBe("clonedShadowRoot.firstChild.firstChild.style.width", '"70%"');
@@ -29,7 +29,7 @@
layoutTestController.dumpAsText();

function shadowRoot(shadowHost) {
return layoutTestController.ensureShadowRoot(shadowHost);
return internals.ensureShadowRoot(shadowHost);
}

function appendChildToShadow(shadowHost, child) {
@@ -24,7 +24,7 @@
{
var target = document.createElement("div");
target.innerHTML = "<span>content</span>";
var root = layoutTestController.ensureShadowRoot(target);
var root = internals.ensureShadowRoot(target);

var child0 = document.createElement("span");
child0.innerHTML = "Hello,";
@@ -1,16 +1,16 @@
This tests that the JavaScript wrapper objects of shadow DOM objects
are not prematurely garbage collected.

PASS layoutTestController.shadowRoot(ps[0]).tattoo is "I <3 WebKit"
PASS layoutTestController.shadowRoot(ps[1]).tattoo is "I <3 WebKit"
PASS layoutTestController.shadowRoot(ps[2]).tattoo is "I <3 WebKit"
PASS layoutTestController.shadowRoot(ps[3]).tattoo is "I <3 WebKit"
PASS layoutTestController.shadowRoot(ps[4]).tattoo is "I <3 WebKit"
PASS layoutTestController.shadowRoot(ps[5]).tattoo is "I <3 WebKit"
PASS layoutTestController.shadowRoot(ps[6]).tattoo is "I <3 WebKit"
PASS layoutTestController.shadowRoot(ps[7]).tattoo is "I <3 WebKit"
PASS layoutTestController.shadowRoot(ps[8]).tattoo is "I <3 WebKit"
PASS layoutTestController.shadowRoot(ps[9]).tattoo is "I <3 WebKit"
PASS internals.shadowRoot(ps[0]).tattoo is "I <3 WebKit"
PASS internals.shadowRoot(ps[1]).tattoo is "I <3 WebKit"
PASS internals.shadowRoot(ps[2]).tattoo is "I <3 WebKit"
PASS internals.shadowRoot(ps[3]).tattoo is "I <3 WebKit"
PASS internals.shadowRoot(ps[4]).tattoo is "I <3 WebKit"
PASS internals.shadowRoot(ps[5]).tattoo is "I <3 WebKit"
PASS internals.shadowRoot(ps[6]).tattoo is "I <3 WebKit"
PASS internals.shadowRoot(ps[7]).tattoo is "I <3 WebKit"
PASS internals.shadowRoot(ps[8]).tattoo is "I <3 WebKit"
PASS internals.shadowRoot(ps[9]).tattoo is "I <3 WebKit"
PASS successfullyParsed is true

TEST COMPLETE
@@ -20,22 +20,22 @@
new String(i);
}

if (window.layoutTestController) {
if (window.internals) {
var ps = [];

for (var i = 0; i < 10; i++) {
var p = document.createElement('p');
ps.push(p);

var shadow = layoutTestController.ensureShadowRoot(p);
var shadow = internals.ensureShadowRoot(p);
shadow.tattoo = 'I <3 WebKit';
shadow = null;
}

gc();

for (i = 0; i < ps.length; i++) {
shouldBe('layoutTestController.shadowRoot(ps[' + i + ']).tattoo', '"I <3 WebKit"');
shouldBe('internals.shadowRoot(ps[' + i + ']).tattoo', '"I <3 WebKit"');
}
}

@@ -1,12 +1,12 @@

This tests that LayoutTestController can access shadow DOM.
This tests that layout tests can access shadow DOM.

PASS shadow.nodeName is "#shadow-root"
PASS layoutTestController.shadowRoot(shadow) is null
PASS layoutTestController.shadowRoot(p) is null
PASS exceptionCode is DOMException.INVALID_ACCESS_ERR
PASS internals.shadowRoot(p) is null
PASS shadow.nodeName is "#shadow-root"
PASS shadow === layoutTestController.shadowRoot(p) is true
PASS layoutTestController.shadowRoot(keygen) is null
PASS shadow === internals.shadowRoot(p) is true
PASS internals.shadowRoot(keygen) is null
PASS successfullyParsed is true

TEST COMPLETE
@@ -7,31 +7,38 @@
<keygen id="keys" />
<p id="peas" />
<pre id="console">
This tests that LayoutTestController can access shadow DOM.
This tests that layout tests can access shadow DOM.

</pre>
<script>
if (window.layoutTestController) {
if (window.internals) {
// Make assertions about a built-in shadow
var keygen = document.getElementById('keys');
var shadow = layoutTestController.shadowRoot(keygen);
var shadow = internals.shadowRoot(keygen);
shouldBe('shadow.nodeName', '"#shadow-root"');

// Shadow roots should not have shadows
shouldBe('layoutTestController.shadowRoot(shadow)', 'null');
// Shadow roots aren't elements, so accessing their shadow should
// raise
var exceptionCode;
try {
internals.shadowRoot(shadow);
} catch (e) {
exceptionCode = e.code;
}
shouldBe('exceptionCode', 'DOMException.INVALID_ACCESS_ERR');

// Ordinary element should not have shadow
var p = document.getElementById('peas');
shouldBe('layoutTestController.shadowRoot(p)', 'null');
shouldBe('internals.shadowRoot(p)', 'null');

// LayoutTestController can bless ordinary elements with shadows
shadow = layoutTestController.ensureShadowRoot(p);
// Can bless ordinary elements with shadows
shadow = internals.ensureShadowRoot(p);
shouldBe('shadow.nodeName', '"#shadow-root"');
shouldBe('shadow === layoutTestController.shadowRoot(p)', 'true');
shouldBe('shadow === internals.shadowRoot(p)', 'true');

// LayoutTestController can strip elements of shadows
layoutTestController.removeShadowRoot(keygen);
shouldBe('layoutTestController.shadowRoot(keygen)', 'null');
// Can strip elements of shadows
internals.removeShadowRoot(keygen);
shouldBe('internals.shadowRoot(keygen)', 'null');
}

var successfullyParsed = true;
@@ -13,7 +13,7 @@
layoutTestController.dumpAsText();

var keygen = document.getElementById('keys');
var shadow = layoutTestController.shadowRoot(keygen);
var shadow = internals.shadowRoot(keygen);
var shadowChild = shadow.firstChild;
shouldBe('keygen.nodeType', 'Node.ELEMENT_NODE');
shouldBe('shadow.nodeType', '14');
@@ -45,7 +45,7 @@
function addShadowHost(doc) {
var shadowHost = doc.createElement('p');
shadowHost.tabIndex = -1; // This shadow host (and a shadow tree in that) should be skipped.
var shadow = layoutTestController.ensureShadowRoot(shadowHost);
var shadow = internals.ensureShadowRoot(shadowHost);
doc.body.appendChild(shadowHost);
shadow.appendChild(createTextInputElement(doc, 'shadow-input-03', 0));
}
@@ -65,7 +65,7 @@
function addShadowHost(doc) {
var shadowHost = doc.createElement('p');
shadowHost.tabIndex = 1;
var shadow = layoutTestController.ensureShadowRoot(shadowHost);
var shadow = internals.ensureShadowRoot(shadowHost);
doc.body.appendChild(shadowHost);

shadow.appendChild(createTextInputElement(doc, 'iframe-shadow-input-08', 0));
@@ -122,7 +122,7 @@
document.body.appendChild(relatedTarget);
var target = document.createElement('div');
target.style.cssText = 'width: 50px; height: 50px';
layoutTestController.ensureShadowRoot(relatedTarget).appendChild(target);
internals.ensureShadowRoot(relatedTarget).appendChild(target);
moveOverLeftQuarterOf(relatedTarget);
var countEventDispatch = function()
{
@@ -144,7 +144,7 @@
document.body.appendChild(target);
var relatedTarget = document.createElement('div');
relatedTarget.style.cssText = 'width: 50px; height: 50px';
layoutTestController.ensureShadowRoot(target).appendChild(relatedTarget);
internals.ensureShadowRoot(target).appendChild(relatedTarget);
moveOverRightQuarterOf(target);
var countEventDispatch = function(evt)
{
@@ -4,7 +4,7 @@ function $(id) {

function getValidationMessageBubbleNode(host) {
// FIXME: We should search for a pseudo ID.
return layoutTestController.shadowRoot(host).lastChild;
return internals.shadowRoot(host).lastChild;
}

function getAbsoluteRect(element) {
@@ -2,7 +2,7 @@ Tests that a cloned keygen has the right shadow pseudo ID. You should see two bi


PASS specialK.clientHeight is k.clientHeight
PASS layoutTestController.shadowPseudoId(cloneShadow.firstChild) is layoutTestController.shadowPseudoId(kShadow.firstChild)
PASS internals.shadowPseudoId(cloneShadow.firstChild) is internals.shadowPseudoId(kShadow.firstChild)
PASS successfullyParsed is true

TEST COMPLETE
@@ -25,11 +25,11 @@

shouldBe('specialK.clientHeight', 'k.clientHeight');

if (window.layoutTestController) {
var kShadow = layoutTestController.shadowRoot(k);
var cloneShadow = layoutTestController.shadowRoot(specialK);
shouldBe('layoutTestController.shadowPseudoId(cloneShadow.firstChild)',
'layoutTestController.shadowPseudoId(kShadow.firstChild)');
if (window.internals) {
var kShadow = internals.shadowRoot(k);
var cloneShadow = internals.shadowRoot(specialK);
shouldBe('internals.shadowPseudoId(cloneShadow.firstChild)',
'internals.shadowPseudoId(kShadow.firstChild)');
}

var successfullyParsed = true;
@@ -2,7 +2,7 @@ Tests that a range input's slider is cloned along with its host. There should be


PASS dolly.clientHeight is sheep.clientHeight
PASS layoutTestController.shadowPseudoId(dollyShadow.firstChild) is layoutTestController.shadowPseudoId(sheepShadow.firstChild)
PASS internals.shadowPseudoId(dollyShadow.firstChild) is internals.shadowPseudoId(sheepShadow.firstChild)
PASS successfullyParsed is true

TEST COMPLETE
@@ -22,11 +22,11 @@
// symptom of a broken clone.
shouldBe('dolly.clientHeight', 'sheep.clientHeight');

if (window.layoutTestController) {
var sheepShadow = layoutTestController.shadowRoot(sheep);
var dollyShadow = layoutTestController.shadowRoot(dolly);
shouldBe('layoutTestController.shadowPseudoId(dollyShadow.firstChild)',
'layoutTestController.shadowPseudoId(sheepShadow.firstChild)');
if (window.internals) {
var sheepShadow = internals.shadowRoot(sheep);
var dollyShadow = internals.shadowRoot(dolly);
shouldBe('internals.shadowPseudoId(dollyShadow.firstChild)',
'internals.shadowPseudoId(sheepShadow.firstChild)');
}

dolly.value = 0;

0 comments on commit df658ed

Please sign in to comment.