3 class UniformTest : public ANGLETest
11 setConfigGreenBits(8);
13 setConfigAlphaBits(8);
20 const std::string &vertexShader = "void main() { gl_Position = vec4(1); }";
21 const std::string &fragShader =
22 "precision mediump float;\n"
23 "uniform float uniF;\n"
25 "void main() { gl_FragColor = vec4(uniF + float(uniI)); }";
27 mProgram = CompileProgram(vertexShader, fragShader);
28 ASSERT_NE(mProgram, 0u);
30 mUniformFLocation = glGetUniformLocation(mProgram, "uniF");
31 ASSERT_NE(mUniformFLocation, -1);
33 mUniformILocation = glGetUniformLocation(mProgram, "uniI");
34 ASSERT_NE(mUniformILocation, -1);
39 virtual void TearDown()
41 glDeleteProgram(mProgram);
42 ANGLETest::TearDown();
46 GLint mUniformFLocation;
47 GLint mUniformILocation;
50 TEST_F(UniformTest, GetUniformNoCurrentProgram)
52 glUseProgram(mProgram);
53 glUniform1f(mUniformFLocation, 1.0f);
54 glUniform1i(mUniformILocation, 1);
58 glGetnUniformfvEXT(mProgram, mUniformFLocation, 4, &f);
62 glGetUniformfv(mProgram, mUniformFLocation, &f);
67 glGetnUniformivEXT(mProgram, mUniformILocation, 4, &i);
71 glGetUniformiv(mProgram, mUniformILocation, &i);