Files
ladybird/Tests/LibWeb/Screenshot/input/canvas-fillstyle-rgb.html
Aliaksandr Kalenik d2528dd5ce LibWeb: Compare Screenshot tests directly against expected PNGs
Instead of rendering a reference HTML page that wraps an <img> tag
pointing to a PNG, Screenshot tests now load the expected PNG directly
from disk and compare it against the rendered screenshot. This
eliminates the indirection of loading and rendering a second page just
to display a static image.

This also means --rebaseline now works for Screenshot tests, generating
the expected PNG automatically instead of requiring manual screenshot
capture and placement.

Changes:
- Add TestMode::Screenshot with its own collector and runner
- Move PNGs from Screenshot/images/ to Screenshot/expected/ with
  normalized names matching input filenames
- Remove all 92 reference HTML wrapper files and the images/
  directory
- Remove <link rel="match"> from all 94 Screenshot input HTML
  files
- Update add_libweb_test.py Screenshot boilerplate accordingly
- Add Screenshot mode to results viewer image comparison tabs
2026-02-24 09:55:14 +01:00

36 lines
856 B
HTML

<!DOCTYPE html>
<style>
* {
margin: 0;
}
body {
background-color: white;
}
</style>
<canvas width=500 height=500></canvas>
<script type="text/javascript">
const canvas = document.querySelector("canvas");
const ctx = canvas.getContext("2d");
// Integer numbers
ctx.fillStyle = "rgb(0,255,0)";
ctx.fillRect(0, 0, 500, 100);
// Decimal numbers
ctx.fillStyle = "rgb(254.56022744510793,0.28813966673057,0.2973971574794)";
ctx.fillRect(0, 100, 500, 100);
// Numbers below 0 and above 255 should be clamped
ctx.fillStyle = "rgba(-50,-50,500,1)";
ctx.fillRect(0, 200, 500, 100);
// Percentages
ctx.fillStyle = "rgb(0%, 100%, 0%)";
ctx.fillRect(0, 300, 500, 100);
// Calc
ctx.fillStyle = "rgb(calc(infinity), 0, 0)";
ctx.fillRect(0, 400, 500, 100);
</script>