| Index: LayoutTests/webaudio/audioparam-exceptional-values.html
 | 
| diff --git a/LayoutTests/webaudio/audioparam-exceptional-values.html b/LayoutTests/webaudio/audioparam-exceptional-values.html
 | 
| index 9ab8dfc1a6f79d7386c0553b5e82182f725c33c1..535faf7df76b74a2ed4f43ac810151bb3bbb90e9 100644
 | 
| --- a/LayoutTests/webaudio/audioparam-exceptional-values.html
 | 
| +++ b/LayoutTests/webaudio/audioparam-exceptional-values.html
 | 
| @@ -20,8 +20,12 @@
 | 
|        // invalid. Only finite non-negative values are allowed for any time or time-like parameter.
 | 
|        var timeValues = [-1, Infinity, -Infinity, NaN];
 | 
|  
 | 
| +      // For these duration values, AudioParam methods should throw an error because they are
 | 
| +      // invalid. Only finite values are allowed for any duration parameter.
 | 
| +      var durationValues = [-1, Infinity, -Infinity, NaN, 0];
 | 
| +
 | 
|        // Just an array for use by setValueCurveAtTime. The length and contents of the array are not
 | 
| -      // important. 
 | 
| +      // important.
 | 
|        var curve = new Float32Array(10);
 | 
|  
 | 
|        function runTest() {
 | 
| @@ -35,33 +39,33 @@
 | 
|          gain = context.createGain();
 | 
|  
 | 
|          // Test the value parameter
 | 
| -        for (value in targetValues) {
 | 
| -          shouldThrow("gain.gain.setValueAtTime(" + targetValues[value] + ", 1)");
 | 
| -          shouldThrow("gain.gain.linearRampToValueAtTime(" + targetValues[value] + ", 1)");
 | 
| -          shouldThrow("gain.gain.exponentialRampToValueAtTime(" + targetValues[value] + ", 1)");
 | 
| -          shouldThrow("gain.gain.setTargetAtTime(" + targetValues[value] + ", 1, 1)");
 | 
| +        for (value of targetValues) {
 | 
| +          shouldThrow("gain.gain.setValueAtTime(" + value + ", 1)");
 | 
| +          shouldThrow("gain.gain.linearRampToValueAtTime(" + value + ", 1)");
 | 
| +          shouldThrow("gain.gain.exponentialRampToValueAtTime(" + value + ", 1)");
 | 
| +          shouldThrow("gain.gain.setTargetAtTime(" + value + ", 1, 1)");
 | 
|          }
 | 
|  
 | 
|          // Test the time parameter
 | 
| -        for (startTime in timeValues) {
 | 
| -          shouldThrow("gain.gain.setValueAtTime(1, " + timeValues[startTime] + ")");
 | 
| -          shouldThrow("gain.gain.linearRampToValueAtTime(1, " + timeValues[startTime] + ")");
 | 
| -          shouldThrow("gain.gain.exponentialRampToValueAtTime(1, " + timeValues[startTime] + ")");
 | 
| -          shouldThrow("gain.gain.setTargetAtTime(1, " + timeValues[startTime] + ", 1)");
 | 
| +        for (startTime of timeValues) {
 | 
| +          shouldThrow("gain.gain.setValueAtTime(1, " + startTime + ")");
 | 
| +          shouldThrow("gain.gain.linearRampToValueAtTime(1, " + startTime + ")");
 | 
| +          shouldThrow("gain.gain.exponentialRampToValueAtTime(1, " + startTime + ")");
 | 
| +          shouldThrow("gain.gain.setTargetAtTime(1, " + startTime + ", 1)");
 | 
|          }
 | 
|  
 | 
|          // Test time constant
 | 
| -        for (value in targetValues) {
 | 
| -          shouldThrow("gain.gain.setTargetAtTime(1, 1, " + targetValues[value] + ")");
 | 
| +        for (value of targetValues) {
 | 
| +          shouldThrow("gain.gain.setTargetAtTime(1, 1, " + value + ")");
 | 
|          }
 | 
|  
 | 
|          // Test startTime and duration for setValueCurveAtTime
 | 
| -        for (startTime in timeValues) {
 | 
| -          shouldThrow("gain.gain.setValueCurveAtTime(curve, " + timeValues[startTime] + ", 1)");
 | 
| -          shouldThrow("gain.gain.setValueCurveAtTime(curve, 1, " + timeValues[duration] + ")");
 | 
| +        for (startTime of timeValues) {
 | 
| +          shouldThrow("gain.gain.setValueCurveAtTime(curve, " + startTime + ", 1)");
 | 
| +        }
 | 
| +        for (duration of durationValues) {
 | 
| +          shouldThrow("gain.gain.setValueCurveAtTime(curve, 1, " + duration + ")");
 | 
|          }
 | 
| -
 | 
| -        shouldThrow("gain.gain.setValueCurveAtTime(curve, 1, 0)");
 | 
|  
 | 
|          finishJSTest();
 | 
|        }
 | 
| 
 |