Bug 1826805 [wpt PR 39409] - Fix quote style in generated WPT filter tests., a=testonly
[gecko.git] / testing / web-platform / tests / html / canvas / offscreen / filters / 2d.filter.canvasFilterObject.turbulence.inputTypes.tentative.html
blob2ed61e66d0335be76c33a71a30cfb18d5304bf03
1 <!DOCTYPE html>
2 <!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
3 <title>OffscreenCanvas test: 2d.filter.canvasFilterObject.turbulence.inputTypes.tentative</title>
4 <script src="/resources/testharness.js"></script>
5 <script src="/resources/testharnessreport.js"></script>
6 <script src="/html/canvas/resources/canvas-tests.js"></script>
8 <h1>2d.filter.canvasFilterObject.turbulence.inputTypes.tentative</h1>
9 <p class="desc">Test exceptions on CanvasFilter() turbulence object</p>
12 <script>
13 var t = async_test("Test exceptions on CanvasFilter() turbulence object");
14 var t_pass = t.done.bind(t);
15 var t_fail = t.step_func(function(reason) {
16 throw reason;
17 });
18 t.step(async function() {
20 var canvas = new OffscreenCanvas(100, 50);
21 var ctx = canvas.getContext('2d');
23 await (function(canvas, ctx) {
24 const errorTestCases = [
25 {baseFrequency: {}},
26 {baseFrequency: -1},
27 {baseFrequency: [0, -1]},
28 {baseFrequency: NaN},
29 {baseFrequency: Infinity},
30 {baseFrequency: undefined},
31 {baseFrequency: -Infinity},
32 {baseFrequency: 'test'},
34 {numOctaves: {}},
35 {numOctaves: -1},
36 {numOctaves: NaN},
37 {numOctaves: Infinity},
38 {numOctaves: undefined},
39 {numOctaves: -Infinity},
40 {numOctaves: [1, 1]},
41 {numOctaves: 'test'},
43 {seed: {}},
44 {seed: NaN},
45 {seed: Infinity},
46 {seed: undefined},
47 {seed: -Infinity},
48 {seed: [1, 1]},
49 {seed: 'test'},
51 {stitchTiles: {}},
52 {stitchTiles: NaN},
53 {stitchTiles: Infinity},
54 {stitchTiles: undefined},
55 {stitchTiles: -Infinity},
56 {stitchTiles: [1, 1]},
57 {stitchTiles: 'test'},
58 {stitchTiles: null},
59 {stitchTiles: []},
60 {stitchTiles: [10]},
61 {stitchTiles: 30},
62 {stitchTiles: false},
63 {stitchTiles: true},
64 {stitchTiles: '10'},
65 {stitchTiles: -1},
67 {type: {}},
68 {type: NaN},
69 {type: Infinity},
70 {type: undefined},
71 {type: -Infinity},
72 {type: [1, 1]},
73 {type: 'test'},
74 {type: null},
75 {type: []},
76 {type: [10]},
77 {type: 30},
78 {type: false},
79 {type: true},
80 {type: '10'},
81 {type: -1},
84 // null and [] = 0 when parsed as number
85 const workingTestCases = [
86 {baseFrequency: null},
87 {baseFrequency: []},
88 {baseFrequency: [10]},
89 {baseFrequency: [10, 3]},
90 {baseFrequency: 30},
91 {baseFrequency: false},
92 {baseFrequency: true},
93 {baseFrequency: '10'},
95 {numOctaves: null},
96 {numOctaves: []},
97 {numOctaves: [10]},
98 {numOctaves: 30},
99 {numOctaves: false},
100 {numOctaves: true},
101 {numOctaves: '10'},
103 {seed: null},
104 {seed: []},
105 {seed: [10]},
106 {seed: 30},
107 {seed: false},
108 {seed: true},
109 {seed: '10'},
110 {seed: -1},
112 {stitchTiles: 'stitch'},
113 {stitchTiles: 'noStitch'},
115 {type: 'fractalNoise'},
116 {type: 'turbulence'},
119 for (testCase of errorTestCases) {
120 const filterOptions = {...{filter: 'turbulence'}, ...testCase};
121 assert_throws_js(TypeError, function() { new CanvasFilter(filterOptions); });
124 for (testCase of workingTestCases) {
125 const filterOptions = {...{filter: 'turbulence'}, ...testCase};
126 _assert(new CanvasFilter(filterOptions) != null, "new CanvasFilter(filterOptions) != null");
128 })(canvas, ctx);
129 t.done();
132 </script>