OLD | NEW |
| (Empty) |
1 <!DOCTYPE html> | |
2 <!-- DO NOT EDIT! This test has been generated by tools/gentest.py. --> | |
3 <title>OffscreenCanvas test: 2d.missingargs</title> | |
4 <script src="/resources/testharness.js"></script> | |
5 <script src="/resources/testharnessreport.js"></script> | |
6 <script src="/common/canvas-tests.js"></script> | |
7 | |
8 <h1>2d.missingargs</h1> | |
9 <p class="desc">Missing arguments cause TypeError</p> | |
10 | |
11 | |
12 <script> | |
13 var t = async_test("Missing arguments cause TypeError"); | |
14 t.step(function() { | |
15 | |
16 var offscreenCanvas = new OffscreenCanvas(100, 50); | |
17 var ctx = offscreenCanvas.getContext('2d'); | |
18 | |
19 assert_throws(new TypeError(), function() { ctx.scale(); }); | |
20 assert_throws(new TypeError(), function() { ctx.scale(1); }); | |
21 assert_throws(new TypeError(), function() { ctx.rotate(); }); | |
22 assert_throws(new TypeError(), function() { ctx.translate(); }); | |
23 assert_throws(new TypeError(), function() { ctx.translate(0); }); | |
24 if (ctx.transform) { // (avoid spurious failures, since the aim here is not to t
est that all features are supported) | |
25 assert_throws(new TypeError(), function() { ctx.transform(); }); | |
26 assert_throws(new TypeError(), function() { ctx.transform(1); }); | |
27 assert_throws(new TypeError(), function() { ctx.transform(1, 0); }); | |
28 assert_throws(new TypeError(), function() { ctx.transform(1, 0, 0); }); | |
29 assert_throws(new TypeError(), function() { ctx.transform(1, 0, 0, 1); }); | |
30 assert_throws(new TypeError(), function() { ctx.transform(1, 0, 0, 1, 0); })
; | |
31 } | |
32 if (ctx.setTransform) { | |
33 assert_throws(new TypeError(), function() { ctx.setTransform(); }); | |
34 assert_throws(new TypeError(), function() { ctx.setTransform(1); }); | |
35 assert_throws(new TypeError(), function() { ctx.setTransform(1, 0); }); | |
36 assert_throws(new TypeError(), function() { ctx.setTransform(1, 0, 0); }); | |
37 assert_throws(new TypeError(), function() { ctx.setTransform(1, 0, 0, 1); })
; | |
38 assert_throws(new TypeError(), function() { ctx.setTransform(1, 0, 0, 1, 0);
}); | |
39 } | |
40 assert_throws(new TypeError(), function() { ctx.createLinearGradient(); }); | |
41 assert_throws(new TypeError(), function() { ctx.createLinearGradient(0); }); | |
42 assert_throws(new TypeError(), function() { ctx.createLinearGradient(0, 0); }); | |
43 assert_throws(new TypeError(), function() { ctx.createLinearGradient(0, 0, 1); }
); | |
44 assert_throws(new TypeError(), function() { ctx.createRadialGradient(); }); | |
45 assert_throws(new TypeError(), function() { ctx.createRadialGradient(0); }); | |
46 assert_throws(new TypeError(), function() { ctx.createRadialGradient(0, 0); }); | |
47 assert_throws(new TypeError(), function() { ctx.createRadialGradient(0, 0, 1); }
); | |
48 assert_throws(new TypeError(), function() { ctx.createRadialGradient(0, 0, 1, 0)
; }); | |
49 assert_throws(new TypeError(), function() { ctx.createRadialGradient(0, 0, 1, 0,
0); }); | |
50 assert_throws(new TypeError(), function() { ctx.createPattern(offscreenCanvas);
}); | |
51 assert_throws(new TypeError(), function() { ctx.clearRect(); }); | |
52 assert_throws(new TypeError(), function() { ctx.clearRect(0); }); | |
53 assert_throws(new TypeError(), function() { ctx.clearRect(0, 0); }); | |
54 assert_throws(new TypeError(), function() { ctx.clearRect(0, 0, 0); }); | |
55 assert_throws(new TypeError(), function() { ctx.fillRect(); }); | |
56 assert_throws(new TypeError(), function() { ctx.fillRect(0); }); | |
57 assert_throws(new TypeError(), function() { ctx.fillRect(0, 0); }); | |
58 assert_throws(new TypeError(), function() { ctx.fillRect(0, 0, 0); }); | |
59 assert_throws(new TypeError(), function() { ctx.strokeRect(); }); | |
60 assert_throws(new TypeError(), function() { ctx.strokeRect(0); }); | |
61 assert_throws(new TypeError(), function() { ctx.strokeRect(0, 0); }); | |
62 assert_throws(new TypeError(), function() { ctx.strokeRect(0, 0, 0); }); | |
63 assert_throws(new TypeError(), function() { ctx.moveTo(); }); | |
64 assert_throws(new TypeError(), function() { ctx.moveTo(0); }); | |
65 assert_throws(new TypeError(), function() { ctx.lineTo(); }); | |
66 assert_throws(new TypeError(), function() { ctx.lineTo(0); }); | |
67 assert_throws(new TypeError(), function() { ctx.quadraticCurveTo(); }); | |
68 assert_throws(new TypeError(), function() { ctx.quadraticCurveTo(0); }); | |
69 assert_throws(new TypeError(), function() { ctx.quadraticCurveTo(0, 0); }); | |
70 assert_throws(new TypeError(), function() { ctx.quadraticCurveTo(0, 0, 0); }); | |
71 assert_throws(new TypeError(), function() { ctx.bezierCurveTo(); }); | |
72 assert_throws(new TypeError(), function() { ctx.bezierCurveTo(0); }); | |
73 assert_throws(new TypeError(), function() { ctx.bezierCurveTo(0, 0); }); | |
74 assert_throws(new TypeError(), function() { ctx.bezierCurveTo(0, 0, 0); }); | |
75 assert_throws(new TypeError(), function() { ctx.bezierCurveTo(0, 0, 0, 0); }); | |
76 assert_throws(new TypeError(), function() { ctx.bezierCurveTo(0, 0, 0, 0, 0); })
; | |
77 assert_throws(new TypeError(), function() { ctx.arcTo(); }); | |
78 assert_throws(new TypeError(), function() { ctx.arcTo(0); }); | |
79 assert_throws(new TypeError(), function() { ctx.arcTo(0, 0); }); | |
80 assert_throws(new TypeError(), function() { ctx.arcTo(0, 0, 0); }); | |
81 assert_throws(new TypeError(), function() { ctx.arcTo(0, 0, 0, 0); }); | |
82 assert_throws(new TypeError(), function() { ctx.rect(); }); | |
83 assert_throws(new TypeError(), function() { ctx.rect(0); }); | |
84 assert_throws(new TypeError(), function() { ctx.rect(0, 0); }); | |
85 assert_throws(new TypeError(), function() { ctx.rect(0, 0, 0); }); | |
86 assert_throws(new TypeError(), function() { ctx.arc(); }); | |
87 assert_throws(new TypeError(), function() { ctx.arc(0); }); | |
88 assert_throws(new TypeError(), function() { ctx.arc(0, 0); }); | |
89 assert_throws(new TypeError(), function() { ctx.arc(0, 0, 1); }); | |
90 assert_throws(new TypeError(), function() { ctx.arc(0, 0, 1, 0); }); | |
91 assert_throws(new TypeError(), function() { ctx.drawImage(); }); | |
92 assert_throws(new TypeError(), function() { ctx.drawImage(offscreenCanvas); }); | |
93 assert_throws(new TypeError(), function() { ctx.drawImage(offscreenCanvas, 0); }
); | |
94 // TODO: n >= 3 args on drawImage could be either a valid overload, | |
95 // or too few for another overload, or too many for another | |
96 // overload - what should happen? | |
97 if (ctx.createImageData) { | |
98 assert_throws(new TypeError(), function() { ctx.createImageData(); }); | |
99 assert_throws(new TypeError(), function() { ctx.createImageData(1); }); | |
100 } | |
101 if (ctx.getImageData) { | |
102 assert_throws(new TypeError(), function() { ctx.getImageData(); }); | |
103 assert_throws(new TypeError(), function() { ctx.getImageData(0); }); | |
104 assert_throws(new TypeError(), function() { ctx.getImageData(0, 0); }); | |
105 assert_throws(new TypeError(), function() { ctx.getImageData(0, 0, 1); }); | |
106 } | |
107 if (ctx.putImageData) { | |
108 var imgdata = ctx.getImageData(0, 0, 1, 1); | |
109 assert_throws(new TypeError(), function() { ctx.putImageData(); }); | |
110 assert_throws(new TypeError(), function() { ctx.putImageData(imgdata); }); | |
111 assert_throws(new TypeError(), function() { ctx.putImageData(imgdata, 0); })
; | |
112 } | |
113 var g = ctx.createLinearGradient(0, 0, 0, 0); | |
114 assert_throws(new TypeError(), function() { g.addColorStop(); }); | |
115 assert_throws(new TypeError(), function() { g.addColorStop(0); }); | |
116 | |
117 t.done(); | |
118 | |
119 }); | |
120 </script> | |
OLD | NEW |