59 lines
1.3 KiB
HTML
59 lines
1.3 KiB
HTML
<!DOCTYPE html>
|
|
<html>
|
|
<body>
|
|
<a id="result"></a>
|
|
<script>
|
|
if (window.testRunner)
|
|
testRunner.dumpAsText();
|
|
|
|
canvas = document.createElement("canvas");
|
|
document.body.appendChild(canvas);
|
|
canvas.width = 100;
|
|
canvas.height = 100;
|
|
ctx = canvas.getContext("2d");
|
|
ctx.moveTo(25,25);
|
|
ctx.arc(25, 25, 25, Math.PI, 500*Math.PI, false);
|
|
ctx.closePath();
|
|
|
|
ctx.moveTo(75, 75);
|
|
ctx.arc(75, 75, 25, 500*Math.PI, Math.PI, true);
|
|
ctx.fillStyle = '#0f0';
|
|
ctx.fill();
|
|
|
|
var result = document.getElementById("result");
|
|
var passed = true;
|
|
|
|
checkPixel(25, 25, 0, 255, 0, 255);
|
|
checkPixel(75, 75, 0, 255, 0, 255);
|
|
if (passed) result.innerHTML = "PASSED";
|
|
|
|
function checkPixel(x, y, r, g, b, a) {
|
|
var data = ctx.getImageData(x,y,1,1).data;
|
|
var red = data[0];
|
|
var green = data[1];
|
|
var blue = data[2];
|
|
var alpha = data[3];
|
|
|
|
if (red != r) {
|
|
result.innerHTML += "Red should be "+r+", but was "+red+". ";
|
|
passed = false;
|
|
}
|
|
if (green != g) {
|
|
result.innerHTML += "green should be "+g+", but was "+green+". ";
|
|
passed = false;
|
|
}
|
|
if (blue != b) {
|
|
result.innerHTML += "blue should be "+b+", but was "+blue+". ";
|
|
passed = false;
|
|
}
|
|
if (alpha != a) {
|
|
result.innerHTML += "alpha should be "+a+", but was "+alpha+". ";
|
|
passed = false;
|
|
}
|
|
}
|
|
|
|
</script>
|
|
</body>
|
|
</html>
|
|
|