Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(472)

Side by Side Diff: third_party/WebKit/LayoutTests/webaudio/Panner/pannernode-basic.html

Issue 2799793003: Convert Panner tests to new Audit (Closed)
Patch Set: Address review comments Created 3 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 <!DOCTYPE html> 1 <!DOCTYPE html>
2 <html> 2 <html>
3 3
4 <head> 4 <head>
5 <script src="../../resources/testharness.js"></script> 5 <script src="../../resources/testharness.js"></script>
6 <script src="../../resources/testharnessreport.js"></script> 6 <script src="../../resources/testharnessreport.js"></script>
7 <script src="../resources/audit-util.js"></script> 7 <script src="../resources/audit-util.js"></script>
8 <script src="../resources/audio-testing.js"></script> 8 <script src="../resources/audit.js"></script>
9 </head> 9 </head>
10 10
11 <body> 11 <body>
12 <script> 12 <script>
13 var context; 13 var context;
14 var panner; 14 var panner;
15 var audit = Audit.createTaskRunner(); 15 var audit = Audit.createTaskRunner();
16 16
17 audit.defineTask("initialize", function (done) { 17 audit.define("initialize", (task, should) => {
18 context = new AudioContext(); 18 should(() => {
19 panner = context.createPanner(); 19 context = new AudioContext();
20 done(); 20 panner = context.createPanner();
21 }, "Initialize context and panner")
22 .notThrow();
23 task.done();
21 }); 24 });
22 25
23 audit.defineTask("basic", function (done) { 26 audit.define("basic", (task, should) => {
24 var success = true; 27 should(panner.numberOfInputs, "panner.numberOfInputs")
28 .beEqualTo(1);
29 should(panner.numberOfOutputs, "panner.numberOfOutputs")
30 .beEqualTo(1);
31 should(panner.refDistance, "panner.refDistance")
32 .beEqualTo(1);
33 panner.refDistance = 270.5;
34 should(panner.refDistance, "panner.refDistance = 270.5")
35 .beEqualTo(270.5);
36 should(panner.maxDistance, "panner.maxDistance")
37 .beEqualTo(10000);
38 panner.maxDistance = 100.5;
39 should(panner.maxDistance, "panner.maxDistance = 100.5")
40 .beEqualTo(100.5);
41 should(panner.rolloffFactor, "panner.rolloffFactor")
42 .beEqualTo(1);
43 panner.rolloffFactor = 0.75;
44 should(panner.rolloffFactor, "panner.rolloffFactor = 0.75")
45 .beEqualTo(0.75);
46 should(panner.coneInnerAngle, "panner.coneInnerAngle")
47 .beEqualTo(360);
48 panner.coneInnerAngle = 240.5;
49 should(panner.coneInnerAngle, "panner.coneInnerAngle = 240.5")
50 .beEqualTo(240.5);
51 should(panner.coneOuterAngle, "panner.coneOuterAngle")
52 .beEqualTo(360);
53 panner.coneOuterAngle = 166.5;
54 should(panner.coneOuterAngle, "panner.coneOuterAngle = 166.5")
55 .beEqualTo(166.5);
56 should(panner.coneOuterGain, "panner.coneOuterGain")
57 .beEqualTo(0);
58 panner.coneOuterGain = 0.25;
59 should(panner.coneOuterGain, "panner.coneOuterGain = 0.25")
60 .beEqualTo(0.25);
61 should(panner.panningModel, "panner.panningModel")
62 .beEqualTo("equalpower");
63 should(panner.distanceModel)
64 .beEqualTo("inverse", "panner.distanceModel");
25 65
26 success = Should("panner.numberOfInputs", panner.numberOfInputs) 66 should(panner.positionX.value, "panner.positionX")
27 .beEqualTo(1) && success; 67 .beEqualTo(0);
28 success = Should("panner.numberOfOutputs", panner.numberOfOutputs) 68 should(panner.positionY.value, "panner.positionY")
29 .beEqualTo(1) && success; 69 .beEqualTo(0);
30 success = Should("panner.refDistance", panner.refDistance) 70 should(panner.positionZ.value, "panner.positionZ")
31 .beEqualTo(1) && success; 71 .beEqualTo(0);
32 panner.refDistance = 270.5; 72 should(panner.orientationX.value, "panner.orientationX")
33 success = Should("panner.refDistance = 270.5", panner.refDistance) 73 .beEqualTo(1);
34 .beEqualTo(270.5) && success; 74 should(panner.orientationY.value, "panner.orientationY")
35 success = Should("panner.maxDistance", panner.maxDistance) 75 .beEqualTo(0);
36 .beEqualTo(10000) && success; 76 should(panner.orientationZ.value, "panner.orientationZ")
37 panner.maxDistance = 100.5; 77 .beEqualTo(0);
38 success = Should("panner.maxDistance = 100.5", panner.maxDistance)
39 .beEqualTo(100.5) && success;
40 success = Should("panner.rolloffFactor", panner.rolloffFactor)
41 .beEqualTo(1) && success;
42 panner.rolloffFactor = 0.75;
43 success = Should("panner.rolloffFactor = 0.75", panner.rolloffFactor)
44 .beEqualTo(0.75) && success;
45 success = Should("panner.coneInnerAngle", panner.coneInnerAngle)
46 .beEqualTo(360) && success;
47 panner.coneInnerAngle = 240.5;
48 success = Should("panner.coneInnerAngle = 240.5", panner.coneInnerAngle)
49 .beEqualTo(240.5) && success;
50 success = Should("panner.coneOuterAngle", panner.coneOuterAngle)
51 .beEqualTo(360) && success;
52 panner.coneOuterAngle = 166.5;
53 success = Should("panner.coneOuterAngle = 166.5", panner.coneOuterAngle)
54 .beEqualTo(166.5) && success;
55 success = Should("panner.coneOuterGain", panner.coneOuterGain)
56 .beEqualTo(0) && success;
57 panner.coneOuterGain = 0.25;
58 success = Should("panner.coneOuterGain = 0.25", panner.coneOuterGain)
59 .beEqualTo(0.25) && success;
60 success = Should("panner.panningModel", panner.panningModel)
61 .beEqualTo("equalpower") && success;
62 success = Should("panner.distanceModel", panner.distanceModel)
63 .beEqualTo("inverse") && success;
64 78
65 success = Should("panner.positionX", panner.positionX.value) 79 task.done();
66 .beEqualTo(0) && success;
67 success = Should("panner.positionY", panner.positionY.value)
68 .beEqualTo(0) && success;
69 success = Should("panner.positionZ", panner.positionZ.value)
70 .beEqualTo(0) && success;
71 success = Should("panner.orientationX", panner.orientationX.value)
72 .beEqualTo(1) && success;
73 success = Should("panner.orientationY", panner.orientationY.value)
74 .beEqualTo(0) && success;
75 success = Should("panner.orientationZ", panner.orientationZ.value)
76 .beEqualTo(0) && success;
77
78 Should("Basic Panner attribute tests", success)
79 .summarize("passed", "failed");
80
81 done();
82 }); 80 });
83 81
84 audit.defineTask("listener", function (done) { 82 audit.define("listener", (task, should) => {
85 var success = true; 83 should(context.listener.positionX.value, "listener.positionX")
84 .beEqualTo(0);
85 should(context.listener.positionY.value, "listener.positionY")
86 .beEqualTo(0);
87 should(context.listener.positionZ.value, "listener.positionZ")
88 .beEqualTo(0);
89 should(context.listener.forwardX.value, "listener.forwardX")
90 .beEqualTo(0);
91 should(context.listener.forwardY.value, "listener.forwardY")
92 .beEqualTo(0);
93 should(context.listener.forwardZ.value, "listener.forwardZ")
94 .beEqualTo(-1);
95 should(context.listener.upX.value, "listener.upX")
96 .beEqualTo(0);
97 should(context.listener.upY.value, "listener.upY")
98 .beEqualTo(1);
99 should(context.listener.upZ.value, "listener.upZ")
100 .beEqualTo(0);
86 101
87 success = Should("listener.positionX", context.listener.positionX.value) 102 task.done();
88 .beEqualTo(0) && success;
89 success = Should("listener.positionY", context.listener.positionY.value)
90 .beEqualTo(0) && success;
91 success = Should("listener.positionZ", context.listener.positionZ.value)
92 .beEqualTo(0) && success;
93 success = Should("listener.forwardX", context.listener.forwardX.value)
94 .beEqualTo(0) && success;
95 success = Should("listener.forwardY", context.listener.forwardY.value)
96 .beEqualTo(0) && success;
97 success = Should("listener.forwardZ", context.listener.forwardZ.value)
98 .beEqualTo(-1) && success;
99 success = Should("listener.upX", context.listener.upX.value)
100 .beEqualTo(0) && success;
101 success = Should("listener.upY", context.listener.upY.value)
102 .beEqualTo(1) && success;
103 success = Should("listener.upZ", context.listener.upZ.value)
104 .beEqualTo(0) && success;
105
106 Should("Basic AudioListener attribute tests", success)
107 .summarize("passed", "failed");
108 done();
109 }); 103 });
110 104
111 audit.defineTask("panning models", function (done) { 105 audit.define("panning models", (task, should) => {
112 // Check that the .panningModel attribute can be set to all legal values . 106 // Check that the .panningModel attribute can be set to all legal values .
113 var panningModels = ["equalpower", "HRTF"]; 107 var panningModels = ["equalpower", "HRTF"];
114 108
115 var success = true;
116 for (var i = 0; i < panningModels.length; ++i) { 109 for (var i = 0; i < panningModels.length; ++i) {
117 success = Should('Set panner.panningModel = "' + panningModels[i] + '" ', function () { 110 should(function () {
118 panner.panningModel = panningModels[i]; 111 panner.panningModel = panningModels[i];
119 }).notThrow() && success; 112 },
113 'Set panner.panningModel = "' + panningModels[i] + '"')
114 .notThrow();
120 115
121 success = Should('panner.panningModel = "' + panningModels[i] + '"', p anner.panningModel) 116 should(panner.panningModel,
122 .beEqualTo(panningModels[i]) && success; 117 'panner.panningModel = "' + panningModels[i] + '"')
118 .beEqualTo(panningModels[i]);
123 } 119 }
124 120
125 success = Should('panner.panningModel = "invalid"', function () { 121 should(function () {
126 panner.panningModel = "invalid"; 122 panner.panningModel = "invalid";
127 }).notThrow() && success; 123 },
124 'panner.panningModel = "invalid"')
125 .notThrow();
128 126
129 success = Should("panner.panningModel after invalid setter", panner.pann ingModel) 127 should(panner.panningModel,
130 .beEqualTo("HRTF") && success; 128 "panner.panningModel after invalid setter")
129 .beEqualTo("HRTF");
131 130
132 // Check that numerical values are no longer supported. We shouldn't th row and the value 131 // Check that numerical values are no longer supported. We shouldn't th row and the value
133 // shouldn't be changed. 132 // shouldn't be changed.
134 panner.panningModel = "HRTF"; 133 panner.panningModel = "HRTF";
135 success = Should('panner.panningModel = 1', function () { 134 should(function () {
136 panner.panningModel = 1; 135 panner.panningModel = 1;
137 }).notThrow() && success; 136 }, 'panner.panningModel = 1').notThrow();
138 137
139 success = Should('panner.panningModel', panner.panningModel) 138 should(panner.panningModel, 'panner.panningModel')
140 .beEqualTo("HRTF") && success; 139 .beEqualTo("HRTF");
141 140
142 Should("Basic Panner panning models tests", success) 141 task.done();
143 .summarize("passed", "failed");
144 done();
145 }); 142 });
146 143
147 audit.defineTask("distance models", function (done) { 144 audit.define("distance models", (task, should) => {
148 // Check that the .panningModel attribute can be set to all legal values . 145 // Check that the .panningModel attribute can be set to all legal values .
149 var distanceModels = ["linear", "inverse", "exponential"]; 146 var distanceModels = ["linear", "inverse", "exponential"];
150 147
151 var success = true;
152 for (var i = 0; i < distanceModels.length; ++i) { 148 for (var i = 0; i < distanceModels.length; ++i) {
153 success = Should('panner.distanceModel = "' + distanceModels[i] + '"', 149 should(
154 function () { 150 function () {
155 panner.distanceModel = distanceModels[i]; 151 panner.distanceModel = distanceModels[i];
156 }).notThrow() && success; 152 },
153 'panner.distanceModel = "' + distanceModels[i] + '"')
154 .notThrow();
157 155
158 success = Should('panner.distanceModel = "' + distanceModels[i] + '"', panner 156 should(panner.distanceModel,
159 .distanceModel) 157 'panner.distanceModel = "' + distanceModels[i] + '"')
160 .beEqualTo(distanceModels[i]) && success; 158 .beEqualTo(distanceModels[i]);
161 } 159 }
162 160
163 success = Should('panner.distanceModel = "invalid"', function () { 161 should(function () {
164 panner.distanceModel = "invalid"; 162 panner.distanceModel = "invalid";
165 }).notThrow() && success; 163 },
164 'panner.distanceModel = "invalid"')
165 .notThrow();
166 166
167 success = Should("panner.distanceModel", panner.distanceModel) 167 should(panner.distanceModel, "panner.distanceModel")
168 .beEqualTo("exponential") && success; 168 .beEqualTo("exponential");
169 169
170 Should("Basic Panner distance models tests", success) 170 task.done();
171 .summarize("passed", "failed");
172 done();
173 }); 171 });
174 172
175 audit.runTasks(); 173 audit.run();
176 </script> 174 </script>
177 175
178 </body> 176 </body>
179 177
180 </html> 178 </html>
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698