Blame dom/bindings/test/test_integers.html

Packit f0b94e
Packit f0b94e
<html>
Packit f0b94e
<head>
Packit f0b94e
  <meta charset="utf-8">
Packit f0b94e
  <script type="application/javascript" src="/tests/SimpleTest/SimpleTest.js"></script>
Packit f0b94e
  <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css"/>
Packit f0b94e
</head>
Packit f0b94e
<body>
Packit f0b94e

Packit f0b94e
Packit f0b94e
  <canvas id="c" width="1" height="1"></canvas>
Packit f0b94e
Packit f0b94e
Packit f0b94e
<script type="application/javascript">
Packit f0b94e
Packit f0b94e
  function testInt64NonFinite(arg) {
Packit f0b94e
    // We can use a WebGLRenderingContext to test conversion to 64-bit signed
Packit f0b94e
    // ints edge cases.
Packit f0b94e
    var gl = $("c").getContext("experimental-webgl");
Packit f0b94e
    if (!gl) {
Packit f0b94e
      // No WebGL support on MacOS 10.5.  Just skip this test
Packit f0b94e
      todo(false, "WebGL not supported");
Packit f0b94e
      return;
Packit f0b94e
    }
Packit f0b94e
    var error = gl.getError()
Packit f0b94e
Packit f0b94e
    // on the b2g emulator we get GL_INVALID_FRAMEBUFFER_OPERATION
Packit f0b94e
    if (error == 0x0506) // GL_INVALID_FRAMEBUFFER_OPERATION
Packit f0b94e
        return;
Packit f0b94e
Packit f0b94e
    is(error, 0, "Should not start in an error state");
Packit f0b94e
Packit f0b94e
    var b = gl.createBuffer();
Packit f0b94e
    gl.bindBuffer(gl.ARRAY_BUFFER, b);
Packit f0b94e
Packit f0b94e
    var a = new Float32Array(1);
Packit f0b94e
    gl.bufferData(gl.ARRAY_BUFFER, a, gl.STATIC_DRAW);
Packit f0b94e
Packit f0b94e
    gl.bufferSubData(gl.ARRAY_BUFFER, arg, a);
Packit f0b94e
Packit f0b94e
    is(gl.getError(), 0, "Should have treated non-finite double as 0");
Packit f0b94e
  }
Packit f0b94e
Packit f0b94e
  testInt64NonFinite(NaN);
Packit f0b94e
  testInt64NonFinite(Infinity);
Packit f0b94e
  testInt64NonFinite(-Infinity);
Packit f0b94e
</script>
Packit f0b94e
Packit f0b94e
</body>
Packit f0b94e
</html>