2d.imageData.put.dirty.outside.html (1779B)
1 <!DOCTYPE html> 2 <!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. --> 3 <meta charset="UTF-8"> 4 <title>Canvas test: 2d.imageData.put.dirty.outside</title> 5 <script src="/resources/testharness.js"></script> 6 <script src="/resources/testharnessreport.js"></script> 7 <script src="/html/canvas/resources/canvas-tests.js"></script> 8 <link rel="stylesheet" href="/html/canvas/resources/canvas-tests.css"> 9 <body class="show_output"> 10 11 <h1>2d.imageData.put.dirty.outside</h1> 12 <p class="desc">putImageData() handles dirty rectangles outside the canvas correctly</p> 13 14 15 <p class="output">Actual output:</p> 16 <canvas id="c" class="output" width="100" height="50"><p class="fallback">FAIL (fallback content)</p></canvas> 17 <p class="output expectedtext">Expected output:<p><img src="/images/green-100x50.png" class="output expected" id="expected" alt=""> 18 <ul id="d"></ul> 19 <script> 20 var t = async_test("putImageData() handles dirty rectangles outside the canvas correctly"); 21 _addTest(function(canvas, ctx) { 22 23 ctx.fillStyle = '#f00'; 24 ctx.fillRect(0, 0, 100, 50) 25 26 var imgdata = ctx.getImageData(0, 0, 100, 50); 27 28 ctx.fillStyle = '#0f0'; 29 ctx.fillRect(0, 0, 100, 50) 30 31 ctx.putImageData(imgdata, 100, 20, 20, 20, -20, -20); 32 ctx.putImageData(imgdata, 200, 200, 0, 0, 100, 50); 33 ctx.putImageData(imgdata, 40, 20, -30, -20, 30, 20); 34 ctx.putImageData(imgdata, -30, 20, 0, 0, 30, 20); 35 36 _assertPixelApprox(canvas, 50,25, 0,255,0,255, 2); 37 _assertPixelApprox(canvas, 98,15, 0,255,0,255, 2); 38 _assertPixelApprox(canvas, 98,25, 0,255,0,255, 2); 39 _assertPixelApprox(canvas, 98,45, 0,255,0,255, 2); 40 _assertPixelApprox(canvas, 1,5, 0,255,0,255, 2); 41 _assertPixelApprox(canvas, 1,25, 0,255,0,255, 2); 42 _assertPixelApprox(canvas, 1,45, 0,255,0,255, 2); 43 44 }); 45 </script>