toDataURL.jpeg.quality.outsiderange.html (1944B)
1 <!DOCTYPE html> 2 <!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. --> 3 <title>Canvas test: toDataURL.jpeg.quality.outsiderange</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> 7 <link rel="stylesheet" href="/html/canvas/resources/canvas-tests.css"> 8 <body class="show_output"> 9 10 <h1>toDataURL.jpeg.quality.outsiderange</h1> 11 <p class="desc">toDataURL with JPEG handles out-of-range quality parameters</p> 12 13 14 <p class="output">Actual output:</p> 15 <canvas id="c" class="output" width="100" height="50"><p class="fallback">FAIL (fallback content)</p></canvas> 16 17 <ul id="d"></ul> 18 <script> 19 var t = async_test("toDataURL with JPEG handles out-of-range quality parameters"); 20 _addTest(function(canvas, ctx) { 21 22 ctx.fillStyle = '#00f'; 23 ctx.fillRect(0, 0, 100, 50); 24 ctx.fillStyle = '#0ff'; 25 ctx.fillRect(0, 3, 100, 1); 26 // Check for JPEG support first 27 var data = canvas.toDataURL('image/jpeg'); 28 if (!data.match(/^data:image\/jpeg[;,]/)) { 29 _assert(true, "true"); 30 } else { 31 _assertSame(canvas.toDataURL('image/jpeg', 10), data, "canvas.toDataURL('image/jpeg', 10)", "data"); 32 _assertSame(canvas.toDataURL('image/jpeg', -10), data, "canvas.toDataURL('image/jpeg', -10)", "data"); 33 _assertSame(canvas.toDataURL('image/jpeg', 1.01), data, "canvas.toDataURL('image/jpeg', 1.01)", "data"); 34 _assertSame(canvas.toDataURL('image/jpeg', -0.01), data, "canvas.toDataURL('image/jpeg', -0.01)", "data"); 35 36 _assert(canvas.toDataURL('image/jpeg', 1).length >= canvas.toDataURL('image/jpeg', 0.9).length, "canvas.toDataURL('image/jpeg', 1).length >= canvas.toDataURL('image/jpeg', 0.9).length"); 37 _assert(canvas.toDataURL('image/jpeg', 0).length <= canvas.toDataURL('image/jpeg', 0.1).length, "canvas.toDataURL('image/jpeg', 0).length <= canvas.toDataURL('image/jpeg', 0.1).length"); 38 } 39 40 41 }); 42 </script>