File: 2d.imageData.createImageBitmap.srgb.rgba.float16.html

package info (click to toggle)
firefox 145.0.1-1
  • links: PTS, VCS
  • area: main
  • in suites: sid
  • size: 4,653,528 kB
  • sloc: cpp: 7,594,999; javascript: 6,459,658; ansic: 3,752,909; python: 1,403,455; xml: 629,809; asm: 438,679; java: 186,421; sh: 67,287; makefile: 19,169; objc: 13,086; perl: 12,982; yacc: 4,583; cs: 3,846; pascal: 3,448; lex: 1,720; ruby: 1,003; exp: 762; php: 436; lisp: 258; awk: 247; sql: 66; sed: 54; csh: 10
file content (43 lines) | stat: -rw-r--r-- 1,682 bytes parent folder | download | duplicates (12)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
<!DOCTYPE html>
<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
<meta charset="UTF-8">
<title>Canvas test: 2d.imageData.createImageBitmap.srgb.rgba.float16</title>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/html/canvas/resources/canvas-tests.js"></script>
<link rel="stylesheet" href="/html/canvas/resources/canvas-tests.css">
<body class="show_output">

<h1>2d.imageData.createImageBitmap.srgb.rgba.float16</h1>
<p class="desc">Verify round-trip of 16-bit float sRGB data ImageData through ImageBitmap</p>


<p class="output">Actual output:</p>
<canvas id="c" class="output" width="100" height="50"><p class="fallback">FAIL (fallback content)</p></canvas>

<ul id="d"></ul>
<script>
promise_test(async t => {

  var canvas = document.getElementById('c');
  var ctx = canvas.getContext('2d', {colorSpace: "srgb", colorType:"float16"});

  const expectedColor = [ 1.0, 2.0, -1.0, 1.0 ];
  var imageData = new ImageData(10, 10, {colorSpace:"srgb", pixelFormat:"rgba-float16"});
  for (let y = 0; y < imageData.height; ++y) {
    for (let x = 0; x < imageData.width; ++x) {
      for (let c = 0; c < 4; ++c) {
        imageData.data[4*(x + y*imageData.width) + c] = expectedColor[c];
      }
    }
  }
  var bitmap = await createImageBitmap(imageData);
  ctx.drawImage(bitmap, 0, 0);
  var pixel = ctx.getImageData(0, 0, 1, 1, {colorSpace:"srgb", pixelFormat:"rgba-float16"});
  for (let c = 0; c < 4; ++c) {
    assert_approx_equals(pixel.data[c], expectedColor[c], 0.01);
  }

}, "Verify round-trip of 16-bit float sRGB data ImageData through ImageBitmap");
</script>