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

Side by Side Diff: third_party/WebKit/LayoutTests/fast/dom/shadow/resources/shadow-dom.js

Issue 1408443003: Add Element.attachShadow under the ShadowDOMV1 runtime flag (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rewrite a test Created 5 years, 2 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
1 // TODO(hayato): Have both createShadowRoot and attachShadow.
1 function createShadowRoot() 2 function createShadowRoot()
2 { 3 {
3 var children = Array.prototype.slice.call(arguments); 4 var children = Array.prototype.slice.call(arguments);
4 if ((children[0] instanceof Object) && !(children[0] instanceof Node)) { 5 if ((children[0] instanceof Object) && !(children[0] instanceof Node)) {
5 var attributes = {}; 6 var attributes = {};
6 var parameter = {}; 7 var parameter = {};
7 for (var key in children[0]) { 8 for (var key in children[0]) {
8 if (key == 'mode' || key == 'delegatesFocus') 9 if (key == 'mode' || key == 'delegatesFocus')
9 parameter[key] = children[0][key]; 10 parameter[key] = children[0][key];
10 else 11 else
(...skipping 23 matching lines...) Expand all
34 element.setAttribute(name, attributes[name]); 35 element.setAttribute(name, attributes[name]);
35 var childElements = Array.prototype.slice.call(arguments, 2); 36 var childElements = Array.prototype.slice.call(arguments, 2);
36 for (var i = 0; i < childElements.length; ++i) { 37 for (var i = 0; i < childElements.length; ++i) {
37 var child = childElements[i]; 38 var child = childElements[i];
38 if (child.isShadowRoot) { 39 if (child.isShadowRoot) {
39 var shadowRoot; 40 var shadowRoot;
40 if (child.isUserAgentShadowRoot) { 41 if (child.isUserAgentShadowRoot) {
41 shadowRoot = window.internals.createUserAgentShadowRoot(element) ; 42 shadowRoot = window.internals.createUserAgentShadowRoot(element) ;
42 } else { 43 } else {
43 if (child.parameter && Object.keys(child.parameter).length > 0) 44 if (child.parameter && Object.keys(child.parameter).length > 0)
44 shadowRoot = element.createShadowRoot(child.parameter); 45 shadowRoot = element.attachShadow(child.parameter);
45 else 46 else
46 shadowRoot = element.createShadowRoot(); 47 shadowRoot = element.createShadowRoot();
47 } 48 }
48 if (child.attributes) { 49 if (child.attributes) {
49 for (var attribute in child.attributes) { 50 for (var attribute in child.attributes) {
50 // Shadow Root does not have setAttribute. 51 // Shadow Root does not have setAttribute.
51 shadowRoot[attribute] = child.attributes[attribute]; 52 shadowRoot[attribute] = child.attributes[attribute];
52 } 53 }
53 } 54 }
54 for (var j = 0; j < child.children.length; ++j) 55 for (var j = 0; j < child.children.length; ++j)
(...skipping 235 matching lines...) Expand 10 before | Expand all | Expand 10 after
290 { 291 {
291 shouldBeEqualToString('backgroundColorOf(\'' + selector + '\')', expected); 292 shouldBeEqualToString('backgroundColorOf(\'' + selector + '\')', expected);
292 } 293 }
293 294
294 function backgroundColorShouldNotBe(selector, color) 295 function backgroundColorShouldNotBe(selector, color)
295 { 296 {
296 var text = 'backgroundColorOf(\'' + selector + '\')'; 297 var text = 'backgroundColorOf(\'' + selector + '\')';
297 var unevaledString = '"' + color.replace(/\\/g, "\\\\").replace(/"/g, "\"") + '"'; 298 var unevaledString = '"' + color.replace(/\\/g, "\\\\").replace(/"/g, "\"") + '"';
298 shouldNotBe(text, unevaledString); 299 shouldNotBe(text, unevaledString);
299 } 300 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698