<!DOCTYPE html>
<head>
<style>
body {
    background: black;
 }
</style>
<body>
This test checks if the color bleeds due to interpolation filter when the canvas is stretched. We expect to see a white band extending from left to right without any vertical black lines.
<canvas id='foo' width='100' height='100' style='width:500px;height:100px'> </canvas>
<script>

if (window.testRunner) {
  testRunner.waitUntilDone();
}

var i = 0;
var ctx = document.getElementById("foo").getContext("2d");
ctx.fillStyle = 'white';

function draw_slice() {
    if (i >= 100) {
      if (window.testRunner) {
        testRunner.notifyDone();
      }
    }
    ctx.fillRect(i, 0, 2, 100);
    i+=2;
    window.requestAnimationFrame(draw_slice);
}

draw_slice();
</script>
</body>
</head>
