| <!DOCTYPE html> | |
| <!-- DO NOT EDIT! This test has been generated by tools/gentest.py. --> | |
| <title>Canvas test: 2d.imageData.get.nonfinite</title> | |
| <script src="/resources/testharness.js"></script> | |
| <script src="/resources/testharnessreport.js"></script> | |
| <script src="/common/canvas-tests.js"></script> | |
| <link rel="stylesheet" href="/common/canvas-tests.css"> | |
| <body class="show_output"> | |
| <h1>2d.imageData.get.nonfinite</h1> | |
| <p class="desc">getImageData() throws TypeError if arguments are not finite</p> | |
| <p class="notes">Defined in "Web IDL" (draft) | |
| <p class="output">Actual output:</p> | |
| <canvas id="c" class="output" width="100" height="50"><p class="fallback">FAIL (fallback content)</p></canvas> | |
| <ul id="d"></ul> | |
| <script> | |
| var t = async_test("getImageData() throws TypeError if arguments are not finite"); | |
| _addTest(function(canvas, ctx) { | |
| assert_throws(new TypeError(), function() { ctx.getImageData(Infinity, 10, 10, 10); }); | |
| assert_throws(new TypeError(), function() { ctx.getImageData(-Infinity, 10, 10, 10); }); | |
| assert_throws(new TypeError(), function() { ctx.getImageData(NaN, 10, 10, 10); }); | |
| assert_throws(new TypeError(), function() { ctx.getImageData(10, Infinity, 10, 10); }); | |
| assert_throws(new TypeError(), function() { ctx.getImageData(10, -Infinity, 10, 10); }); | |
| assert_throws(new TypeError(), function() { ctx.getImageData(10, NaN, 10, 10); }); | |
| assert_throws(new TypeError(), function() { ctx.getImageData(10, 10, Infinity, 10); }); | |
| assert_throws(new TypeError(), function() { ctx.getImageData(10, 10, -Infinity, 10); }); | |
| assert_throws(new TypeError(), function() { ctx.getImageData(10, 10, NaN, 10); }); | |
| assert_throws(new TypeError(), function() { ctx.getImageData(10, 10, 10, Infinity); }); | |
| assert_throws(new TypeError(), function() { ctx.getImageData(10, 10, 10, -Infinity); }); | |
| assert_throws(new TypeError(), function() { ctx.getImageData(10, 10, 10, NaN); }); | |
| assert_throws(new TypeError(), function() { ctx.getImageData(Infinity, Infinity, 10, 10); }); | |
| assert_throws(new TypeError(), function() { ctx.getImageData(Infinity, Infinity, Infinity, 10); }); | |
| assert_throws(new TypeError(), function() { ctx.getImageData(Infinity, Infinity, Infinity, Infinity); }); | |
| assert_throws(new TypeError(), function() { ctx.getImageData(Infinity, Infinity, 10, Infinity); }); | |
| assert_throws(new TypeError(), function() { ctx.getImageData(Infinity, 10, Infinity, 10); }); | |
| assert_throws(new TypeError(), function() { ctx.getImageData(Infinity, 10, Infinity, Infinity); }); | |
| assert_throws(new TypeError(), function() { ctx.getImageData(Infinity, 10, 10, Infinity); }); | |
| assert_throws(new TypeError(), function() { ctx.getImageData(10, Infinity, Infinity, 10); }); | |
| assert_throws(new TypeError(), function() { ctx.getImageData(10, Infinity, Infinity, Infinity); }); | |
| assert_throws(new TypeError(), function() { ctx.getImageData(10, Infinity, 10, Infinity); }); | |
| assert_throws(new TypeError(), function() { ctx.getImageData(10, 10, Infinity, Infinity); }); | |
| var posinfobj = { valueOf: function() { return Infinity; } }, | |
| neginfobj = { valueOf: function() { return -Infinity; } }, | |
| nanobj = { valueOf: function() { return -Infinity; } }; | |
| assert_throws(new TypeError(), function() { ctx.getImageData(posinfobj, 10, 10, 10); }); | |
| assert_throws(new TypeError(), function() { ctx.getImageData(neginfobj, 10, 10, 10); }); | |
| assert_throws(new TypeError(), function() { ctx.getImageData(nanobj, 10, 10, 10); }); | |
| assert_throws(new TypeError(), function() { ctx.getImageData(10, posinfobj, 10, 10); }); | |
| assert_throws(new TypeError(), function() { ctx.getImageData(10, neginfobj, 10, 10); }); | |
| assert_throws(new TypeError(), function() { ctx.getImageData(10, nanobj, 10, 10); }); | |
| assert_throws(new TypeError(), function() { ctx.getImageData(10, 10, posinfobj, 10); }); | |
| assert_throws(new TypeError(), function() { ctx.getImageData(10, 10, neginfobj, 10); }); | |
| assert_throws(new TypeError(), function() { ctx.getImageData(10, 10, nanobj, 10); }); | |
| assert_throws(new TypeError(), function() { ctx.getImageData(10, 10, 10, posinfobj); }); | |
| assert_throws(new TypeError(), function() { ctx.getImageData(10, 10, 10, neginfobj); }); | |
| assert_throws(new TypeError(), function() { ctx.getImageData(10, 10, 10, nanobj); }); | |
| assert_throws(new TypeError(), function() { ctx.getImageData(posinfobj, posinfobj, 10, 10); }); | |
| assert_throws(new TypeError(), function() { ctx.getImageData(posinfobj, posinfobj, posinfobj, 10); }); | |
| assert_throws(new TypeError(), function() { ctx.getImageData(posinfobj, posinfobj, posinfobj, posinfobj); }); | |
| assert_throws(new TypeError(), function() { ctx.getImageData(posinfobj, posinfobj, 10, posinfobj); }); | |
| assert_throws(new TypeError(), function() { ctx.getImageData(posinfobj, 10, posinfobj, 10); }); | |
| assert_throws(new TypeError(), function() { ctx.getImageData(posinfobj, 10, posinfobj, posinfobj); }); | |
| assert_throws(new TypeError(), function() { ctx.getImageData(posinfobj, 10, 10, posinfobj); }); | |
| assert_throws(new TypeError(), function() { ctx.getImageData(10, posinfobj, posinfobj, 10); }); | |
| assert_throws(new TypeError(), function() { ctx.getImageData(10, posinfobj, posinfobj, posinfobj); }); | |
| assert_throws(new TypeError(), function() { ctx.getImageData(10, posinfobj, 10, posinfobj); }); | |
| assert_throws(new TypeError(), function() { ctx.getImageData(10, 10, posinfobj, posinfobj); }); | |
| }); | |
| </script> | |