Click here to download the Blitz Browser!

WPT

wpt / webaudio / the-audio-api / the-delaynode-interface / ctor-delay.html

Spec: Web Audio API ↗

Runs: Chrome 155.0.8041.0 (wpt@4a01b83e3, 2026-09-04) | Firefox 157.0a1 (wpt@e7122b73f, 2026-09-04) | Safari 251 preview (wpt@2c385f65e, 2026-09-04) | Ladybird 1.0-70fb3 (wpt@4a01b83e3, 2026-09-04) | Servo Servo 0.6 (wpt@7e3d005d7, 2026-09-03) | Blitz a50cb8971 (wpt@a95401e4e, 2026-09-03)

View on the Blitz WPT dashboard | Open test on wpt.live | wpt.fyi

ChromeFirefoxSafariLadybirdServoBlitz
Total53/5353/5353/5353/5315/53NOT RUN
SubtestChromeFirefoxSafariLadybirdServoBlitz
# AUDIT TASK RUNNER STARTED.PASSPASSPASSPASSPASS
Executing "initialize"PASSPASSPASSPASSPASS
Executing "invalid constructor"PASSPASSPASSPASSPASS
Executing "default constructor"PASSPASSPASSPASSFAIL
Executing "test AudioNodeOptions"PASSPASSPASSPASSFAIL
Executing "constructor options"PASSPASSPASSPASSFAIL
Audit reportPASSPASSPASSPASSPASS
> [initialize] PASSPASSPASSPASSPASS
context = new OfflineAudioContext(...) did not throw an exception.PASSPASSPASSPASSPASS
< [initialize] All assertions passed. (total 1 assertions)PASSPASSPASSPASSPASS
> [invalid constructor] PASSPASSPASSPASSPASS
new DelayNode() threw TypeError: "Failed to construct 'DelayNode': 1 argument required, but only 0 present.".PASS
new DelayNode(1) threw TypeError: "Failed to construct 'DelayNode': parameter 1 is not of type 'BaseAudioContext'.".PASS
new DelayNode(context, 42) threw TypeError: "Failed to construct 'DelayNode': The provided value is not of type 'DelayOptions'.".PASS
< [invalid constructor] All assertions passed. (total 3 assertions)PASSPASSPASSPASSPASS
> [default constructor] PASSPASSPASSPASSPASS
node0 = new DelayNode(context) did not throw an exception.PASSPASSPASSPASS
node0 instanceof DelayNode is equal to true.PASSPASSPASSPASS
node0.numberOfInputs is equal to 1.PASSPASSPASSPASS
node0.numberOfOutputs is equal to 1.PASSPASSPASSPASS
node0.channelCount is equal to 2.PASSPASSPASSPASS
node0.channelCountMode is equal to max.PASSPASSPASSPASS
node0.channelInterpretation is equal to speakers.PASSPASSPASSPASS
node0.delayTime.value is equal to 0.PASSPASSPASSPASS
< [default constructor] All assertions passed. (total 8 assertions)PASSPASSPASSPASS
> [test AudioNodeOptions] PASSPASSPASSPASSPASS
new DelayNode(c, {channelCount: 17}) did not throw an exception.PASSPASSPASSPASS
node.channelCount is equal to 17.PASSPASSPASSPASS
new DelayNode(c, {channelCount: 0}) threw NotSupportedError: "Failed to construct 'DelayNode': The channel count provided (0) is outside the range [1, 32].".PASS
new DelayNode(c, {channelCount: 99}) threw NotSupportedError: "Failed to construct 'DelayNode': The channel count provided (99) is outside the range [1, 32].".PASS
new DelayNode(c, {channelCountMode: "max"} did not throw an exception.PASSPASSPASSPASS
node.channelCountMode is equal to max.PASSPASSPASSPASS
new DelayNode(c, {channelCountMode: "max"}) did not throw an exception.PASSPASSPASSPASS
node.channelCountMode after valid setter is equal to max.PASSPASSPASSPASS
new DelayNode(c, {channelCountMode: "clamped-max"}) did not throw an exception.PASSPASSPASSPASS
node.channelCountMode after valid setter is equal to clamped-max.PASSPASSPASSPASS
new DelayNode(c, {channelCountMode: "explicit"}) did not throw an exception.PASSPASSPASSPASS
node.channelCountMode after valid setter is equal to explicit.PASSPASSPASSPASS
new DelayNode(c, {channelCountMode: "foobar"} threw TypeError: "Failed to construct 'DelayNode': Failed to read the 'channelCountMode' property from 'AudioNodeOptions': The provided value 'foobar' is not a valid enum value of type ChannelCountMode.".PASS
node.channelCountMode after invalid setter is equal to explicit.PASSPASSPASSPASS
new DelayNode(c, {channelInterpretation: "speakers"}) did not throw an exception.PASSPASSPASSPASS
node.channelInterpretation is equal to speakers.PASSPASSPASSPASS
new DelayNode(c, {channelInterpretation: "discrete"}) did not throw an exception.PASSPASSPASSPASS
node.channelInterpretation is equal to discrete.PASSPASSPASSPASS
new DelayNode(c, {channelInterpretation: "foobar"}) threw TypeError: "Failed to construct 'DelayNode': Failed to read the 'channelInterpretation' property from 'AudioNodeOptions': The provided value 'foobar' is not a valid enum value of type ChannelInterpretation.".PASS
node.channelInterpretation after invalid setter is equal to discrete.PASSPASSPASSPASS
< [test AudioNodeOptions] All assertions passed. (total 20 assertions)PASSPASSPASSPASS
> [constructor options] PASSPASSPASSPASSPASS
node1 = new DelayNode(c, {"delayTime":0.5,"maxDelayTime":1.5}) did not throw an exception.PASSPASSPASSPASS
node1.delayTime.value is equal to 0.5.PASSPASSPASSPASS
node1.delayTime.maxValue is equal to 1.5.PASSPASSPASSPASS
< [constructor options] All assertions passed. (total 3 assertions)PASSPASSPASSPASS
# AUDIT TASK RUNNER FINISHED: 5 tasks ran successfully.PASSPASSPASSPASS
new DelayNode() threw TypeError: "DelayNode constructor: At least 1 argument required, but only 0 passed".PASS
new DelayNode(1) threw TypeError: "DelayNode constructor: Argument 1 is not an object.".PASS
new DelayNode(context, 42) threw TypeError: "DelayNode constructor: Value can't be converted to a dictionary.".PASS
new DelayNode(c, {channelCount: 0}) threw NotSupportedError: "DelayNode constructor: Channel count (0) must be in the range [1, max supported channel count]".PASS
new DelayNode(c, {channelCount: 99}) threw NotSupportedError: "DelayNode constructor: Channel count (99) must be in the range [1, max supported channel count]".PASS
new DelayNode(c, {channelCountMode: "foobar"} threw TypeError: "DelayNode constructor: 'foobar' (value of 'channelCountMode' member of AudioNodeOptions) is not a valid value for enumeration ChannelCountMode.".PASS
new DelayNode(c, {channelInterpretation: "foobar"}) threw TypeError: "DelayNode constructor: 'foobar' (value of 'channelInterpretation' member of AudioNodeOptions) is not a valid value for enumeration ChannelInterpretation.".PASS
new DelayNode() threw TypeError: "Not enough arguments".PASS
new DelayNode(1) threw TypeError: "Argument 1 ('context') to the DelayNode constructor must be an instance of BaseAudioContext".PASS
new DelayNode(context, 42) threw TypeError: "Type error".PASS
new DelayNode(c, {channelCount: 0}) threw NotSupportedError: "Channel count cannot be 0".PASS
new DelayNode(c, {channelCount: 99}) threw NotSupportedError: "Channel count exceeds maximum limit".PASS
new DelayNode(c, {channelCountMode: "foobar"} threw TypeError: "Type error".PASS
new DelayNode(c, {channelInterpretation: "foobar"}) threw TypeError: "Type error".PASS
new DelayNode() threw TypeError: "window[name] is not a constructor".PASS
new DelayNode(1) threw TypeError: "window[name] is not a constructor".PASS
new DelayNode(context, 42) threw TypeError: "window[name] is not a constructor".PASS
X node0 = new DelayNode(context) incorrectly threw TypeError: "window[name] is not a constructor".FAIL
X new DelayNode(c, {channelCount: 17}) incorrectly threw TypeError: "window[nodeName] is not a constructor".FAIL
X node1 = new DelayNode(c, {"delayTime":0.5,"maxDelayTime":1.5}) incorrectly threw ReferenceError: "DelayNode is not defined".FAIL
# AUDIT TASK RUNNER FINISHED: 3 out of 5 tasks were failed.FAIL
new DelayNode() threw TypeError: "DelayNode() needs one argument".PASS
new DelayNode(1) threw TypeError: "Not an object of type BaseAudioContext".PASS
new DelayNode(context, 42) threw TypeError: "Not an object of type DelayOptions".PASS
new DelayNode(c, {channelCount: 0}) threw NotSupportedError: "Invalid channel count".PASS
new DelayNode(c, {channelCount: 99}) threw NotSupportedError: "Invalid channel count".PASS
new DelayNode(c, {channelCountMode: "foobar"} threw TypeError: "Invalid value 'foobar' for enumeration type 'ChannelCountMode'".PASS
new DelayNode(c, {channelInterpretation: "foobar"}) threw TypeError: "Invalid value 'foobar' for enumeration type 'ChannelInterpretation'".PASS