summaryrefslogtreecommitdiffstats
path: root/dom/canvas/test/webgl-mochitest/test_fb_param_crash.html
diff options
context:
space:
mode:
Diffstat (limited to 'dom/canvas/test/webgl-mochitest/test_fb_param_crash.html')
-rw-r--r--dom/canvas/test/webgl-mochitest/test_fb_param_crash.html41
1 files changed, 41 insertions, 0 deletions
diff --git a/dom/canvas/test/webgl-mochitest/test_fb_param_crash.html b/dom/canvas/test/webgl-mochitest/test_fb_param_crash.html
new file mode 100644
index 0000000000..4046309ba6
--- /dev/null
+++ b/dom/canvas/test/webgl-mochitest/test_fb_param_crash.html
@@ -0,0 +1,41 @@
+<!DOCTYPE HTML>
+<title>WebGL test: bug 958723</title>
+<script src="/tests/SimpleTest/SimpleTest.js"></script>
+<link rel="stylesheet" href="/tests/SimpleTest/test.css">
+<script src="driver-info.js"></script>
+<body>
+<canvas id="c"></canvas>
+<script>
+
+// Give ourselves a scope to return early from:
+(function() {
+ var gl = c.getContext('webgl');
+ if (!gl) {
+ todo(false, 'WebGL is unavailable.');
+ return;
+ }
+
+ function checkGLError(func, info, reference) {
+ var error = gl.getError();
+ var prefix = info ? ('[' + info + '] ') : '';
+ var text = 'gl.getError should be 0x' + reference.toString(16) +
+ ', was 0x' + error.toString(16) + '.';
+ func(error == reference, prefix + text);
+ }
+
+ // Begin test:
+ if (!gl.getExtension('WEBGL_draw_buffers')) {
+ todo(false, 'Not having this extension is fine.');
+ return;
+ }
+ checkGLError(ok, 'before bad param query', 0);
+
+ var result = gl.getFramebufferAttachmentParameter(gl.FRAMEBUFFER,
+ gl.COLOR_ATTACHMENT0,
+ gl.FRAMEBUFFER_ATTACHMENT_OBJECT_NAME);
+
+ checkGLError(ok, 'after bad param query', gl.INVALID_OPERATION);
+})();
+
+</script>
+