OLD | NEW |
(Empty) | |
| 1 <!doctype html> |
| 2 <html> |
| 3 <head> |
| 4 <script src="../resources/runner.js"></script> |
| 5 </head> |
| 6 <body><iframe></iframe> |
| 7 </body> |
| 8 <script> |
| 9 function setup() { |
| 10 var frame = document.getElementsByTagName("iframe")[0]; |
| 11 var testDoc = frame.contentDocument; |
| 12 var docText = "<head>"; |
| 13 docText += "<template id='templateA'><style>@host{:scope{display:block}}ul.c
anaryisdev li:nth-of-type(4)::after{content:'canary/dev'}ul.canaryisdev li:nth-o
f-type(5)::after{content:'beta'}ul.canaryisdev li:nth-of-type(6)::after{content:
'stable'}ul.canaryisdev li:nth-of-type(7)::after{content:''}ul.betaisdev li:nth-
of-type(4)::after{content:'canary'}ul.betaisdev li:nth-of-type(5)::after{content
:'dev/beta'}ul.betaisdev li:nth-of-type(6)::after{content:'stable'}ul.betaisdev
li:nth-of-type(7)::after{content:''}ul li{cursor:pointer;padding:3px 0}ul li::be
fore{-webkit-transition:all 500ms ease;-moz-transition:all 500ms ease;-o-transit
ion:all 500ms ease;transition:all 500ms ease;content:'';margin-right:5px;border-
left:3px solid transparent}ul li::after{font-size:75%;margin-left:10px}ul li:fir
st-of-type,ul li:nth-of-type(2),ul li:nth-of-type(3){font-size:75%;font-style:it
alic}ul li:nth-of-type(3){border-bottom:1px solid #d4d4d4;padding-bottom:10px;ma
rgin-bottom:5px}ul li:nth-of-type(4)::after{content:'canary'}ul li:nth-of-type(5
)::after{content:'dev'}ul li:nth-of-type(6)::after{content:'beta'}ul li:nth-of-t
ype(7)::after{content:'stable'}ul li[selected]{font-weight:600;color:#366597}ul
li[selected]::before{border-color:#366597}</style><div>TemplateA</div></template
>"; |
| 14 docText += "<template id='templateB'><style>@host{:scope{display:block;paddi
ng:1px}}.milestone-marker{text-align:right;text-transform:uppercase;margin-top:1
0px;font-weight:600;font-size:14px;color:#366597}@media only screen and (max-wid
th: 700px){[data-first-of-milestone]:after{font-size:12px;font-weight:normal;top
:-22px;opacity:1;text-transform:uppercase}}</style><div>TemplateB</div></templat
e>"; |
| 15 docText += "</head><body>"; |
| 16 docText += "<div id='sandbox'></div></body>"; |
| 17 testDoc.body.innerHTML = docText; |
| 18 return testDoc; |
| 19 } |
| 20 |
| 21 PerfTestRunner.measureTime({run:function() { |
| 22 var testDoc = setup(); |
| 23 var start = PerfTestRunner.now(); |
| 24 var sandbox = testDoc.getElementById('sandbox'); |
| 25 var templateA = testDoc.getElementById('templateA'); |
| 26 var templateB = testDoc.getElementById('templateB'); |
| 27 for (var i = 0; i < 100; i++) { |
| 28 var elementA = testDoc.createElement("div"); |
| 29 var shadowRootForA = elementA.createShadowRoot(); |
| 30 shadowRootForA.appendChild(templateA.content.cloneNode()); |
| 31 sandbox.appendChild(elementA); |
| 32 |
| 33 var elementB = testDoc.createElement("div"); |
| 34 var shadowRootForB = elementB.createShadowRoot(); |
| 35 shadowRootForB.appendChild(templateB.content.cloneNode()); |
| 36 sandbox.appendChild(elementB); |
| 37 } |
| 38 return PerfTestRunner.now() - start; |
| 39 }}); |
| 40 </script> |
| 41 </html> |
OLD | NEW |