Harness status: OK

Found 78 tests

78 Pass
Pass	# AUDIT TASK RUNNER STARTED.
Pass	Executing "initialize"
Pass	Executing "invalid constructor"
Pass	Executing "default constructor"
Pass	Executing "test AudioNodeOptions"
Pass	Executing "constructor with options"
Pass	Executing "construct invalid options"
Pass	Executing "setting min/max"
Pass	Audit report
Pass	> [initialize] 
Pass	  context = new OfflineAudioContext(...) did not throw an exception.
Pass	< [initialize] All assertions passed. (total 1 assertions)
Pass	> [invalid constructor] 
Pass	  new AnalyserNode() threw TypeError: "AnalyserNode() needs one argument".
Pass	  new AnalyserNode(1) threw TypeError: "Not an object of type BaseAudioContext".
Pass	  new AnalyserNode(context, 42) threw TypeError: "Not an object of type AnalyserOptions".
Pass	< [invalid constructor] All assertions passed. (total 3 assertions)
Pass	> [default constructor] 
Pass	  node0 = new AnalyserNode(context) did not throw an exception.
Pass	  node0 instanceof AnalyserNode is equal to true.
Pass	  node0.numberOfInputs is equal to 1.
Pass	  node0.numberOfOutputs is equal to 1.
Pass	  node0.channelCount is equal to 2.
Pass	  node0.channelCountMode is equal to max.
Pass	  node0.channelInterpretation is equal to speakers.
Pass	  node0.fftSize is equal to 2048.
Pass	  node0.frequencyBinCount is equal to 1024.
Pass	  node0.minDecibels is equal to -100.
Pass	  node0.maxDecibels is equal to -30.
Pass	  node0.smoothingTimeConstant is equal to 0.8.
Pass	< [default constructor] All assertions passed. (total 12 assertions)
Pass	> [test AudioNodeOptions] 
Pass	  new AnalyserNode(c, {channelCount: 17}) did not throw an exception.
Pass	  node.channelCount is equal to 17.
Pass	  new AnalyserNode(c, {channelCount: 0}) threw NotSupportedError: "Invalid channel count".
Pass	  new AnalyserNode(c, {channelCount: 99}) threw NotSupportedError: "Invalid channel count".
Pass	  new AnalyserNode(c, {channelCountMode: "max"} did not throw an exception.
Pass	  node.channelCountMode is equal to max.
Pass	  new AnalyserNode(c, {channelCountMode: "max"}) did not throw an exception.
Pass	  node.channelCountMode after valid setter is equal to max.
Pass	  new AnalyserNode(c, {channelCountMode: "clamped-max"}) did not throw an exception.
Pass	  node.channelCountMode after valid setter is equal to clamped-max.
Pass	  new AnalyserNode(c, {channelCountMode: "explicit"}) did not throw an exception.
Pass	  node.channelCountMode after valid setter is equal to explicit.
Pass	  new AnalyserNode(c, {channelCountMode: "foobar"} threw TypeError: "Invalid value 'foobar' for enumeration type 'ChannelCountMode'".
Pass	  node.channelCountMode after invalid setter is equal to explicit.
Pass	  new AnalyserNode(c, {channelInterpretation: "speakers"}) did not throw an exception.
Pass	  node.channelInterpretation is equal to speakers.
Pass	  new AnalyserNode(c, {channelInterpretation: "discrete"}) did not throw an exception.
Pass	  node.channelInterpretation is equal to discrete.
Pass	  new AnalyserNode(c, {channelInterpretation: "foobar"}) threw TypeError: "Invalid value 'foobar' for enumeration type 'ChannelInterpretation'".
Pass	  node.channelInterpretation after invalid setter is equal to discrete.
Pass	< [test AudioNodeOptions] All assertions passed. (total 20 assertions)
Pass	> [constructor with options] 
Pass	  node1 = new AnalyserNode(c, {"fftSize":32,"maxDecibels":1,"minDecibels":-13,"smoothingTimeConstant":0.125}) did not throw an exception.
Pass	  node1 instanceof AnalyserNode is equal to true.
Pass	  node1.fftSize is equal to 32.
Pass	  node1.maxDecibels is equal to 1.
Pass	  node1.minDecibels is equal to -13.
Pass	  node1.smoothingTimeConstant is equal to 0.125.
Pass	< [constructor with options] All assertions passed. (total 6 assertions)
Pass	> [construct invalid options] 
Pass	  node = new AnalyserNode(c, { fftSize: 33 }) threw IndexSizeError: "Analyser node fftSize not a power of 2 between 32 and 32768".
Pass	  node = new AnalyserNode(c, { maxDecibels: -500 }) threw IndexSizeError: "Analyser node minDecibels greater than maxDecibels".
Pass	  node = new AnalyserNode(c, { minDecibels: -10 }) threw IndexSizeError: "Analyser node minDecibels greater than maxDecibels".
Pass	  node = new AnalyserNode(c, { smoothingTimeConstant: 2 }) threw IndexSizeError: "Analyser node smoothingTimeConstant not between 0.0 and 1.0".
Pass	  node = new AnalyserNode(c, { frequencyBinCount: 33 }) did not throw an exception.
Pass	  node.frequencyBinCount is equal to 1024.
Pass	< [construct invalid options] All assertions passed. (total 6 assertions)
Pass	> [setting min/max] 
Pass	  node = new AnalyserNode(c, {"minDecibels":-10,"maxDecibels":20}) did not throw an exception.
Pass	  node = new AnalyserNode(c, {"maxDecibels":20,"minDecibels":-10}) did not throw an exception.
Pass	  node = new AnalyserNode(c, {"minDecibels":-200,"maxDecibels":-150}) did not throw an exception.
Pass	  node = new AnalyserNode(c, {"maxDecibels":-150,"minDecibels":-200}) did not throw an exception.
Pass	  node = new AnalyserNode(c, {"maxDecibels":-150,"minDecibels":-10}) threw IndexSizeError: "Analyser node minDecibels greater than maxDecibels".
Pass	  node = new AnalyserNode(c, {"minDecibels":-10,"maxDecibels":-150}) threw IndexSizeError: "Analyser node minDecibels greater than maxDecibels".
Pass	< [setting min/max] All assertions passed. (total 6 assertions)
Pass	# AUDIT TASK RUNNER FINISHED: 7 tasks ran successfully.