| Index: LayoutTests/fast/dom/Element/setAttributeNode-for-existing-attribute-html.html | 
| diff --git a/LayoutTests/fast/dom/Element/setAttributeNode-for-existing-attribute-html.html b/LayoutTests/fast/dom/Element/setAttributeNode-for-existing-attribute-html.html | 
| new file mode 100644 | 
| index 0000000000000000000000000000000000000000..677059cbf519d32e1f4053a5ac6e9138414a8d8d | 
| --- /dev/null | 
| +++ b/LayoutTests/fast/dom/Element/setAttributeNode-for-existing-attribute-html.html | 
| @@ -0,0 +1,31 @@ | 
| +<!DOCTYPE html> | 
| +<html> | 
| +<head> | 
| +<script src="../../js/resources/js-test-pre.js"></script> | 
| +<script> | 
| +    description('Testcase for bug <a href="http://crbug.com/279193">279193</a>: setAttributeNode() does not set the new value to an existing attribute if specified attribute is in a different case.\nThis testcase verifies that attributes with the same name but in different case are overwritten for HTML documents.'); | 
| + | 
| +    var doc = document.implementation.createHTMLDocument(''); | 
| +    doc.documentElement.setAttribute('x', 'x'); | 
| + | 
| +    var attr = doc.createAttribute('X'); | 
| +    attr.value = 'X'; | 
| +    doc.documentElement.setAttributeNode(attr); | 
| + | 
| +    shouldBe('doc.documentElement.attributes.length', '1'); | 
| +    shouldBeEqualToString('doc.documentElement.getAttribute("x")', 'X'); | 
| +    shouldBeEqualToString('doc.documentElement.getAttribute("X")', 'X'); | 
| + | 
| +    var attr2 = doc.createAttribute('X'); | 
| +    attr2.value = 'Y'; | 
| +    doc.documentElement.setAttributeNode(attr2); | 
| + | 
| +    shouldBe('doc.documentElement.attributes.length', '1'); | 
| +    shouldBeEqualToString('doc.documentElement.getAttribute("x")', 'Y'); | 
| +    shouldBeEqualToString('doc.documentElement.getAttribute("X")', 'Y'); | 
| +</script> | 
| +</head> | 
| +<body> | 
| +<script src="../../js/resources/js-test-post.js"></script> | 
| +</body> | 
| +</html> | 
|  |