       program2.vertex.append 'void main(void) { gl_Position = vec4(2); }'
       program2.fragment.append fcode
 
-    it 'should produce a different GL program', ->
+    xit 'should produce a different GL program', ->
       program.compile @context
       program2.compile @context
       expect(program.glShader(@context).program).not.toBe program2.glShader(@context).program
 
-    it 'should produce a different GL vertex shader', ->
+    xit 'should produce a different GL vertex shader', ->
       program.compile @context
       program2.compile @context
       expect(program.glShader(@context).vertex).not.toBe program2.glShader(@context).vertex
 
-    it 'should produce the same GL fragment shader', ->
+    xit 'should produce the same GL fragment shader', ->
       program.compile @context
       program2.compile @context
       expect(program.glShader(@context).fragment).toBe program2.glShader(@context).fragment

      program2.vertex.append vcode
      program2.fragment.append fcode
      
    it 'sanity check', ->
      expect(program.vertex).not.toBe program2.vertex
      expect(program.fragment).not.toBe program2.fragment
      expect(program.glShader(@context).program).toBe program.glShader(@context).program
      expect(program.glShader(@context).vertex).toBe program.glShader(@context).vertex
      expect(program.glShader(@context).fragment).toBe program.glShader(@context).fragment
    
    it 'should produce the same GL program', ->
      program.compile @context
      program2.compile @context
      expect(program.glShader(@context).program).toBe program2.glShader(@context).program
      
    it 'should produce the same GL vertex shader', ->
      program.compile @context
      program2.compile @context
      expect(program.glShader(@context).vertex).toBe program2.glShader(@context).vertex
      
    it 'should produce the same GL fragment shader', ->
      program.compile @context
      program2.compile @context
      expect(program.glShader(@context).fragment).toBe program2.glShader(@context).fragment

      program.bind @context
      expect(program.compile).toHaveBeenCalled()

  # Specs for shader recycling are disabled because the funcitonality is too,
  # it proved too slow to initialize (though effective once initialized). May
  # revisit this with Web Workers in v3.1+.
  describe "compiling two different programs with identical sources", ->
    program2 = null
    beforeEach ->
