From: Ian Romanick <[email protected]>

These aren't part of GL 3.3, but they should generate GL_INVALID_ENUM
when used.

Signed-off-by: Ian Romanick <[email protected]>
---
 .../texture-base-level-error.c                     | 31 +++++++++++++++++++++-
 1 file changed, 30 insertions(+), 1 deletion(-)

diff --git a/tests/spec/arb_texture_rectangle/texture-base-level-error.c 
b/tests/spec/arb_texture_rectangle/texture-base-level-error.c
index b1aa8cf..734c1aa 100644
--- a/tests/spec/arb_texture_rectangle/texture-base-level-error.c
+++ b/tests/spec/arb_texture_rectangle/texture-base-level-error.c
@@ -34,6 +34,28 @@
  *     TEXTURE_MIN_FILTER is set to a value other than NEAREST or LINEAR (no
  *     mipmap filtering is permitted). The error INVALID_VALUE is generated if
  *     TEXTURE_BASE_LEVEL is set to any value other than zero."
+ *
+ * The GL_ATI_texture_mirror_repeat_once spec is silent on the topic of
+ * rectangle textures, but GL_ARB_texture_mirror_clamp_to_edge says:
+ *
+ *     "The error INVALID_ENUM is generated when TexParameter* is called with
+ *     a target of TEXTURE_RECTANGLE and the TEXTURE_WRAP_S, TEXTURE_WRAP_T,
+ *     or TEXTURE_WRAP_R parameter is set to REPEAT, MIRRORED_REPEAT, or
+ *     MIRROR_CLAMP_TO_EDGE."
+ *
+ * And GL_NV_texture_mirror_clamp says:
+ *
+ *     "Certain texture parameter values may not be specified for textures
+ *     with a target of TEXTURE_RECTANGLE_NV.  The error INVALID_ENUM is
+ *     generated if the target is TEXTURE_RECTANGLE_NV and the TEXTURE_WRAP_S,
+ *     TEXTURE_WRAP_T, or TEXTURE_WRAP_R parameter is set to REPEAT,
+ *     MIRRORED_REPEAT_IBM, MIRROR_CLAMP_EXT, MIRROR_CLAMP_TO_EDGE_EXT, and
+ *     MIRROR_CLAMP_TO_BORDER_EXT."
+ *
+ * So also verify that the GL_MIRROR_CLAMP_* values also generate
+ * GL_INVALID_ENUM.  Note that we don't need to check for the extensions for
+ * this test.  If the extensions are not supported, the values should generate
+ * GL_INVALID_ENUM anyway!
  */
 
 #include "piglit-util-gl-common.h"
@@ -52,7 +74,14 @@ piglit_init(int argc, char **argv)
        int i;
        static const GLenum invalidWrapParams[] = {
                GL_REPEAT,
-               GL_MIRRORED_REPEAT
+               GL_MIRRORED_REPEAT,
+               GL_MIRROR_CLAMP_EXT,
+               GL_MIRROR_CLAMP_TO_BORDER_EXT,
+
+               /* This has the same value as GL_MIRROR_CLAMP_TO_EDGE, but
+                * glext.h may not be new enough.  Just use the _EXT version.
+                */
+               GL_MIRROR_CLAMP_TO_EDGE_EXT,
        };
        static const GLenum invalidFilterParams[] = {
                GL_NEAREST_MIPMAP_NEAREST,
-- 
1.8.1.4

_______________________________________________
Piglit mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/piglit

Reply via email to