blob: e113145693d10e5dcebaec3d7a0f6b1fde19e55f [file] [log] [blame]
<!DOCTYPE html>
<script src="../resources/js-test.js"></script>
<script>
description('Cycles of AudioNode connections should be collected.');
var context = new OfflineAudioContext(2, 44100, 44100);
gc();
var initialCount = internals.audioHandlerCount();
createCycle();
debug('A cycle was created:');
shouldBeTrue('internals.audioHandlerCount() > initialCount');
gc();
debug('GC happened:');
shouldBe('internals.audioHandlerCount()', 'initialCount');
function createCycle() {
var source = context.createBufferSource();
var delay1 = context.createDelay();
var delay2 = context.createDelay();
source.connect(delay1);
delay1.connect(delay2);
delay2.connect(delay1);
delay1.connect(context.destination);
}
</script>