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

Side by Side Diff: third_party/WebKit/LayoutTests/fast/dom/Element/script-tests/getAttribute-check-case-sensitivity.js

Issue 2667393002: Stop using script-tests in fast/dom/. (Closed)
Patch Set: . Created 3 years, 10 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
(Empty)
1 description(
2 "<p>This file test the behaviour of getAttribute with regard to case.</p><p>See Bug 20247: setAttributeNode() does not work when attribute name has a capital le tter in it</p>"
3 );
4
5 function testGetAttributeCaseInsensitive()
6 {
7 var div = document.createElement('div');
8 div.setAttribute("mixedCaseAttrib", "x");
9
10 // Do original case lookup, and lowercase lookup.
11 return div.getAttribute("mixedcaseattrib");
12 }
13
14 shouldBe("testGetAttributeCaseInsensitive()", '"x"');
15
16 function testGetAttributeNodeMixedCase()
17 {
18 var div = document.createElement('div');
19 var a = div.ownerDocument.createAttribute("mixedCaseAttrib");
20 a.value = "x";
21 div.setAttributeNode(a);
22 return div.getAttribute("mixedCaseAttrib");
23 }
24
25 shouldBe("testGetAttributeNodeMixedCase()", '"x"');
26
27 function testGetAttributeNodeLowerCase(div)
28 {
29 var div = document.createElement('div');
30 var a = div.ownerDocument.createAttribute("lowercaseattrib");
31 a.value = "x";
32 div.setAttributeNode(a);
33 return div.getAttribute("lowerCaseAttrib");
34 }
35
36 shouldBe("testGetAttributeNodeLowerCase()", '"x"');
37
38 function testSetAttributeNodeKeepsRef(div)
39 {
40 var div = document.createElement('div');
41 var a = div.ownerDocument.createAttribute("attrib_name");
42 a.value = "0";
43 div.setAttributeNode(a);
44
45 // Mutate the attribute node.
46 a.value = "1";
47
48 return div.getAttribute("attrib_name");
49 }
50
51 shouldBe("testSetAttributeNodeKeepsRef()", '"1"');
52
53 function testAttribNodeNamePreservesCase()
54 {
55 var div = document.createElement('div');
56 var a = div.ownerDocument.createAttribute("A");
57 a.value = "x";
58 div.setAttributeNode(a);
59
60 var result = [ a.name, a.nodeName ];
61 return result.join(",");
62 }
63
64 shouldBe("testAttribNodeNamePreservesCase()", '"a,a"');
65
66
67 function testAttribNodeNamePreservesCaseGetNode()
68 {
69 // getAttributeNode doesn't work on DIVs, use body element
70 var body = document.body;
71
72 var a = body.ownerDocument.createAttribute("A");
73 a.value = "x";
74
75 body.setAttributeNode(a);
76
77 a = document.body.getAttributeNode("A");
78 if (!a)
79 return "FAIL";
80
81 var result = [ a.name, a.nodeName ];
82 return result.join(",");
83 }
84
85 shouldBe("testAttribNodeNamePreservesCaseGetNode()", '"a,a"');
86
87 function testAttribNodeNamePreservesCaseGetNode2()
88 {
89 // getAttributeNode doesn't work on DIVs, use body element
90 var body = document.body;
91
92 var a = body.ownerDocument.createAttribute("B");
93 a.value = "x";
94
95 body.setAttributeNode(a);
96
97 a = document.body.getAttributeNode("B");
98 if (!a)
99 return "FAIL";
100
101 // Now create node second time -- this time case is preserved in FF!
102 a = body.ownerDocument.createAttribute("B");
103 a.value = "x";
104 body.setAttributeNode(a);
105
106 a = document.body.getAttributeNode("B");
107
108 var result = [ a.name, a.nodeName ];
109 return result.join(",");
110 }
111
112 shouldBe("testAttribNodeNamePreservesCaseGetNode2()", '"b,b"');
113
114 function testAttribNodeNameGetMutate()
115 {
116 // getAttributeNode doesn't work on DIVs, use body element.
117 var body = document.body;
118
119 var a = body.ownerDocument.createAttribute("c");
120 a.value = "0";
121 body.setAttributeNode(a);
122
123 a = document.body.getAttributeNode("c");
124 a.value = "1";
125
126 a = document.body.getAttributeNode("c");
127
128 return a.value;
129 }
130
131 shouldBe("testAttribNodeNameGetMutate()", '"1"');
132
133 var node = document.createElement("div");
134 var attrib = document.createAttribute("myAttrib");
135 attrib.value = "XXX";
136 node.setAttributeNode(attrib);
137
138 shouldBe("(new XMLSerializer).serializeToString(node)", '"<div xmlns=\\"http://w ww.w3.org/1999/xhtml\\" myattrib=\\"XXX\\"></div>"');
139 shouldBe("node.getAttributeNode('myAttrib').name", '"myattrib"');
140 shouldBe("node.getAttributeNode('myattrib').name", '"myattrib"');
141 shouldBe("attrib.name", '"myattrib"');
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698