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

Side by Side Diff: third_party/WebKit/LayoutTests/fast/css/pseudo-default-dynamic.html

Issue 1768913002: Dynamic updation of checked and selected attributes should reflect correct :default status (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 9 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
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 <!DOCTYPE html> 1 <!DOCTYPE html>
2 <script src="../../resources/testharness.js"></script> 2 <script src="../../resources/testharness.js"></script>
3 <script src="../../resources/testharnessreport.js"></script> 3 <script src="../../resources/testharnessreport.js"></script>
4 <div id="log"></div> 4 <div id="log"></div>
5 <div id="container"></div> 5 <div id="container"></div>
6 <style> 6 <style>
7 button, input { background: red; } 7 button, input, option { background: red; }
8 button:default, input:default { background: green; } 8 button:default, input:default, option:default { background: green; }
9 </style> 9 </style>
10 <script> 10 <script>
11 // TODO(tkent): This should be merged to web-platform-tests/html/semantics/selec tors/pseudo-classes/default.html. 11 // TODO(tkent): This should be merged to web-platform-tests/html/semantics/selec tors/pseudo-classes/default.html.
12 12
13 var container = document.querySelector('#container'); 13 var container = document.querySelector('#container');
14 const DEFAULT = 'rgb(0, 128, 0)'; 14 const DEFAULT = 'rgb(0, 128, 0)';
15 const NOT_DEFAULT = 'rgb(255, 0, 0)'; 15 const NOT_DEFAULT = 'rgb(255, 0, 0)';
16 16
17 function background(id) { 17 function background(id) {
18 return document.defaultView.getComputedStyle(document.getElementById(id), nu ll).getPropertyValue('background-color'); 18 return document.defaultView.getComputedStyle(document.getElementById(id), nu ll).getPropertyValue('background-color');
(...skipping 60 matching lines...) Expand 10 before | Expand all | Expand 10 after
79 79
80 test(function() { 80 test(function() {
81 container.innerHTML = '<input type=submit id=added><form id=f1><input type=s ubmit id=second></form>'; 81 container.innerHTML = '<input type=submit id=added><form id=f1><input type=s ubmit id=second></form>';
82 assert_equals(background('added'), NOT_DEFAULT); 82 assert_equals(background('added'), NOT_DEFAULT);
83 assert_equals(background('second'), DEFAULT); 83 assert_equals(background('second'), DEFAULT);
84 document.querySelector('#added').setAttribute('form', 'f1'); 84 document.querySelector('#added').setAttribute('form', 'f1');
85 assert_equals(background('added'), DEFAULT, 'added button should be default. '); 85 assert_equals(background('added'), DEFAULT, 'added button should be default. ');
86 assert_equals(background('second'), NOT_DEFAULT); 86 assert_equals(background('second'), NOT_DEFAULT);
87 }, 'Adding a button by form content attribute should update the default button.' ); 87 }, 'Adding a button by form content attribute should update the default button.' );
88 88
89 test(function() {
90 container.innerHTML = '<form><input type=checkbox checked id=c1><input type= text checked id=t1></form>';
91 assert_equals(background('c1'), DEFAULT);
92 assert_equals(background('t1'), NOT_DEFAULT);
93 document.querySelector('#c1').type = 'text';
94 document.querySelector('#t1').type = 'checkbox';
95 assert_equals(background('c1'), NOT_DEFAULT);
96 assert_equals(background('t1'), DEFAULT);
97 }, 'Updating type attribute of :default checkbox should update default status');
98
99 test(function() {
100 container.innerHTML = '<form><input type=radio checked id=r1><input type=tex t checked id=t1></form>';
101 assert_equals(background('r1'), DEFAULT);
102 assert_equals(background('t1'), NOT_DEFAULT);
103 document.querySelector('#r1').type = 'text';
104 document.querySelector('#t1').type = 'radio';
105 assert_equals(background('r1'), NOT_DEFAULT);
106 assert_equals(background('t1'), DEFAULT);
107 }, 'Updating type attribute of :default radio should update default status');
108
109 test(function() {
110 container.innerHTML = '<form><input type=checkbox checked id=c1><input type= radio checked id=r1></form>';
111 assert_equals(background('c1'), DEFAULT);
112 assert_equals(background('r1'), DEFAULT);
113 document.querySelector('#c1').defaultChecked = false;
114 document.querySelector('#r1').defaultChecked = false;
115 assert_equals(background('c1'), NOT_DEFAULT);
116 assert_equals(background('r1'), NOT_DEFAULT);
117 }, 'Updating the checked attribute of :default checkbox or radio should update d efault status');
118
119 test(function() {
120 container.innerHTML = '<form><input type=checkbox id=second></form>';
121 assert_equals(background('second'), NOT_DEFAULT);
122 var input = document.createElement('input');
123 input.id='added';
124 input.type = 'checkbox';
125 input.defaultChecked = true;
126 document.querySelector('form').insertBefore(input, document.querySelector('# second'));
127 assert_equals(background('added'), DEFAULT);
128 }, 'Adding a checkbox with checked attribute dynamically to a DOM tree should re flect the default checkbox.');
tkent 2016/03/07 05:22:34 Plese remove this test. This test isn't helpful be
ramya.v 2016/03/07 10:03:02 Done.
129
130 test(function() {
131 container.innerHTML = '<form><input type=radio id=second></form>';
132 assert_equals(background('second'), NOT_DEFAULT);
133 var input = document.createElement('input');
134 input.id='added';
135 input.type = 'radio';
136 input.defaultChecked = true;
137 document.querySelector('form').insertBefore(input, document.querySelector('# second'));
138 assert_equals(background('added'), DEFAULT);
139 }, 'Adding a radio element with checked attribute dynamically to a DOM tree shou ld reflect the default radio element.');
tkent 2016/03/07 05:22:33 Ditto.
ramya.v 2016/03/07 10:03:02 Done.
140
141 test(function() {
142 container.innerHTML = '<form><select><option selected id=o1>1</option><optio n id=o2>2</option></select></form>';
143 assert_equals(background('o1'), DEFAULT);
144 assert_equals(background('o2'), NOT_DEFAULT);
145 document.querySelector('#o1').defaultSelected = false;
146 document.querySelector('#o2').defaultSelected = true;
147 assert_equals(background('o1'), NOT_DEFAULT);
148 assert_equals(background('o2'), DEFAULT);
149
150 }, 'Updating the selected attribute of :default option element should update def ault status');
151
152 test(function() {
153 container.innerHTML = '<form><select><option id=first>1</option></select></f orm>';
154 assert_equals(background('first'), NOT_DEFAULT);
155 var option = document.createElement('option');
156 option.id='added';
157 option.value = '2';
158 option.defaultSelected = true;
159 document.querySelector('select').appendChild(option);
160 assert_equals(background('added'), DEFAULT);
161
162 }, 'Adding an option element dynamically to a DOM tree should reflect default op tion element.');
tkent 2016/03/07 05:22:33 Ditto.
ramya.v 2016/03/07 10:03:02 Done.
163
89 </script> 164 </script>
tkent 2016/03/07 05:22:34 Please add the following tests: * A radio/checkbo
ramya.v 2016/03/07 10:03:02 Done.
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698