<!DOCTYPE html>
<!-- DO NOT EDIT! This test has been generated by tools/gentest.py. -->
<title>Canvas test: 2d.gradient.interpolate.overlap2</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.gradient.interpolate.overlap2</h1>
<p class="desc"></p>


<p class="output">Actual output:</p>
<canvas id="c" class="output" width="100" height="50"><p class="fallback">FAIL (fallback content)</p></canvas>
<p class="output expectedtext">Expected output:<p><img src="/images/green-100x50.png" class="output expected" id="expected" alt="">
<ul id="d"></ul>
<script>
var t = async_test("");
_addTest(function(canvas, ctx) {

var g = ctx.createLinearGradient(0, 0, 100, 0);
var ps = [ 0, 1/10, 1/4, 1/3, 1/2, 3/4, 1 ];
for (var p = 0; p < ps.length; ++p)
{
        g.addColorStop(ps[p], '#0f0');
        for (var i = 0; i < 15; ++i)
                g.addColorStop(ps[p], '#f00');
        g.addColorStop(ps[p], '#0f0');
}
ctx.fillStyle = g;
ctx.fillRect(0, 0, 100, 50);
_assertPixel(canvas, 1,25, 0,255,0,255, "1,25", "0,255,0,255");
_assertPixel(canvas, 30,25, 0,255,0,255, "30,25", "0,255,0,255");
_assertPixel(canvas, 40,25, 0,255,0,255, "40,25", "0,255,0,255");
_assertPixel(canvas, 60,25, 0,255,0,255, "60,25", "0,255,0,255");
_assertPixel(canvas, 80,25, 0,255,0,255, "80,25", "0,255,0,255");


});
</script>

