Commit 4b464dd4 by Gert Wollny Committed by Angle LUCI CQ

tests: Skip WebGL/EnableProgramBinaryExtension with no formats

If the extensions is exposed, but the backend doesn't support binary formats, then the part of the tests loading and storing a binary shader are skipped. With that also Capture/Replay of the test is fixed. Bug: angleproject:6112 Change-Id: Iaa25860a9be69207e4dbd6213cf77e75fd87a766 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2993090 Commit-Queue: Gert Wollny <gert.wollny@collabora.com> Reviewed-by: 's avatarCody Northrop <cnorthrop@google.com> Reviewed-by: 's avatarJamie Madill <jmadill@chromium.org>
parent b3e920e2
......@@ -53,7 +53,6 @@ VertexAttributeTest.*
ViewportTest.*
VulkanExternalImageTest.*
WebGLCompatibilityTest.EnableProgramBinaryExtension/*
WebGLCompatibilityTest.MultiContextNoRenderingFeedbackLoops/*
WebGLFramebufferTest.*
......
......@@ -1147,8 +1147,9 @@ TEST_P(WebGLCompatibilityTest, EnableProgramBinaryExtension)
// This extensions become core in in ES3/WebGL2.
ANGLE_SKIP_TEST_IF(getClientMajorVersion() >= 3);
GLint result = 0;
glGetIntegerv(GL_NUM_PROGRAM_BINARY_FORMATS, &result);
GLint result = 0;
GLint numBinaryFormats = 0;
glGetIntegerv(GL_NUM_PROGRAM_BINARY_FORMATS, &numBinaryFormats);
EXPECT_GL_ERROR(GL_INVALID_ENUM);
glGetIntegerv(GL_PROGRAM_BINARY_FORMATS, &result);
......@@ -1182,7 +1183,10 @@ void main()
glRequestExtensionANGLE("GL_OES_get_program_binary");
EXPECT_GL_NO_ERROR();
glGetIntegerv(GL_NUM_PROGRAM_BINARY_FORMATS, &result);
glGetIntegerv(GL_NUM_PROGRAM_BINARY_FORMATS, &numBinaryFormats);
// No use to test further if no binary formats are supported
ANGLE_SKIP_TEST_IF(numBinaryFormats < 1);
glGetIntegerv(GL_PROGRAM_BINARY_FORMATS, &result);
EXPECT_GL_NO_ERROR();
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment