| <script src="../../../resources/js-test.js"></script> |
| <div id="test" style="background-color: red"></div> |
| description("Updating value of replaced attribute node"); |
| var element = document.getElementById("test"); |
| var attr = document.createAttribute("STYLE"); |
| // This aligns with Trident rather than Gecko. |
| shouldBeEqualToString("replaced = element.setAttributeNode(attr); replaced.name", "STYLE"); |
| shouldBeEqualToString("replaced.value", "background-color: red"); |
| shouldBeEqualToString("attr.name", "STYLE"); |
| shouldBeEqualToString("attr.value", ""); |
| shouldBeEqualToString("element.getAttribute('style')", ""); |
| shouldBeEqualToString("element.getAttribute('StyLE')", ""); |
| // Setting the value must correctly locate attribute on the element and update it, |
| // even if the local name differs. PASS if no crash (crbug.com/376718) |
| shouldBeEqualToString("attr.value = 'background-color: green'; attr.value", "background-color: green"); |
| shouldBeEqualToString("element.getAttribute('stylE')", "background-color: green"); |