| OLD | NEW |
| 1 <!DOCTYPE html> | 1 <!DOCTYPE html> |
| 2 <html> | 2 <html> |
| 3 <head> | 3 <head> |
| 4 <script src="resources/shadow-dom.js"></script> | 4 <script src="resources/shadow-dom.js"></script> |
| 5 <script src="../../../resources/js-test.js"></script> | 5 <script src="../../../resources/js-test.js"></script> |
| 6 </head> | 6 </head> |
| 7 <body> | 7 <body> |
| 8 <div id='sandbox'></div> | 8 <div id='sandbox'></div> |
| 9 <pre id='console'></pre> | 9 <pre id='console'></pre> |
| 10 </body> | 10 </body> |
| (...skipping 17 matching lines...) Expand all Loading... |
| 28 var text = 'borderColorOf(getNodeInTreeOfTrees("' + selector + '"))'; | 28 var text = 'borderColorOf(getNodeInTreeOfTrees("' + selector + '"))'; |
| 29 var unevaledString = '"' + color.replace(/\\/g, "\\\\").replace(/"/g, "\"")
+ '"'; | 29 var unevaledString = '"' + color.replace(/\\/g, "\\\\").replace(/"/g, "\"")
+ '"'; |
| 30 shouldNotBe(text, unevaledString); | 30 shouldNotBe(text, unevaledString); |
| 31 } | 31 } |
| 32 | 32 |
| 33 function cleanUp() | 33 function cleanUp() |
| 34 { | 34 { |
| 35 document.getElementById('sandbox').innerHTML = ''; | 35 document.getElementById('sandbox').innerHTML = ''; |
| 36 } | 36 } |
| 37 | 37 |
| 38 description('Test for /shadow/ combinator, http://crbug.com/309504.'); | 38 description('Test for ::shadow, http://crbug.com/309504.'); |
| 39 | 39 |
| 40 var sandbox = document.getElementById('sandbox'); | 40 var sandbox = document.getElementById('sandbox'); |
| 41 | 41 |
| 42 sandbox.appendChild( | 42 sandbox.appendChild( |
| 43 createDOM('div', {}, | 43 createDOM('div', {}, |
| 44 createDOM('style', {}, | 44 createDOM('style', {}, |
| 45 document.createTextNode('div /shadow/ span { border: 1px solid green
; }')), | 45 document.createTextNode('div::shadow > div { border: 1px solid green
; }')), |
| 46 createDOM('div', {'id': 'host'}, |
| 47 createShadowRoot( |
| 48 createDOM('div', {'id': 'top-div'}, |
| 49 createDOM('div', {'id': 'not-top-div'}), |
| 50 createDOM('span', {'id': 'not-top-span'})), |
| 51 createDOM('span', {'id': 'top-span'}))))); |
| 52 |
| 53 borderColorShouldBe('host/top-div', 'rgb(0, 128, 0)'); |
| 54 borderColorShouldNotBe('host/top-span', 'rgb(0, 128, 0)'); |
| 55 borderColorShouldNotBe('host/not-top-div', 'rgb(0, 128, 0)'); |
| 56 borderColorShouldNotBe('host/not-top-span', 'rgb(0, 128, 0)'); |
| 57 |
| 58 cleanUp(); |
| 59 |
| 60 sandbox.appendChild( |
| 61 createDOM('div', {}, |
| 62 createDOM('style', {}, |
| 63 document.createTextNode('::shadow ::shadow ::shadow span { border: 1
px solid green; }')), |
| 64 createDOM('div', {'id': 'host'}, |
| 65 createShadowRoot( |
| 66 createDOM('span', {'id': 'span1'}), |
| 67 createDOM('div', {'id': 'host1'}, |
| 68 createShadowRoot( |
| 69 createDOM('span', {'id': 'span2'}), |
| 70 createDOM('div', {'id': 'host2'}, |
| 71 createShadowRoot( |
| 72 createDOM('span', {'id': 'span3'}), |
| 73 createDOM('div', {'id': 'host3'}, |
| 74 createShadowRoot( |
| 75 createDOM('span', {'id': 'span4'})))))))
)))); |
| 76 |
| 77 borderColorShouldNotBe('host/span1', 'rgb(0, 128, 0)'); |
| 78 borderColorShouldNotBe('host/host1/span2', 'rgb(0, 128, 0)'); |
| 79 borderColorShouldBe('host/host1/host2/span3', 'rgb(0, 128, 0)'); |
| 80 borderColorShouldNotBe('host/host1/host2/host3/span4', 'rgb(0, 128, 0)'); |
| 81 |
| 82 cleanUp(); |
| 83 |
| 84 sandbox.appendChild( |
| 85 createDOM('div', {}, |
| 86 createDOM('style', {}, |
| 87 document.createTextNode('div::shadow span { border: 1px solid green;
}')), |
| 46 createDOM('div', {'id': 'host'}, | 88 createDOM('div', {'id': 'host'}, |
| 47 createShadowRoot( | 89 createShadowRoot( |
| 48 createDOM('span', {'id': 'target'}, | 90 createDOM('span', {'id': 'target'}, |
| 49 document.createTextNode('green border, because of hat.')))))
); | 91 document.createTextNode('green border, because of hat.')))))
); |
| 50 | 92 |
| 51 borderColorShouldBe('host/target', 'rgb(0, 128, 0)'); | 93 borderColorShouldBe('host/target', 'rgb(0, 128, 0)'); |
| 52 | 94 |
| 53 cleanUp(); | 95 cleanUp(); |
| 54 | 96 |
| 55 // Cascade order | 97 // Cascade order |
| 56 sandbox.appendChild( | 98 sandbox.appendChild( |
| 57 createDOM('div', {}, | 99 createDOM('div', {}, |
| 58 createDOM('style', {}, | 100 createDOM('style', {}, |
| 59 document.createTextNode('div /shadow/ span { border: 1px solid green
; }')), | 101 document.createTextNode('div::shadow span { border: 1px solid green;
}')), |
| 60 createDOM('div', {'id': 'host'}, | 102 createDOM('div', {'id': 'host'}, |
| 61 createShadowRoot( | 103 createShadowRoot( |
| 62 createDOM('style', {}, | 104 createDOM('style', {}, |
| 63 document.createTextNode('span { border: 1px solid red; }')), | 105 document.createTextNode('span { border: 1px solid red; }')), |
| 64 createDOM('span', {'id': 'target'}, | 106 createDOM('span', {'id': 'target'}, |
| 65 document.createTextNode('green border, because of hat.')))))
); | 107 document.createTextNode('green border, because of hat.')))))
); |
| 66 | 108 |
| 67 borderColorShouldBe('host/target', 'rgb(0, 128, 0)'); | 109 borderColorShouldBe('host/target', 'rgb(0, 128, 0)'); |
| 68 | 110 |
| 69 cleanUp(); | 111 cleanUp(); |
| 70 | 112 |
| 71 sandbox.appendChild( | 113 sandbox.appendChild( |
| 72 createDOM('div', {}, | 114 createDOM('div', {}, |
| 73 createDOM('style', {}, | 115 createDOM('style', {}, |
| 74 document.createTextNode('div /shadow/ span { border: 1px solid green
; }')), | 116 document.createTextNode('div::shadow span { border: 1px solid green;
}')), |
| 75 createDOM('div', {'id': 'host'}, | 117 createDOM('div', {'id': 'host'}, |
| 76 createShadowRoot( | 118 createShadowRoot( |
| 77 createDOM('style', {}, | 119 createDOM('style', {}, |
| 78 document.createTextNode('span#target { border: 1px solid red
; }')), | 120 document.createTextNode('span#target { border: 1px solid red
; }')), |
| 79 createDOM('span', {'id': 'target'}, | 121 createDOM('span', {'id': 'target'}, |
| 80 document.createTextNode('green border, because of hat.')))))
); | 122 document.createTextNode('green border, because of hat.')))))
); |
| 81 | 123 |
| 82 // Need to clarify the spec, i.e. using specificity? Currently rgb(255,0,0). | 124 // Need to clarify the spec, i.e. using specificity? Currently rgb(255,0,0). |
| 83 borderColorShouldBe('host/target', 'rgb(255, 0, 0)'); | 125 borderColorShouldBe('host/target', 'rgb(255, 0, 0)'); |
| 84 | 126 |
| 85 cleanUp(); | 127 cleanUp(); |
| 86 | 128 |
| 87 sandbox.appendChild( | 129 sandbox.appendChild( |
| 88 createDOM('div', {}, | 130 createDOM('div', {}, |
| 89 createDOM('style', {}, | 131 createDOM('style', {}, |
| 90 document.createTextNode('div#sandbox > div > div /shadow/ span { bor
der: 1px solid green; }')), | 132 document.createTextNode('div#sandbox > div > div::shadow span { bord
er: 1px solid green; }')), |
| 91 createDOM('div', {'id': 'host'}, | 133 createDOM('div', {'id': 'host'}, |
| 92 createShadowRoot( | 134 createShadowRoot( |
| 93 createDOM('span', {'id': 'target'}, | 135 createDOM('span', {'id': 'target'}, |
| 94 document.createTextNode('green border, because of hat.')))))
); | 136 document.createTextNode('green border, because of hat.')))))
); |
| 95 | 137 |
| 96 borderColorShouldBe('host/target', 'rgb(0, 128, 0)'); | 138 borderColorShouldBe('host/target', 'rgb(0, 128, 0)'); |
| 97 | 139 |
| 98 cleanUp(); | 140 cleanUp(); |
| 99 | 141 |
| 100 sandbox.appendChild( | 142 sandbox.appendChild( |
| 101 createDOM('div', {}, | 143 createDOM('div', {}, |
| 102 createDOM('style', {}, | 144 createDOM('style', {}, |
| 103 document.createTextNode('div /shadow/ span { border: 1px solid green
; }')), | 145 document.createTextNode('div::shadow span { border: 1px solid green;
}')), |
| 104 createDOM('div', {'id': 'host'}, | 146 createDOM('div', {'id': 'host'}, |
| 105 createShadowRoot( | 147 createShadowRoot( |
| 106 createDOM('style', {}, | 148 createDOM('style', {}, |
| 107 document.createTextNode('div > span { border: 1px solid red;
}')), | 149 document.createTextNode('div > span { border: 1px solid red;
}')), |
| 108 createDOM('div', {}, | 150 createDOM('div', {}, |
| 109 createDOM('span', {'id': 'target'}, | 151 createDOM('span', {'id': 'target'}, |
| 110 document.createTextNode('green border, because parent ha
t wins.'))))))); | 152 document.createTextNode('green border, because parent ha
t wins.'))))))); |
| 111 | 153 |
| 112 borderColorShouldBe('host/target', 'rgb(0, 128, 0)'); | 154 borderColorShouldBe('host/target', 'rgb(0, 128, 0)'); |
| 113 | 155 |
| 114 cleanUp(); | 156 cleanUp(); |
| 115 | 157 |
| 116 sandbox.appendChild( | 158 sandbox.appendChild( |
| 117 createDOM('div', {}, | 159 createDOM('div', {}, |
| 118 createDOM('style', {}, | 160 createDOM('style', {}, |
| 119 document.createTextNode('div /shadow/ span { border: 1px solid green
; }')), | 161 document.createTextNode('div::shadow span { border: 1px solid green;
}')), |
| 120 createDOM('div', {'id': 'host'}, | 162 createDOM('div', {'id': 'host'}, |
| 121 createShadowRoot( | 163 createShadowRoot( |
| 122 createDOM('style', {}, | 164 createDOM('style', {}, |
| 123 document.createTextNode(':host > span { border: 1px solid re
d; }')), | 165 document.createTextNode(':host > span { border: 1px solid re
d; }')), |
| 124 createDOM('span', {'id': 'target'}, | 166 createDOM('span', {'id': 'target'}, |
| 125 document.createTextNode('red border because of specificity.'
)))))); | 167 document.createTextNode('red border because of specificity.'
)))))); |
| 126 | 168 |
| 127 // Since :host's specificity is the same as *, div /shadow/ span wins. | 169 // Since :host's specificity is the same as *, div::shadow span wins. |
| 128 borderColorShouldBe('host/target', 'rgb(0, 128, 0)'); | 170 borderColorShouldBe('host/target', 'rgb(0, 128, 0)'); |
| 129 | 171 |
| 130 cleanUp(); | 172 cleanUp(); |
| 131 | 173 |
| 132 sandbox.appendChild( | 174 sandbox.appendChild( |
| 133 createDOM('div', {'id': 'host'}, | 175 createDOM('div', {'id': 'host'}, |
| 134 createShadowRoot( | 176 createShadowRoot( |
| 135 createDOM('style', {}, | 177 createDOM('style', {}, |
| 136 document.createTextNode(':host /shadow/ span { border: 1px solid
green; }')), | 178 document.createTextNode(':host::shadow span { border: 1px solid
green; }')), |
| 137 createDOM('span', {}, | 179 createDOM('span', {}, |
| 138 document.createTextNode('some text'))), | 180 document.createTextNode('some text'))), |
| 139 createShadowRoot( | 181 createShadowRoot( |
| 140 createDOM('shadow', {}), | 182 createDOM('shadow', {}), |
| 141 createDOM('span', {'id': 'target'}, | 183 createDOM('span', {'id': 'target'}, |
| 142 document.createTextNode('green border'))))); | 184 document.createTextNode('green border'))))); |
| 143 | 185 |
| 144 borderColorShouldBe('host//target', 'rgb(0, 128, 0)'); | 186 borderColorShouldBe('host//target', 'rgb(0, 128, 0)'); |
| 145 | 187 |
| 146 cleanUp(); | 188 cleanUp(); |
| 147 | 189 |
| 148 // div /shadow/ span's div cannot match a shadow host whose shadow tree contains
the style. | 190 // div::shadow span's div cannot match a shadow host whose shadow tree contains
the style. |
| 149 sandbox.appendChild( | 191 sandbox.appendChild( |
| 150 createDOM('div', {'id': 'host'}, | 192 createDOM('div', {'id': 'host'}, |
| 151 createShadowRoot( | 193 createShadowRoot( |
| 152 createDOM('style', {}, | 194 createDOM('style', {}, |
| 153 document.createTextNode('div /shadow/ span { border: 1px solid g
reen; }')), | 195 document.createTextNode('div::shadow span { border: 1px solid gr
een; }')), |
| 154 createDOM('span', {}, | 196 createDOM('span', {}, |
| 155 document.createTextNode('some text'))), | 197 document.createTextNode('some text'))), |
| 156 createShadowRoot( | 198 createShadowRoot( |
| 157 createDOM('shadow', {}), | 199 createDOM('shadow', {}), |
| 158 createDOM('span', {'id': 'target'}, | 200 createDOM('span', {'id': 'target'}, |
| 159 document.createTextNode('no border'))))); | 201 document.createTextNode('no border'))))); |
| 160 | 202 |
| 161 borderColorShouldBe('host//target', 'rgb(0, 0, 0)'); | 203 borderColorShouldBe('host//target', 'rgb(0, 0, 0)'); |
| 162 | 204 |
| 163 cleanUp(); | 205 cleanUp(); |
| 164 | 206 |
| 165 | 207 |
| 166 // div /shadow/ span can match [div -- sr -- span] in its sibling shadow tree. | 208 // div::shadow span can match [div -- sr -- span] in its sibling shadow tree. |
| 167 sandbox.appendChild( | 209 sandbox.appendChild( |
| 168 createDOM('div', {'id': 'host'}, | 210 createDOM('div', {'id': 'host'}, |
| 169 createShadowRoot( | 211 createShadowRoot( |
| 170 createDOM('style', {}, | 212 createDOM('style', {}, |
| 171 document.createTextNode('div /shadow/ span { border: 1px solid g
reen; }')), | 213 document.createTextNode('div::shadow span { border: 1px solid gr
een; }')), |
| 172 createDOM('span', {}, | 214 createDOM('span', {}, |
| 173 document.createTextNode('some text'))), | 215 document.createTextNode('some text'))), |
| 174 createShadowRoot( | 216 createShadowRoot( |
| 175 createDOM('shadow', {}), | 217 createDOM('shadow', {}), |
| 176 createDOM('div', {'id': 'host2'}, | 218 createDOM('div', {'id': 'host2'}, |
| 177 createShadowRoot( | 219 createShadowRoot( |
| 178 createDOM('span', {'id': 'target'}, | 220 createDOM('span', {'id': 'target'}, |
| 179 document.createTextNode('green border'))))))); | 221 document.createTextNode('green border'))))))); |
| 180 | 222 |
| 181 borderColorShouldBe('host//host2/target', 'rgb(0, 128, 0)'); | 223 borderColorShouldBe('host//host2/target', 'rgb(0, 128, 0)'); |
| 182 | 224 |
| 183 cleanUp(); | 225 cleanUp(); |
| 184 | 226 |
| 185 // :host div /shadow/ div should match. | 227 // :host div::shadow div should match. |
| 186 sandbox.appendChild( | 228 sandbox.appendChild( |
| 187 createDOM('div', {'id': 'host'}, | 229 createDOM('div', {'id': 'host'}, |
| 188 createShadowRoot( | 230 createShadowRoot( |
| 189 createDOM('style', {}, | 231 createDOM('style', {}, |
| 190 document.createTextNode(':host div /shadow/ div { border: 1px so
lid green; }')), | 232 document.createTextNode(':host div::shadow div { border: 1px sol
id green; }')), |
| 191 createDOM('div', {'id': 'host2'}, | 233 createDOM('div', {'id': 'host2'}, |
| 192 createShadowRoot( | 234 createShadowRoot( |
| 193 createDOM('div', {'id': 'target'}, | 235 createDOM('div', {'id': 'target'}, |
| 194 document.createTextNode('green border'))))))); | 236 document.createTextNode('green border'))))))); |
| 195 | 237 |
| 196 borderColorShouldBe('host/host2/target', 'rgb(0, 128, 0)'); | 238 borderColorShouldBe('host/host2/target', 'rgb(0, 128, 0)'); |
| 197 | 239 |
| 198 cleanUp(); | 240 cleanUp(); |
| 199 | 241 |
| 200 // div:host | 242 // div:host |
| 201 sandbox.appendChild( | 243 sandbox.appendChild( |
| 202 createDOM('div', {'id': 'host'}, | 244 createDOM('div', {'id': 'host'}, |
| 203 createShadowRoot( | 245 createShadowRoot( |
| 204 createDOM('style', {}, | 246 createDOM('style', {}, |
| 205 document.createTextNode('div:host /shadow/ span { border: 1px so
lid green; }')), | 247 document.createTextNode('div:host::shadow span { border: 1px sol
id green; }')), |
| 206 createDOM('span', {'id': 'target'}, | 248 createDOM('span', {'id': 'target'}, |
| 207 document.createTextNode('no border, because div:host matches not
hing.'))))); | 249 document.createTextNode('no border, because div:host matches not
hing.'))))); |
| 208 | 250 |
| 209 borderColorShouldBe('host/target', 'rgb(0, 0, 0)'); | 251 borderColorShouldBe('host/target', 'rgb(0, 0, 0)'); |
| 210 | 252 |
| 211 cleanUp(); | 253 cleanUp(); |
| 212 | 254 |
| 213 // div (=shadow host) div /shadow/ div should not match. | 255 // div (=shadow host) div::shadow div should not match. |
| 214 | 256 |
| 215 sandbox.appendChild( | 257 sandbox.appendChild( |
| 216 createDOM('div', {'id': 'host'}, | 258 createDOM('div', {'id': 'host'}, |
| 217 createShadowRoot( | 259 createShadowRoot( |
| 218 createDOM('style', {}, | 260 createDOM('style', {}, |
| 219 document.createTextNode('div > div /shadow/ div { border: 1px so
lid green; }')), | 261 document.createTextNode('div > div::shadow div { border: 1px sol
id green; }')), |
| 220 createDOM('div', {'id': 'host2'}, | 262 createDOM('div', {'id': 'host2'}, |
| 221 createShadowRoot( | 263 createShadowRoot( |
| 222 createDOM('div', {'id': 'target'}, | 264 createDOM('div', {'id': 'target'}, |
| 223 document.createTextNode('no border'))))))); | 265 document.createTextNode('no border'))))))); |
| 224 | 266 |
| 225 borderColorShouldBe('host/host2/target', 'rgb(0, 0, 0)'); | 267 borderColorShouldBe('host/host2/target', 'rgb(0, 0, 0)'); |
| 226 | 268 |
| 227 cleanUp(); | 269 cleanUp(); |
| 228 | 270 |
| 229 // div + div /shadow/ div should match. | 271 // div + div::shadow div should match. |
| 230 | 272 |
| 231 sandbox.appendChild( | 273 sandbox.appendChild( |
| 232 createDOM('div', {'id': 'host'}, | 274 createDOM('div', {'id': 'host'}, |
| 233 createShadowRoot( | 275 createShadowRoot( |
| 234 createDOM('style', {}, | 276 createDOM('style', {}, |
| 235 document.createTextNode('div + div /shadow/ div { border: 1px so
lid green; }')), | 277 document.createTextNode('div + div::shadow div { border: 1px sol
id green; }')), |
| 236 createDOM('div', {}, | 278 createDOM('div', {}, |
| 237 document.createTextNode('sibling')), | 279 document.createTextNode('sibling')), |
| 238 createDOM('div', {'id': 'host2'}, | 280 createDOM('div', {'id': 'host2'}, |
| 239 createShadowRoot( | 281 createShadowRoot( |
| 240 createDOM('div', {'id': 'target'}, | 282 createDOM('div', {'id': 'target'}, |
| 241 document.createTextNode('green border'))))))); | 283 document.createTextNode('green border'))))))); |
| 242 | 284 |
| 243 borderColorShouldBe('host/host2/target', 'rgb(0, 128, 0)'); | 285 borderColorShouldBe('host/host2/target', 'rgb(0, 128, 0)'); |
| 244 | 286 |
| 245 cleanUp(); | 287 cleanUp(); |
| 246 | 288 |
| 247 // :host + div /shadow/ div should not match. | 289 // :host + div::shadow div should not match. |
| 248 | 290 |
| 249 sandbox.appendChild( | 291 sandbox.appendChild( |
| 250 createDOM('div', {'id': 'host'}, | 292 createDOM('div', {'id': 'host'}, |
| 251 createShadowRoot( | 293 createShadowRoot( |
| 252 createDOM('style', {}, | 294 createDOM('style', {}, |
| 253 document.createTextNode(':host + div /shadow/ div { border: 1px
solid green; }')), | 295 document.createTextNode(':host + div::shadow div { border: 1px s
olid green; }')), |
| 254 createDOM('div', {'id': 'siblingShadow'}, | 296 createDOM('div', {'id': 'siblingShadow'}, |
| 255 createShadowRoot( | 297 createShadowRoot( |
| 256 createDOM('div', {}, | 298 createDOM('div', {}, |
| 257 document.createTextNode('sibling')))), | 299 document.createTextNode('sibling')))), |
| 258 createDOM('div', {'id': 'host2'}, | 300 createDOM('div', {'id': 'host2'}, |
| 259 createShadowRoot( | 301 createShadowRoot( |
| 260 createDOM('div', {'id': 'target'}, | 302 createDOM('div', {'id': 'target'}, |
| 261 document.createTextNode('no border'))))))); | 303 document.createTextNode('no border'))))))); |
| 262 | 304 |
| 263 borderColorShouldBe('host/host2/target', 'rgb(0, 0, 0)'); | 305 borderColorShouldBe('host/host2/target', 'rgb(0, 0, 0)'); |
| 264 | 306 |
| 265 cleanUp(); | 307 cleanUp(); |
| 266 | 308 |
| 267 // div /shadow/ span in an older shadow tree cannot match any element in active
shadow tree. | 309 // div::shadow span in an insert shadow tree cannot match any element in active
shadow tree. |
| 268 sandbox.appendChild( | 310 sandbox.appendChild( |
| 269 createDOM('div', {'id': 'host'}, | 311 createDOM('div', {'id': 'host'}, |
| 270 createShadowRoot( | 312 createShadowRoot( |
| 271 createDOM('style', {}, | 313 createDOM('style', {}, |
| 272 document.createTextNode('div /shadow/ span { border: 1px solid g
reen; }')), | 314 document.createTextNode('div::shadow span { border: 1px solid gr
een; }')), |
| 273 createDOM('span', {}, | 315 createDOM('span', {}, |
| 274 document.createTextNode('some text'))), | 316 document.createTextNode('some text'))), |
| 275 createShadowRoot( | 317 createShadowRoot( |
| 276 createDOM('div', {'id': 'host2'}, | 318 createDOM('div', {'id': 'host2'}, |
| 277 createShadowRoot( | 319 createShadowRoot( |
| 278 createDOM('span', {'id': 'target'}, | 320 createDOM('span', {'id': 'target'}, |
| 279 document.createTextNode('green border'))))))); | 321 document.createTextNode('green border'))))))); |
| 280 | 322 |
| 281 borderColorShouldBe('host//host2/target', 'rgb(0, 128, 0)'); | 323 borderColorShouldBe('host//host2/target', 'rgb(0, 128, 0)'); |
| 282 | 324 |
| 283 cleanUp(); | 325 cleanUp(); |
| 284 | 326 |
| 285 </script> | 327 </script> |
| 286 </html> | 328 </html> |
| 287 | 329 |
| OLD | NEW |