[Piglit] [PATCH 3/3] arb_viewport_array: set KHR_no_error compatibility
Samuel Pitoiset
samuel.pitoiset at gmail.com
Fri Jun 23 14:23:46 UTC 2017
Signed-off-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>
---
tests/spec/arb_viewport_array/bounds.c | 53 ++++++++++++----------
tests/spec/arb_viewport_array/clear.c | 1 +
.../spec/arb_viewport_array/depth_range_indices.c | 45 +++++++++---------
tests/spec/arb_viewport_array/minmax.c | 1 +
tests/spec/arb_viewport_array/queries.c | 31 +++++++------
tests/spec/arb_viewport_array/render_depthrange.c | 1 +
tests/spec/arb_viewport_array/render_scissor.c | 1 +
tests/spec/arb_viewport_array/render_viewport.c | 1 +
tests/spec/arb_viewport_array/render_viewport_2.c | 1 +
tests/spec/arb_viewport_array/scissor_check.c | 1 +
tests/spec/arb_viewport_array/scissor_indices.c | 28 +++++++-----
tests/spec/arb_viewport_array/viewport_indices.c | 52 +++++++++++----------
12 files changed, 122 insertions(+), 94 deletions(-)
diff --git a/tests/spec/arb_viewport_array/bounds.c b/tests/spec/arb_viewport_array/bounds.c
index 9a8e8697d..8d43e9f97 100644
--- a/tests/spec/arb_viewport_array/bounds.c
+++ b/tests/spec/arb_viewport_array/bounds.c
@@ -37,6 +37,7 @@ PIGLIT_GL_TEST_CONFIG_BEGIN
config.supports_gl_es_version = 31;
config.window_visual = PIGLIT_GL_VISUAL_RGBA | PIGLIT_GL_VISUAL_DOUBLE;
+ config.khr_no_error_support = PIGLIT_NO_ERRORS;
PIGLIT_GL_TEST_CONFIG_END
@@ -116,18 +117,20 @@ viewport_bounds(GLint maxVP)
pass = piglit_check_gl_error(GL_NO_ERROR) && pass;
- /* negative width, height gives gl error */
- vp[2] = -10.3;
- vp[3] = 0.0;
- for (i = 0; i < 2; i++) {
- glViewportArrayv(0, 1, vp);
- pass = piglit_check_gl_error(GL_INVALID_VALUE) && pass;
- glViewportIndexedf(1, vp[0], vp[1], vp[2], vp[3]);
- pass = piglit_check_gl_error(GL_INVALID_VALUE) && pass;
- glViewportIndexedfv(2, vp);
- pass = piglit_check_gl_error(GL_INVALID_VALUE) && pass;
- vp[2] = 5.0;
- vp[3] = -12345.7;
+ if (!piglit_khr_no_error) {
+ /* negative width, height gives gl error */
+ vp[2] = -10.3;
+ vp[3] = 0.0;
+ for (i = 0; i < 2; i++) {
+ glViewportArrayv(0, 1, vp);
+ pass = piglit_check_gl_error(GL_INVALID_VALUE) && pass;
+ glViewportIndexedf(1, vp[0], vp[1], vp[2], vp[3]);
+ pass = piglit_check_gl_error(GL_INVALID_VALUE) && pass;
+ glViewportIndexedfv(2, vp);
+ pass = piglit_check_gl_error(GL_INVALID_VALUE) && pass;
+ vp[2] = 5.0;
+ vp[3] = -12345.7;
+ }
}
return pass;
@@ -232,18 +235,20 @@ scissor_bounds(GLint maxVP)
glScissorIndexed(0, 0x8000, 0x80000000, 0x7ffff, 0x7fffffff);
pass = piglit_check_gl_error(GL_NO_ERROR) && pass;
- /* negative width, height gives gl error */
- sc[2] = -10;
- sc[3] = 0;
- for (i = 0; i < 2; i++) {
- glScissorArrayv(0, 1, sc);
- pass = piglit_check_gl_error(GL_INVALID_VALUE) && pass;
- glScissorIndexed(1, sc[0], sc[1], sc[2], sc[3]);
- pass = piglit_check_gl_error(GL_INVALID_VALUE) && pass;
- glScissorIndexedv(2, sc);
- pass = piglit_check_gl_error(GL_INVALID_VALUE) && pass;
- sc[2] = 5;
- sc[3] = -12345;
+ if (!piglit_khr_no_error) {
+ /* negative width, height gives gl error */
+ sc[2] = -10;
+ sc[3] = 0;
+ for (i = 0; i < 2; i++) {
+ glScissorArrayv(0, 1, sc);
+ pass = piglit_check_gl_error(GL_INVALID_VALUE) && pass;
+ glScissorIndexed(1, sc[0], sc[1], sc[2], sc[3]);
+ pass = piglit_check_gl_error(GL_INVALID_VALUE) && pass;
+ glScissorIndexedv(2, sc);
+ pass = piglit_check_gl_error(GL_INVALID_VALUE) && pass;
+ sc[2] = 5;
+ sc[3] = -12345;
+ }
}
return pass;
diff --git a/tests/spec/arb_viewport_array/clear.c b/tests/spec/arb_viewport_array/clear.c
index aee9bcab9..3d6200cc6 100644
--- a/tests/spec/arb_viewport_array/clear.c
+++ b/tests/spec/arb_viewport_array/clear.c
@@ -35,6 +35,7 @@ PIGLIT_GL_TEST_CONFIG_BEGIN
config.supports_gl_es_version = 31;
config.window_visual = PIGLIT_GL_VISUAL_RGB | PIGLIT_GL_VISUAL_DOUBLE;
+ config.khr_no_error_support = PIGLIT_NO_ERRORS;
PIGLIT_GL_TEST_CONFIG_END
diff --git a/tests/spec/arb_viewport_array/depth_range_indices.c b/tests/spec/arb_viewport_array/depth_range_indices.c
index 806b24cad..a0f58f456 100644
--- a/tests/spec/arb_viewport_array/depth_range_indices.c
+++ b/tests/spec/arb_viewport_array/depth_range_indices.c
@@ -41,6 +41,7 @@ PIGLIT_GL_TEST_CONFIG_BEGIN
config.supports_gl_es_version = 31;
config.window_visual = PIGLIT_GL_VISUAL_RGBA | PIGLIT_GL_VISUAL_DOUBLE;
+ config.khr_no_error_support = PIGLIT_NO_ERRORS;
PIGLIT_GL_TEST_CONFIG_END
@@ -118,30 +119,32 @@ test_dr_indices(GLint maxVP)
pass = false;
}
- /**
- * invalid count + first index for DepthRange
- * OpenGL Spec Core 4.3 Spec, section 13.6.1 ref:
- * "An INVALID_VALUE error is generated if first + count
- * is greater than the valuue of MAX_VIEWPORTS."
- */
- if (!check_dr_index(maxVP - 2, 3, GL_INVALID_VALUE)) {
- printf("Wrong error for invalid DepthRange index range\n");
- pass = false;
- }
-
- /**
- * invalid count for DepthRange
- * OpenGL Spec Core 4.3 Spec, section 13.6.1 ref:
- * "An INVALID_VALUE error is generated if count is negative."
- */
+ if (!piglit_khr_no_error) {
+ /**
+ * invalid count + first index for DepthRange
+ * OpenGL Spec Core 4.3 Spec, section 13.6.1 ref:
+ * "An INVALID_VALUE error is generated if first + count
+ * is greater than the valuue of MAX_VIEWPORTS."
+ */
+ if (!check_dr_index(maxVP - 2, 3, GL_INVALID_VALUE)) {
+ printf("Wrong error for invalid DepthRange index range\n");
+ pass = false;
+ }
+
+ /**
+ * invalid count for DepthRange
+ * OpenGL Spec Core 4.3 Spec, section 13.6.1 ref:
+ * "An INVALID_VALUE error is generated if count is negative."
+ */
#ifdef PIGLIT_USE_OPENGL
- glDepthRangeArrayv(0, -1, NULL);
+ glDepthRangeArrayv(0, -1, NULL);
#else
- glDepthRangeArrayfvOES(0, -1, NULL);
+ glDepthRangeArrayfvOES(0, -1, NULL);
#endif
- if (!piglit_check_gl_error(GL_INVALID_VALUE)) {
- printf("Wrong error for invalid DepthRange count\n");
- pass = false;
+ if (!piglit_check_gl_error(GL_INVALID_VALUE)) {
+ printf("Wrong error for invalid DepthRange count\n");
+ pass = false;
+ }
}
return pass;
diff --git a/tests/spec/arb_viewport_array/minmax.c b/tests/spec/arb_viewport_array/minmax.c
index 8bb0c9df9..3a1ee3957 100644
--- a/tests/spec/arb_viewport_array/minmax.c
+++ b/tests/spec/arb_viewport_array/minmax.c
@@ -42,6 +42,7 @@ PIGLIT_GL_TEST_CONFIG_BEGIN
config.supports_gl_es_version = 31;
config.window_visual = PIGLIT_GL_VISUAL_DOUBLE | PIGLIT_GL_VISUAL_RGBA;
+ config.khr_no_error_support = PIGLIT_NO_ERRORS;
PIGLIT_GL_TEST_CONFIG_END
diff --git a/tests/spec/arb_viewport_array/queries.c b/tests/spec/arb_viewport_array/queries.c
index 49739315f..efd280b30 100644
--- a/tests/spec/arb_viewport_array/queries.c
+++ b/tests/spec/arb_viewport_array/queries.c
@@ -40,6 +40,7 @@ PIGLIT_GL_TEST_CONFIG_BEGIN
config.supports_gl_es_version = 31;
config.window_visual = PIGLIT_GL_VISUAL_RGBA | PIGLIT_GL_VISUAL_DOUBLE;
+ config.khr_no_error_support = PIGLIT_NO_ERRORS;
PIGLIT_GL_TEST_CONFIG_END
@@ -74,23 +75,25 @@ piglit_init(int argc, char **argv)
#endif
glGetIntegerv(GL_MAX_VIEWPORTS, &maxVP);
- /**
- * Test for invalid (non-indexed "pname") parameters with GetFloati_v
- * and GetDoublei_v
- * NOTE: "index" parameter validity is tested in the depthrange-indices
- * and viewport-indices tests.
- * OpenGL 4.3 Core section 22.1 ref:
- * "An INVALID_ENUM error is generated if target is not indexed
- * state queriable with these commands."
- */
- for (i = 0; i < ARRAY_SIZE(tokens); i++) {
- glGetFloati_v(tokens[i], 1, valf);
- pass = piglit_check_gl_error(GL_INVALID_ENUM) && pass;
+ if (!piglit_khr_no_error) {
+ /**
+ * Test for invalid (non-indexed "pname") parameters with
+ * GetFloati_v and GetDoublei_v
+ * NOTE: "index" parameter validity is tested in the
+ * depthrange-indices and viewport-indices tests.
+ * OpenGL 4.3 Core section 22.1 ref:
+ * "An INVALID_ENUM error is generated if target is not
+ * indexed state queriable with these commands."
+ */
+ for (i = 0; i < ARRAY_SIZE(tokens); i++) {
+ glGetFloati_v(tokens[i], 1, valf);
+ pass = piglit_check_gl_error(GL_INVALID_ENUM) && pass;
#ifdef PIGLIT_USE_OPENGL
- glGetDoublei_v(tokens[i], 1, vald);
- pass = piglit_check_gl_error(GL_INVALID_ENUM) && pass;
+ glGetDoublei_v(tokens[i], 1, vald);
+ pass = piglit_check_gl_error(GL_INVALID_ENUM) && pass;
#endif
+ }
}
/**
diff --git a/tests/spec/arb_viewport_array/render_depthrange.c b/tests/spec/arb_viewport_array/render_depthrange.c
index c7e016f0a..1295917c9 100644
--- a/tests/spec/arb_viewport_array/render_depthrange.c
+++ b/tests/spec/arb_viewport_array/render_depthrange.c
@@ -48,6 +48,7 @@ PIGLIT_GL_TEST_CONFIG_BEGIN
config.supports_gl_es_version = 31;
config.window_visual = PIGLIT_GL_VISUAL_RGBA | PIGLIT_GL_VISUAL_DOUBLE;
+ config.khr_no_error_support = PIGLIT_NO_ERRORS;
PIGLIT_GL_TEST_CONFIG_END
diff --git a/tests/spec/arb_viewport_array/render_scissor.c b/tests/spec/arb_viewport_array/render_scissor.c
index 95d345099..93f07754a 100644
--- a/tests/spec/arb_viewport_array/render_scissor.c
+++ b/tests/spec/arb_viewport_array/render_scissor.c
@@ -48,6 +48,7 @@ PIGLIT_GL_TEST_CONFIG_BEGIN
config.supports_gl_es_version = 31;
config.window_visual = PIGLIT_GL_VISUAL_RGBA | PIGLIT_GL_VISUAL_DOUBLE;
+ config.khr_no_error_support = PIGLIT_NO_ERRORS;
PIGLIT_GL_TEST_CONFIG_END
diff --git a/tests/spec/arb_viewport_array/render_viewport.c b/tests/spec/arb_viewport_array/render_viewport.c
index 50630de91..bdc8b6f00 100644
--- a/tests/spec/arb_viewport_array/render_viewport.c
+++ b/tests/spec/arb_viewport_array/render_viewport.c
@@ -45,6 +45,7 @@ PIGLIT_GL_TEST_CONFIG_BEGIN
config.supports_gl_es_version = 31;
config.window_visual = PIGLIT_GL_VISUAL_RGBA | PIGLIT_GL_VISUAL_DOUBLE;
+ config.khr_no_error_support = PIGLIT_NO_ERRORS;
PIGLIT_GL_TEST_CONFIG_END
diff --git a/tests/spec/arb_viewport_array/render_viewport_2.c b/tests/spec/arb_viewport_array/render_viewport_2.c
index 28c54fad3..3164ff2ee 100644
--- a/tests/spec/arb_viewport_array/render_viewport_2.c
+++ b/tests/spec/arb_viewport_array/render_viewport_2.c
@@ -38,6 +38,7 @@ PIGLIT_GL_TEST_CONFIG_BEGIN
config.supports_gl_es_version = 31;
config.window_visual = PIGLIT_GL_VISUAL_RGBA | PIGLIT_GL_VISUAL_DOUBLE;
+ config.khr_no_error_support = PIGLIT_NO_ERRORS;
PIGLIT_GL_TEST_CONFIG_END
diff --git a/tests/spec/arb_viewport_array/scissor_check.c b/tests/spec/arb_viewport_array/scissor_check.c
index 65262214b..0b106c6d0 100644
--- a/tests/spec/arb_viewport_array/scissor_check.c
+++ b/tests/spec/arb_viewport_array/scissor_check.c
@@ -39,6 +39,7 @@ PIGLIT_GL_TEST_CONFIG_BEGIN
config.supports_gl_es_version = 31;
config.window_visual = PIGLIT_GL_VISUAL_RGBA | PIGLIT_GL_VISUAL_DOUBLE;
+ config.khr_no_error_support = PIGLIT_NO_ERRORS;
PIGLIT_GL_TEST_CONFIG_END
diff --git a/tests/spec/arb_viewport_array/scissor_indices.c b/tests/spec/arb_viewport_array/scissor_indices.c
index e4e73558b..40171ff59 100644
--- a/tests/spec/arb_viewport_array/scissor_indices.c
+++ b/tests/spec/arb_viewport_array/scissor_indices.c
@@ -42,6 +42,7 @@ PIGLIT_GL_TEST_CONFIG_BEGIN
config.supports_gl_es_version = 31;
config.window_visual = PIGLIT_GL_VISUAL_RGBA | PIGLIT_GL_VISUAL_DOUBLE;
+ config.khr_no_error_support = PIGLIT_NO_ERRORS;
PIGLIT_GL_TEST_CONFIG_END
@@ -116,18 +117,21 @@ test_scissor_indices(GLint maxVP)
printf("Got error for valid scissor range, max=%u\n", maxVP);
pass = false;
}
- /**
- * invalid count + first index for Scissor index
- * OpenGL Core 4.3 Spec, section 17.3.2 ref:
- * "An INVALID_VALUE error is generated by ScissorArrayv if
- * first +count is greater than the value of MAX_VIEWPORTS."
- * "If the viewport index specified to Enablei, Disablei or
- * IsEnabledi is greater or equal to the value of
- * MAX_VIEWPORTS, then an INVALID_VALUE error is generated."
- */
- if (!check_sc_index(maxVP - 4, 5, GL_INVALID_VALUE)) {
- printf("Wrong error for invalid Scissor first index\n");
- pass = false;
+
+ if (!piglit_khr_no_error) {
+ /**
+ * invalid count + first index for Scissor index
+ * OpenGL Core 4.3 Spec, section 17.3.2 ref:
+ * "An INVALID_VALUE error is generated by ScissorArrayv if
+ * first +count is greater than the value of MAX_VIEWPORTS."
+ * "If the viewport index specified to Enablei, Disablei or
+ * IsEnabledi is greater or equal to the value of
+ * MAX_VIEWPORTS, then an INVALID_VALUE error is generated."
+ */
+ if (!check_sc_index(maxVP - 4, 5, GL_INVALID_VALUE)) {
+ printf("Wrong error for invalid Scissor first index\n");
+ pass = false;
+ }
}
return pass;
diff --git a/tests/spec/arb_viewport_array/viewport_indices.c b/tests/spec/arb_viewport_array/viewport_indices.c
index 2f7b6d5c3..0088828c3 100644
--- a/tests/spec/arb_viewport_array/viewport_indices.c
+++ b/tests/spec/arb_viewport_array/viewport_indices.c
@@ -45,6 +45,7 @@ PIGLIT_GL_TEST_CONFIG_BEGIN
config.supports_gl_es_version = 31;
config.window_visual = PIGLIT_GL_VISUAL_RGBA | PIGLIT_GL_VISUAL_DOUBLE;
+ config.khr_no_error_support = PIGLIT_NO_ERRORS;
PIGLIT_GL_TEST_CONFIG_END
@@ -111,23 +112,26 @@ test_vp_indices(GLint maxVP)
maxVP);
pass = false;
}
- /**
- * invalid count + first index for viewport
- * OpenGL Spec Core 4.3 Spec, section 13.6.1 ref:
- * "An INVALID_VALUE error is generated if first + count
- * is greater than the value of MAX_VIEWPORTS."
- */
- if (!check_vp_index(maxVP - 1, 2, GL_INVALID_VALUE)) {
- printf("Wrong error for invalid viewport range\n");
- pass = false;
+
+ if (!piglit_khr_no_error) {
+ /**
+ * invalid count + first index for viewport
+ * OpenGL Spec Core 4.3 Spec, section 13.6.1 ref:
+ * "An INVALID_VALUE error is generated if first + count
+ * is greater than the value of MAX_VIEWPORTS."
+ */
+ if (!check_vp_index(maxVP - 1, 2, GL_INVALID_VALUE)) {
+ printf("Wrong error for invalid viewport range\n");
+ pass = false;
+ }
+ /**
+ * invalid count for viewport
+ * OpenGL Spec Core 4.3 Spec, section 13.6.1 ref:
+ * "An INVALID_VALUE error is generated if count is negative."
+ */
+ glViewportArrayv(0, -1, NULL);
+ pass = piglit_check_gl_error(GL_INVALID_VALUE) && pass;
}
- /**
- * invalid count for viewport
- * OpenGL Spec Core 4.3 Spec, section 13.6.1 ref:
- * "An INVALID_VALUE error is generated if count is negative."
- */
- glViewportArrayv(0, -1, NULL);
- pass = piglit_check_gl_error(GL_INVALID_VALUE) && pass;
return pass;
}
@@ -170,17 +174,19 @@ test_preserve_invalid_index(GLint maxVP)
}
pass = piglit_check_gl_error(GL_NO_ERROR) && pass;
- /* set an illegal index and then test that no indices changed*/
- glViewportIndexedf(maxVP, 0.0, 0.0, 1.0, 1.0);
- glScissorIndexed(maxVP, 0, 0, 1, 1);
+ if (!piglit_khr_no_error) {
+ /* set an illegal index and then test that no indices changed*/
+ glViewportIndexedf(maxVP, 0.0, 0.0, 1.0, 1.0);
+ glScissorIndexed(maxVP, 0, 0, 1, 1);
#ifdef PIGLIT_USE_OPENGL
- glDepthRangeIndexed(maxVP, 0.0, 0.0);
+ glDepthRangeIndexed(maxVP, 0.0, 0.0);
#else
- glDepthRangeIndexedfOES(maxVP, 0.0, 0.0);
+ glDepthRangeIndexedfOES(maxVP, 0.0, 0.0);
#endif
- glDisablei(GL_SCISSOR_TEST, maxVP);
+ glDisablei(GL_SCISSOR_TEST, maxVP);
- pass = piglit_check_gl_error(GL_INVALID_VALUE) && pass;
+ pass = piglit_check_gl_error(GL_INVALID_VALUE) && pass;
+ }
for (i = 0; i < maxVP; i++) {
glGetFloati_v(GL_VIEWPORT, i, vpGet);
--
2.13.1
More information about the Piglit
mailing list