<?xml version="1.0"?>
<?xml-stylesheet href="chrome://global/skin" type="text/css"?>
<?xml-stylesheet href="/tests/SimpleTest/test.css" type="text/css"?>
<!--
https://bugzilla.mozilla.org/show_bug.cgi?id=365773
-->
<window title="Mozilla Bug 365773"
  xmlns:html="http://www.w3.org/1999/xhtml"
  xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">

  <title>Test for Bug 365773</title>
  <script type="application/javascript" src="/MochiKit/packed.js"></script>
  <script type="application/javascript" src="/tests/SimpleTest/SimpleTest.js"></script>      

<body  xmlns="http://www.w3.org/1999/xhtml">
<a target="_blank" href="https://bugzilla.mozilla.org/show_bug.cgi?id=365773">Mozilla Bug 365773</a>
<p id="display">
  <radiogroup id="group" collapsed="true" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
    <radio id="item" label="Item"/>
  </radiogroup>
</p>
<div id="content" style="display: none">
</div>
<pre id="test">
</pre>
</body>

<script class="testbody" type="application/javascript">
<![CDATA[

/** Test for Bug 365773 **/

function selectItem(item, isIndex, testName) {
  var exception = null;
  try {
    if (isIndex)
      document.getElementById("group").selectedIndex = item;
    else
      document.getElementById("group").selectedItem = item;
  }
  catch(e) {
    exception = e;
  }

  ok(exception == null, testName);
}

SimpleTest.waitForExplicitFinish();

window.onload = function runTests() {
  var item = document.getElementById("item");
  
  selectItem(item, false, "Radio button selected with selectedItem (not focused)");
  selectItem(null, false, "Radio button deselected with selectedItem (not focused)");
  selectItem(0, true, "Radio button selected with selectedIndex (not focused)");
  selectItem(-1, true, "Radio button deselected with selectedIndex (not focused)");
  
  document.getElementById("group").focus();

  selectItem(item, false, "Radio button selected with selectedItem (focused)");
  selectItem(null, false, "Radio button deselected with selectedItem (focused)");
  selectItem(0, true, "Radio button selected with selectedIndex (focused)");
  selectItem(-1, true, "Radio button deselected with selectedIndex (focused)");

  SimpleTest.finish();
};
]]>
</script>

</window>
