checked-indeterminate.window.js (868B)
1 test(() => { 2 const input = document.createElement("input"); 3 input.type = "checkbox"; 4 5 assert_false(input.matches(":checked:indeterminate")); 6 assert_false(input.matches(":checked")); 7 assert_false(input.matches(":indeterminate")); 8 9 input.checked = true; 10 input.indeterminate = true; 11 12 assert_true(input.matches(":checked:indeterminate")); 13 assert_true(input.matches(":checked")); 14 assert_true(input.matches(":indeterminate")); 15 16 input.indeterminate = false; 17 18 assert_false(input.matches(":checked:indeterminate")); 19 assert_true(input.matches(":checked")); 20 assert_false(input.matches(":indeterminate")); 21 22 input.checked = false; 23 24 assert_false(input.matches(":checked:indeterminate")); 25 assert_false(input.matches(":checked")); 26 assert_false(input.matches(":indeterminate")); 27 }, "An element can be :checked and :indeterminate at the same time");