blob: 5452d3f09f394b63d7180bc7eb0f866dd9efaaea [file] [log] [blame]
Tests deletion behavior for texture, renderbuffer, shader, and program
On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
shader and program deletion
PASS vertex shader loaded
PASS fragment shader loaded
PASS program is non-null.
PASS gl.attachShader(program, vertexShader) was expected value: NO_ERROR.
PASS gl.attachShader(program, fragmentShader) was expected value: NO_ERROR.
PASS gl.linkProgram(program) was expected value: NO_ERROR.
PASS gl.getProgramParameter(program, gl.LINK_STATUS) is true
PASS gl.useProgram(program) was expected value: NO_ERROR.
PASS gl.deleteShader(vertexShader) was expected value: NO_ERROR.
PASS gl.isShader(vertexShader) is true
PASS gl.getShaderParameter(vertexShader, gl.DELETE_STATUS) is true
PASS gl.detachShader(program, vertexShader) was expected value: NO_ERROR.
PASS gl.isShader(vertexShader) is false
PASS gl.deleteShader(fragmentShader) was expected value: NO_ERROR.
PASS gl.isShader(fragmentShader) is true
PASS gl.getShaderParameter(fragmentShader, gl.DELETE_STATUS) is true
PASS gl.deleteProgram(program) was expected value: NO_ERROR.
PASS gl.isProgram(program) is true
PASS gl.getProgramParameter(program, gl.DELETE_STATUS) is true
PASS gl.useProgram(null) was expected value: NO_ERROR.
PASS gl.isProgram(program) is false
PASS gl.isShader(fragmentShader) is false
texture deletion
PASS fbo is non-null.
PASS fbo2 is non-null.
PASS fbo3 is non-null.
PASS gl.bindFramebuffer(gl.FRAMEBUFFER, fbo) was expected value: NO_ERROR.
PASS tex is non-null.
PASS gl.bindTexture(gl.TEXTURE_2D, tex) was expected value: NO_ERROR.
PASS gl.getParameter(gl.TEXTURE_BINDING_2D) is tex
PASS gl.framebufferTexture2D(gl.FRAMEBUFFER, gl.COLOR_ATTACHMENT0, gl.TEXTURE_2D, tex, 0) was expected value: NO_ERROR.
PASS gl.getFramebufferAttachmentParameter(gl.FRAMEBUFFER, gl.COLOR_ATTACHMENT0, gl.FRAMEBUFFER_ATTACHMENT_OBJECT_NAME) is tex
PASS gl.getFramebufferAttachmentParameter(gl.FRAMEBUFFER, gl.COLOR_ATTACHMENT0, gl.FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE) is gl.TEXTURE
PASS gl.deleteTexture(tex) was expected value: NO_ERROR.
PASS gl.getFramebufferAttachmentParameter(gl.FRAMEBUFFER, gl.COLOR_ATTACHMENT0, gl.FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE) is gl.NONE
PASS gl.getFramebufferAttachmentParameter(gl.FRAMEBUFFER, gl.COLOR_ATTACHMENT0, gl.FRAMEBUFFER_ATTACHMENT_OBJECT_NAME) was expected value: INVALID_ENUM.
PASS gl.isTexture(tex) is false
PASS gl.getParameter(gl.TEXTURE_BINDING_2D) is null
PASS gl.bindTexture(gl.TEXTURE_2D, tex) was expected value: NO_ERROR.
PASS gl.getParameter(gl.TEXTURE_BINDING_2D) is null
PASS texCubeMap is non-null.
PASS gl.bindTexture(gl.TEXTURE_CUBE_MAP, texCubeMap) was expected value: NO_ERROR.
PASS gl.getParameter(gl.TEXTURE_BINDING_CUBE_MAP) is texCubeMap
PASS gl.deleteTexture(texCubeMap) was expected value: NO_ERROR.
PASS gl.isTexture(texCubeMap) is false
PASS gl.getParameter(gl.TEXTURE_BINDING_CUBE_MAP) is null
PASS gl.bindTexture(gl.TEXTURE_CUBE_MAP, texCubeMap) was expected value: NO_ERROR.
PASS gl.getParameter(gl.TEXTURE_BINDING_CUBE_MAP) is null
PASS t is non-null.
PASS gl.bindTexture(gl.TEXTURE_2D, t) was expected value: NO_ERROR.
PASS gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_S, gl.CLAMP_TO_EDGE) was expected value: NO_ERROR.
PASS gl.deleteTexture(t) was expected value: NO_ERROR.
PASS gl.bindTexture(gl.TEXTURE_2D, t) was expected value: NO_ERROR.
PASS gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_S, gl.CLAMP_TO_EDGE) was expected value: INVALID_OPERATION.
PASS t2 is non-null.
PASS gl.activeTexture(gl.TEXTURE0) was expected value: NO_ERROR.
PASS gl.bindTexture(gl.TEXTURE_2D, t2) was expected value: NO_ERROR.
PASS gl.getParameter(gl.TEXTURE_BINDING_2D) is t2
PASS gl.activeTexture(gl.TEXTURE1) was expected value: NO_ERROR.
PASS gl.bindTexture(gl.TEXTURE_2D, t2) was expected value: NO_ERROR.
PASS gl.getParameter(gl.TEXTURE_BINDING_2D) is t2
PASS gl.deleteTexture(t2) was expected value: NO_ERROR.
PASS gl.getParameter(gl.TEXTURE_BINDING_2D) is null
PASS gl.activeTexture(gl.TEXTURE0) was expected value: NO_ERROR.
PASS gl.getParameter(gl.TEXTURE_BINDING_2D) is null
renderbuffer deletion
PASS rbo is non-null.
PASS rbo2 is non-null.
PASS rbo3 is non-null.
PASS gl.bindRenderbuffer(gl.RENDERBUFFER, rbo) was expected value: NO_ERROR.
PASS gl.getParameter(gl.RENDERBUFFER_BINDING) is rbo
PASS gl.framebufferRenderbuffer(gl.FRAMEBUFFER, gl.COLOR_ATTACHMENT0, gl.RENDERBUFFER, rbo) was expected value: NO_ERROR.
PASS gl.getFramebufferAttachmentParameter(gl.FRAMEBUFFER, gl.COLOR_ATTACHMENT0, gl.FRAMEBUFFER_ATTACHMENT_OBJECT_NAME) is rbo
PASS gl.deleteRenderbuffer(rbo) was expected value: NO_ERROR.
PASS gl.getFramebufferAttachmentParameter(gl.FRAMEBUFFER, gl.COLOR_ATTACHMENT0, gl.FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE) is gl.NONE
PASS gl.getFramebufferAttachmentParameter(gl.FRAMEBUFFER, gl.COLOR_ATTACHMENT0, gl.FRAMEBUFFER_ATTACHMENT_OBJECT_NAME) was expected value: INVALID_ENUM.
PASS gl.isRenderbuffer(rbo) is false
PASS gl.getParameter(gl.RENDERBUFFER_BINDING) is null
PASS gl.bindRenderbuffer(gl.RENDERBUFFER, rbo) was expected value: NO_ERROR.
PASS gl.getParameter(gl.RENDERBUFFER_BINDING) is null
PASS gl.bindRenderbuffer(gl.RENDERBUFFER, rbo2) was expected value: NO_ERROR.
PASS gl.getParameter(gl.RENDERBUFFER_BINDING) is rbo2
PASS gl.deleteRenderbuffer(rbo3) was expected value: NO_ERROR.
PASS gl.getParameter(gl.RENDERBUFFER_BINDING) is rbo2
using deleted renderbuffer
PASS gl.bindRenderbuffer(gl.RENDERBUFFER, rbo) was expected value: NO_ERROR.
PASS gl.renderbufferStorage(gl.RENDERBUFFER, gl.RGBA4, 16, 16) was expected value: NO_ERROR.
PASS gl.bindFramebuffer(gl.FRAMEBUFFER, fbo) was expected value: NO_ERROR.
PASS gl.framebufferRenderbuffer(gl.FRAMEBUFFER, gl.COLOR_ATTACHMENT0, gl.RENDERBUFFER, rbo) was expected value: NO_ERROR.
PASS gl.bindFramebuffer(gl.FRAMEBUFFER, null) was expected value: NO_ERROR.
PASS gl.clearColor(1,0,0,1) was expected value: NO_ERROR.
PASS gl.clear(gl.COLOR_BUFFER_BIT) was expected value: NO_ERROR.
PASS gl.bindFramebuffer(gl.FRAMEBUFFER, fbo) was expected value: NO_ERROR.
PASS gl.clearColor(0,1,0,1) was expected value: NO_ERROR.
PASS gl.clear(gl.COLOR_BUFFER_BIT) was expected value: NO_ERROR.
PASS gl.bindFramebuffer(gl.FRAMEBUFFER, null) was expected value: NO_ERROR.
PASS gl.deleteRenderbuffer(rbo) was expected value: NO_ERROR.
PASS backbuffer should be red
PASS wtu.checkCanvasRect(gl, 0, 0, 16, 16, [255,0,0,255], "backbuffer should be red") was expected value: NO_ERROR.
PASS gl.bindFramebuffer(gl.FRAMEBUFFER, fbo) was expected value: NO_ERROR.
PASS fbo should be green
PASS wtu.checkCanvasRect(gl, 0, 0, 16, 16, [0,255,0,255], "fbo should be green") was expected value: NO_ERROR.
PASS gl.clearColor(0,0,1,1) was expected value: NO_ERROR.
PASS gl.clear(gl.COLOR_BUFFER_BIT) was expected value: NO_ERROR.
PASS fbo should be blue
PASS wtu.checkCanvasRect(gl, 0, 0, 16, 16, [0,0,255,255], "fbo should be blue") was expected value: NO_ERROR.
PASS gl.bindFramebuffer(gl.FRAMEBUFFER, null) was expected value: NO_ERROR.
PASS backbuffer should be red
PASS wtu.checkCanvasRect(gl, 0, 0, 16, 16, [255,0,0,255], "backbuffer should be red") was expected value: NO_ERROR.
renderbuffer attached twice to same framebuffer
PASS gl.bindRenderbuffer(gl.RENDERBUFFER, rbo) was expected value: NO_ERROR.
PASS gl.renderbufferStorage(gl.RENDERBUFFER, gl.RGBA4, 16, 16) was expected value: NO_ERROR.
PASS gl.bindFramebuffer(gl.FRAMEBUFFER, fbo) was expected value: NO_ERROR.
PASS gl.framebufferRenderbuffer(gl.FRAMEBUFFER, gl.COLOR_ATTACHMENT0, gl.RENDERBUFFER, rbo) was expected value: NO_ERROR.
PASS gl.bindRenderbuffer(gl.RENDERBUFFER, rbo2) was expected value: NO_ERROR.
PASS gl.renderbufferStorage(gl.RENDERBUFFER, gl.RGBA4, 16, 16) was expected value: NO_ERROR.
PASS gl.framebufferRenderbuffer(gl.FRAMEBUFFER, gl.DEPTH_ATTACHMENT, gl.RENDERBUFFER, rbo2) was expected value: NO_ERROR.
PASS gl.framebufferRenderbuffer(gl.FRAMEBUFFER, gl.STENCIL_ATTACHMENT, gl.RENDERBUFFER, rbo2) was expected value: NO_ERROR.
PASS gl.getFramebufferAttachmentParameter(gl.FRAMEBUFFER, gl.DEPTH_ATTACHMENT, gl.FRAMEBUFFER_ATTACHMENT_OBJECT_NAME) is rbo2
PASS gl.getFramebufferAttachmentParameter(gl.FRAMEBUFFER, gl.STENCIL_ATTACHMENT, gl.FRAMEBUFFER_ATTACHMENT_OBJECT_NAME) is rbo2
PASS gl.checkFramebufferStatus(gl.FRAMEBUFFER) is not gl.FRAMEBUFFER_COMPLETE
PASS gl.deleteRenderbuffer(rbo2) was expected value: NO_ERROR.
PASS gl.getFramebufferAttachmentParameter(gl.FRAMEBUFFER, gl.DEPTH_ATTACHMENT, gl.FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE) is gl.NONE
PASS gl.getFramebufferAttachmentParameter(gl.FRAMEBUFFER, gl.STENCIL_ATTACHMENT, gl.FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE) is gl.NONE
PASS gl.checkFramebufferStatus(gl.FRAMEBUFFER) is gl.FRAMEBUFFER_COMPLETE
PASS gl.getFramebufferAttachmentParameter(gl.FRAMEBUFFER, gl.COLOR_ATTACHMENT0, gl.FRAMEBUFFER_ATTACHMENT_OBJECT_NAME) is rbo
PASS gl.deleteRenderbuffer(rbo) was expected value: NO_ERROR.
PASS gl.bindFramebuffer(gl.FRAMEBUFFER, null) was expected value: NO_ERROR.
using deleted texture
PASS gl.bindTexture(gl.TEXTURE_2D, tex) was expected value: NO_ERROR.
PASS gl.bindFramebuffer(gl.FRAMEBUFFER, fbo) was expected value: NO_ERROR.
PASS gl.framebufferTexture2D(gl.FRAMEBUFFER, gl.COLOR_ATTACHMENT0, gl.TEXTURE_2D, tex, 0) was expected value: NO_ERROR.
PASS gl.texImage2D(gl.TEXTURE_2D, 0, gl.RGBA, 1, 1, 0, gl.RGBA, gl.UNSIGNED_BYTE, null) was expected value: NO_ERROR.
PASS gl.bindFramebuffer(gl.FRAMEBUFFER, fbo) was expected value: NO_ERROR.
PASS gl.clearColor(0,1,0,1) was expected value: NO_ERROR.
PASS gl.clear(gl.COLOR_BUFFER_BIT) was expected value: NO_ERROR.
PASS gl.bindFramebuffer(gl.FRAMEBUFFER, null) was expected value: NO_ERROR.
PASS gl.deleteTexture(tex) was expected value: NO_ERROR.
PASS backbuffer should be red
PASS wtu.checkCanvasRect(gl, 0, 0, 1, 1, [255,0,0,255], "backbuffer should be red") was expected value: NO_ERROR.
PASS gl.bindFramebuffer(gl.FRAMEBUFFER, fbo) was expected value: NO_ERROR.
PASS fbo should be green
PASS wtu.checkCanvasRect(gl, 0, 0, 1, 1, [0,255,0,255], "fbo should be green") was expected value: NO_ERROR.
PASS gl.clearColor(0,0,1,1) was expected value: NO_ERROR.
PASS gl.clear(gl.COLOR_BUFFER_BIT) was expected value: NO_ERROR.
PASS fbo should be blue
PASS wtu.checkCanvasRect(gl, 0, 0, 1, 1, [0,0,255,255], "fbo should be blue") was expected value: NO_ERROR.
PASS gl.bindFramebuffer(gl.FRAMEBUFFER, null) was expected value: NO_ERROR.
PASS backbuffer should be red
PASS wtu.checkCanvasRect(gl, 0, 0, 16, 16, [255,0,0,255], "backbuffer should be red") was expected value: NO_ERROR.
using deleted renderbuffer
PASS rbo is non-null.
PASS gl.bindRenderbuffer(gl.RENDERBUFFER, rbo) was expected value: NO_ERROR.
PASS gl.renderbufferStorage(gl.RENDERBUFFER, gl.RGBA4, 16, 16) was expected value: NO_ERROR.
PASS gl.bindFramebuffer(gl.FRAMEBUFFER, fbo) was expected value: NO_ERROR.
PASS gl.framebufferRenderbuffer(gl.FRAMEBUFFER, gl.COLOR_ATTACHMENT0, gl.RENDERBUFFER, rbo) was expected value: NO_ERROR.
PASS gl.bindFramebuffer(gl.FRAMEBUFFER, fbo2) was expected value: NO_ERROR.
PASS gl.framebufferRenderbuffer(gl.FRAMEBUFFER, gl.COLOR_ATTACHMENT0, gl.RENDERBUFFER, rbo) was expected value: NO_ERROR.
PASS gl.checkFramebufferStatus(gl.FRAMEBUFFER) is gl.FRAMEBUFFER_COMPLETE
PASS gl.bindFramebuffer(gl.FRAMEBUFFER, null) was expected value: NO_ERROR.
PASS gl.clearColor(1,0,0,1) was expected value: NO_ERROR.
PASS gl.clear(gl.COLOR_BUFFER_BIT) was expected value: NO_ERROR.
PASS gl.bindFramebuffer(gl.FRAMEBUFFER, fbo) was expected value: NO_ERROR.
PASS gl.clearColor(0,1,0,1) was expected value: NO_ERROR.
PASS gl.clear(gl.COLOR_BUFFER_BIT) was expected value: NO_ERROR.
PASS gl.deleteRenderbuffer(rbo) was expected value: NO_ERROR.
PASS gl.checkFramebufferStatus(gl.FRAMEBUFFER) is not gl.FRAMEBUFFER_COMPLETE
PASS gl.bindFramebuffer(gl.FRAMEBUFFER, fbo2) was expected value: NO_ERROR.
PASS fbo should be green
PASS wtu.checkCanvasRect(gl, 0, 0, 16, 16, [0,255,0,255], "fbo should be green") was expected value: NO_ERROR.
PASS gl.clearColor(0,0,1,1) was expected value: NO_ERROR.
PASS gl.clear(gl.COLOR_BUFFER_BIT) was expected value: NO_ERROR.
PASS fbo should be blue
PASS wtu.checkCanvasRect(gl, 0, 0, 16, 16, [0,0,255,255], "fbo should be blue") was expected value: NO_ERROR.
PASS gl.getFramebufferAttachmentParameter(gl.FRAMEBUFFER, gl.COLOR_ATTACHMENT0, gl.FRAMEBUFFER_ATTACHMENT_OBJECT_NAME) is rbo
PASS gl.bindFramebuffer(gl.FRAMEBUFFER, fbo) was expected value: NO_ERROR.
PASS gl.getFramebufferAttachmentParameter(gl.FRAMEBUFFER, gl.COLOR_ATTACHMENT0, gl.FRAMEBUFFER_ATTACHMENT_OBJECT_NAME) was expected value: INVALID_ENUM.
PASS gl.getFramebufferAttachmentParameter(gl.FRAMEBUFFER, gl.COLOR_ATTACHMENT0, gl.FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE) was expected value: NO_ERROR.
PASS gl.checkFramebufferStatus(gl.FRAMEBUFFER) is not gl.FRAMEBUFFER_COMPLETE
PASS gl.bindFramebuffer(gl.FRAMEBUFFER, null) was expected value: NO_ERROR.
PASS backbuffer should be red
PASS wtu.checkCanvasRect(gl, 0, 0, 16, 16, [255,0,0,255], "backbuffer should be red") was expected value: NO_ERROR.
using deleted texture
PASS tex is non-null.
PASS gl.bindTexture(gl.TEXTURE_2D, tex) was expected value: NO_ERROR.
PASS gl.bindFramebuffer(gl.FRAMEBUFFER, fbo) was expected value: NO_ERROR.
PASS gl.framebufferTexture2D(gl.FRAMEBUFFER, gl.COLOR_ATTACHMENT0, gl.TEXTURE_2D, tex, 0) was expected value: NO_ERROR.
PASS gl.texImage2D(gl.TEXTURE_2D, 0, gl.RGBA, 1, 1, 0, gl.RGBA, gl.UNSIGNED_BYTE, null) was expected value: NO_ERROR.
PASS gl.bindFramebuffer(gl.FRAMEBUFFER, fbo2) was expected value: NO_ERROR.
PASS gl.framebufferTexture2D(gl.FRAMEBUFFER, gl.COLOR_ATTACHMENT0, gl.TEXTURE_2D, tex, 0) was expected value: NO_ERROR.
PASS gl.bindFramebuffer(gl.FRAMEBUFFER, fbo) was expected value: NO_ERROR.
PASS gl.clearColor(0,1,0,1) was expected value: NO_ERROR.
PASS gl.clear(gl.COLOR_BUFFER_BIT) was expected value: NO_ERROR.
PASS gl.deleteTexture(tex) was expected value: NO_ERROR.
PASS gl.checkFramebufferStatus(gl.FRAMEBUFFER) is not gl.FRAMEBUFFER_COMPLETE
PASS gl.bindFramebuffer(gl.FRAMEBUFFER, fbo2) was expected value: NO_ERROR.
PASS gl.checkFramebufferStatus(gl.FRAMEBUFFER) is gl.FRAMEBUFFER_COMPLETE
PASS fbo should be green
PASS wtu.checkCanvasRect(gl, 0, 0, 1, 1, [0,255,0,255], "fbo should be green") was expected value: NO_ERROR.
PASS gl.clearColor(0,0,1,1) was expected value: NO_ERROR.
PASS gl.clear(gl.COLOR_BUFFER_BIT) was expected value: NO_ERROR.
PASS fbo should be blue
PASS wtu.checkCanvasRect(gl, 0, 0, 1, 1, [0,0,255,255], "fbo should be blue") was expected value: NO_ERROR.
PASS gl.getFramebufferAttachmentParameter(gl.FRAMEBUFFER, gl.COLOR_ATTACHMENT0, gl.FRAMEBUFFER_ATTACHMENT_OBJECT_NAME) is tex
PASS gl.bindFramebuffer(gl.FRAMEBUFFER, fbo) was expected value: NO_ERROR.
PASS gl.getFramebufferAttachmentParameter(gl.FRAMEBUFFER, gl.COLOR_ATTACHMENT0, gl.FRAMEBUFFER_ATTACHMENT_OBJECT_NAME) was expected value: INVALID_ENUM.
PASS gl.checkFramebufferStatus(gl.FRAMEBUFFER) is not gl.FRAMEBUFFER_COMPLETE
PASS gl.bindFramebuffer(gl.FRAMEBUFFER, null) was expected value: NO_ERROR.
PASS backbuffer should be red
PASS wtu.checkCanvasRect(gl, 0, 0, 16, 16, [255,0,0,255], "backbuffer should be red") was expected value: NO_ERROR.
buffer deletion
PASS buffer is non-null.
PASS gl.bindBuffer(gl.ARRAY_BUFFER, buffer) was expected value: NO_ERROR.
PASS gl.getParameter(gl.ARRAY_BUFFER_BINDING) is buffer
PASS gl.deleteBuffer(buffer) was expected value: NO_ERROR.
PASS gl.isBuffer(buffer) is false
PASS gl.getParameter(gl.ARRAY_BUFFER_BINDING) is null
PASS gl.bindBuffer(gl.ARRAY_BUFFER, buffer) was expected value: NO_ERROR.
PASS gl.getParameter(gl.ARRAY_BUFFER_BINDING) is null
PASS buffer2 is non-null.
PASS gl.bindBuffer(gl.ARRAY_BUFFER, buffer2) was expected value: NO_ERROR.
PASS gl.getParameter(gl.ARRAY_BUFFER_BINDING) is buffer2
PASS gl.bindBuffer(gl.ARRAY_BUFFER, null) was expected value: NO_ERROR.
PASS gl.getParameter(gl.ARRAY_BUFFER_BINDING) is null
PASS gl.deleteBuffer(buffer2) was expected value: NO_ERROR.
PASS gl.isBuffer(buffer2) is false
PASS gl.bindBuffer(gl.ARRAY_BUFFER, buffer2) was expected value: NO_ERROR.
PASS gl.getParameter(gl.ARRAY_BUFFER_BINDING) is null
PASS bufferElement is non-null.
PASS gl.bindBuffer(gl.ELEMENT_ARRAY_BUFFER, bufferElement) was expected value: NO_ERROR.
PASS gl.getParameter(gl.ELEMENT_ARRAY_BUFFER_BINDING) is bufferElement
PASS gl.deleteBuffer(bufferElement) was expected value: NO_ERROR.
PASS gl.isBuffer(bufferElement) is false
PASS gl.getParameter(gl.ELEMENT_ARRAY_BUFFER_BINDING) is null
PASS gl.bindBuffer(gl.ELEMENT_ARRAY_BUFFER, bufferElement) was expected value: NO_ERROR.
PASS gl.getParameter(gl.ELEMENT_ARRAY_BUFFER_BINDING) is null
PASS b is non-null.
PASS gl.bindBuffer(gl.ARRAY_BUFFER, b) was expected value: NO_ERROR.
PASS gl.bufferData(gl.ARRAY_BUFFER, 1, gl.STATIC_DRAW) was expected value: NO_ERROR.
PASS gl.deleteBuffer(b) was expected value: NO_ERROR.
PASS gl.bindBuffer(gl.ARRAY_BUFFER, b) was expected value: NO_ERROR.
PASS gl.bufferData(gl.ARRAY_BUFFER, 1, gl.STATIC_DRAW) was expected value: INVALID_OPERATION.
PASS b1 is non-null.
PASS gl.bindBuffer(gl.ARRAY_BUFFER, b1); was expected value: NO_ERROR.
PASS gl.enableVertexAttribArray(1); was expected value: NO_ERROR.
PASS gl.vertexAttribPointer(1, 4, gl.FLOAT, false, 0, 0); was expected value: NO_ERROR.
PASS b2 is non-null.
PASS gl.bindBuffer(gl.ARRAY_BUFFER, b2); was expected value: NO_ERROR.
PASS gl.enableVertexAttribArray(2); was expected value: NO_ERROR.
PASS gl.vertexAttribPointer(2, 4, gl.FLOAT, false, 0, 0); was expected value: NO_ERROR.
PASS gl.enableVertexAttribArray(3); was expected value: NO_ERROR.
PASS gl.vertexAttribPointer(3, 4, gl.FLOAT, false, 0, 0); was expected value: NO_ERROR.
PASS gl.getVertexAttrib(1, gl.VERTEX_ATTRIB_ARRAY_BUFFER_BINDING) is b1
PASS gl.getVertexAttrib(2, gl.VERTEX_ATTRIB_ARRAY_BUFFER_BINDING) is b2
PASS gl.getVertexAttrib(3, gl.VERTEX_ATTRIB_ARRAY_BUFFER_BINDING) is b2
PASS gl.deleteBuffer(b2); was expected value: NO_ERROR.
PASS gl.getVertexAttrib(1, gl.VERTEX_ATTRIB_ARRAY_BUFFER_BINDING) is b1
PASS gl.getVertexAttrib(2, gl.VERTEX_ATTRIB_ARRAY_BUFFER_BINDING) is null
PASS gl.getVertexAttrib(3, gl.VERTEX_ATTRIB_ARRAY_BUFFER_BINDING) is null
PASS gl.deleteBuffer(b1); was expected value: NO_ERROR.
PASS gl.getVertexAttrib(1, gl.VERTEX_ATTRIB_ARRAY_BUFFER_BINDING) is null
framebuffer deletion
PASS gl.bindFramebuffer(gl.FRAMEBUFFER, fbo) was expected value: NO_ERROR.
PASS gl.getParameter(gl.FRAMEBUFFER_BINDING) is fbo
PASS gl.deleteFramebuffer(fbo) was expected value: NO_ERROR.
PASS gl.isFramebuffer(fbo) is false
PASS gl.getParameter(gl.FRAMEBUFFER_BINDING) is null
PASS gl.bindFramebuffer(gl.FRAMEBUFFER, fbo) was expected value: NO_ERROR.
PASS gl.getParameter(gl.FRAMEBUFFER_BINDING) is null
PASS gl.bindFramebuffer(gl.FRAMEBUFFER, fbo2) was expected value: NO_ERROR.
PASS gl.getParameter(gl.FRAMEBUFFER_BINDING) is fbo2
PASS gl.deleteFramebuffer(fbo3) was expected value: NO_ERROR.
PASS gl.getParameter(gl.FRAMEBUFFER_BINDING) is fbo2
PASS fbo is non-null.
PASS rbo is non-null.
PASS gl.bindFramebuffer(gl.FRAMEBUFFER, fbo) was expected value: NO_ERROR.
PASS gl.bindRenderbuffer(gl.RENDERBUFFER, rbo) was expected value: NO_ERROR.
PASS gl.renderbufferStorage(gl.RENDERBUFFER, gl.RGBA4, 16, 16) was expected value: NO_ERROR.
PASS gl.framebufferRenderbuffer(gl.FRAMEBUFFER, gl.COLOR_ATTACHMENT0, gl.RENDERBUFFER, rbo) was expected value: NO_ERROR.
PASS gl.bindFramebuffer(gl.FRAMEBUFFER, null) was expected value: NO_ERROR.
PASS gl.clearColor(1,0,0,1) was expected value: NO_ERROR.
PASS gl.clear(gl.COLOR_BUFFER_BIT) was expected value: NO_ERROR.
PASS gl.bindFramebuffer(gl.FRAMEBUFFER, fbo) was expected value: NO_ERROR.
PASS gl.clearColor(0,1,0,1) was expected value: NO_ERROR.
PASS gl.clear(gl.COLOR_BUFFER_BIT) was expected value: NO_ERROR.
PASS fbo should be green
PASS wtu.checkCanvasRect(gl, 0, 0, 16, 16, [0,255,0,255], "fbo should be green") was expected value: NO_ERROR.
PASS outside fbo should be black
PASS wtu.checkCanvasRect(gl, 16, 16, 1, 1, [0,0,0,0], "outside fbo should be black") was expected value: NO_ERROR.
PASS gl.deleteFramebuffer(fbo) was expected value: NO_ERROR.
PASS backbuffer should be red
PASS wtu.checkCanvasRect(gl, 0, 0, 300, 150, [255,0,0,255], "backbuffer should be red") was expected value: NO_ERROR.
PASS outside backbuffer should be black
PASS wtu.checkCanvasRect(gl, 300, 0, 300, 300, [0,0,0,0], "outside backbuffer should be black") was expected value: NO_ERROR.
PASS outside backbuffer should be black
PASS wtu.checkCanvasRect(gl, 0, 150, 300, 300, [0,0,0,0], "outside backbuffer should be black") was expected value: NO_ERROR.
PASS gl.clearColor(0,1,0,1) was expected value: NO_ERROR.
PASS gl.clear(gl.COLOR_BUFFER_BIT) was expected value: NO_ERROR.
PASS fbo should be green
PASS wtu.checkCanvasRect(gl, 0, 0, 300, 150, [0,255,0,255], "fbo should be green") was expected value: NO_ERROR.
PASS gl.bindFramebuffer(gl.FRAMEBUFFER, null) was expected value: NO_ERROR.
PASS fbo should be green
PASS wtu.checkCanvasRect(gl, 0, 0, 300, 150, [0,255,0,255], "fbo should be green") was expected value: NO_ERROR.
PASS successfullyParsed is true
TEST COMPLETE