<!DOCTYPE html>
<html class="a">
  <head>
    <title>Cycles without DelayNode in audio node graph</title>
    <script src="/resources/testharness.js"></script>
    <script src="/resources/testharnessreport.js"></script>
  </head>
  <body>
    <script>
      function doTest() {
        var off = new OfflineAudioContext(1, 512, 48000);
        var osc = new OscillatorNode(off);
        var fb = new GainNode(off);
        // zero delay feedback loop
        osc.connect(fb).connect(fb).connect(off.destination);
        osc.start(0);
        return off.startRendering().then((b) => {
          return Promise.resolve(b.getChannelData(0));
        });
      }

      promise_test(() => {
        return doTest().then(samples => {
          var silent = true;
          for (var i = 0; i < samples.length; i++) {
            if (samples[i] != 0.0) {
              silent = false;
              break;
            }
          }
          assert_true(silent);
        });
      }, 'Test that cycles that don\'t contain a DelayNode are muted');
    </script>
  </body>
</html>
