<!DOCTYPE HTML>
<html>
<head>
  <title>Test the AudioContext.destination interface</title>
  <script src="/tests/SimpleTest/SimpleTest.js"></script>
  <script type="text/javascript" src="webaudio.js"></script>
  <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css" />
</head>
<body>
<pre id="test">
<script class="testbody" type="text/javascript">

// Work around bug 911777
SpecialPowers.forceGC();
SpecialPowers.forceCC();

SimpleTest.waitForExplicitFinish();
addLoadEvent(function() {
  var ac = new AudioContext();
  ok(ac.destination.maxChannelCount > 0, "We can query the maximum number of channels");

  var oac = new OfflineAudioContext(2, 1024, 48000);
  is(oac.destination.maxChannelCount, 2, "This OfflineAudioContext should have 2 max channels.");

  oac = new OfflineAudioContext(6, 1024, 48000);
  is(oac.destination.maxChannelCount, 6, "This OfflineAudioContext should have 6 max channels.");

  expectException(function() {
    oac.destination.channelCount = oac.destination.channelCount + 1;
  }, DOMException.INDEX_SIZE_ERR);

  SimpleTest.finish();
});

</script>
</pre>
</body>
</html>
