<!DOCTYPE html>
<meta charset=utf-8>
<title>Selector: pseudo-classes (:indeterminate)</title>
<link rel="author" title="Denis Ah-Kang" href="mailto:denis@w3.org" id=link1>
<link rel=help href="https://html.spec.whatwg.org/multipage/#pseudo-classes" id=link2>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="utils.js"></script>
<div id="log"></div>
<input type=checkbox id=checkbox1>
<input type=checkbox id=checkbox2>
<input type=radio id=radio1 checked>
<input type=radio name=radiogroup id=radio2>
<input type=radio name=radiogroup id=radio3>
<input type=radio name=group2 id=radio4>
<input type=radio name=group2 id=radio5>
<progress id="progress1"></progress>
<progress id="progress2" value=10></progress>

<script>
  testSelector(":indeterminate", ["radio2", "radio3", "radio4", "radio5", "progress1"], "':progress' matches <input>s radio buttons whose radio button group contains no checked input and <progress> elements without value attribute");

  document.getElementById("radio2").setAttribute("checked", "checked");
  testSelector(":indeterminate", ["radio4", "radio5", "progress1"], "dynamically check a radio input in a radio button group");

  document.getElementById("radio4").click();
  testSelector(":indeterminate", ["checkbox1", "progress2"], "click on radio4 which is in the indeterminate state");

  document.getElementById("progress1").setAttribute("value", "20");
  testSelector(":indeterminate", [], "adding a value to progress1 should put it in a determinate state");

  document.getElementById("progress2").removeAttribute("value");
  testSelector(":indeterminate", ["progress2"], "removing progress2's value should put it in an indeterminate state");

  document.getElementById("checkbox1").indeterminate = true; // set checkbox1 in the indeterminate state
  testSelector(":indeterminate", ["checkbox1", "progress2"], "':progress' also matches <input> checkbox whose indeterminate IDL is set to true");
</script>
