[Piglit] [PATCH 4/8] arb_texture_multisample: new test for teximage state

Paul Berry stereotype441 at gmail.com
Mon Jan 7 13:11:17 PST 2013


On 5 January 2013 01:07, Chris Forbes <chrisf at ijw.co.nz> wrote:

> This tests that the new teximage state added in ARB_texture_multisample
> exists and has correct defaults for non-multisample textures:
>
>     - GL_TEXTURE_SAMPLES = 0
>     - GL_TEXTURE_FIXED_SAMPLE_LOCATIONS = false
>

I think you mean "true" here.


>
> Signed-off-by: Chris Forbes <chrisf at ijw.co.nz>
> ---
>  tests/all.tests                                    |  1 +
>  .../spec/arb_texture_multisample/CMakeLists.gl.txt |  1 +
>  tests/spec/arb_texture_multisample/texstate.c      | 58
> ++++++++++++++++++++++
>  3 files changed, 60 insertions(+)
>  create mode 100644 tests/spec/arb_texture_multisample/texstate.c
>
> diff --git a/tests/all.tests b/tests/all.tests
> index 379964f..9963e46 100644
> --- a/tests/all.tests
> +++ b/tests/all.tests
> @@ -845,6 +845,7 @@ arb_texture_multisample = Group()
>  spec['ARB_texture_multisample'] = arb_texture_multisample
>  add_concurrent_test(arb_texture_multisample,
> 'arb_texture_multisample-minmax')
>  add_concurrent_test(arb_texture_multisample,
> 'arb_texture_multisample-fb-completeness')
> +add_concurrent_test(arb_texture_multisample,
> 'arb_texture_multisample-texstate')
>
>  # Group AMD_shader_stencil_export
>  spec['AMD_shader_stencil_export'] = Group()
> diff --git a/tests/spec/arb_texture_multisample/CMakeLists.gl.txt
> b/tests/spec/arb_texture_multisample/CMakeLists.gl.txt
> index d793256..d4cd51f 100644
> --- a/tests/spec/arb_texture_multisample/CMakeLists.gl.txt
> +++ b/tests/spec/arb_texture_multisample/CMakeLists.gl.txt
> @@ -12,5 +12,6 @@ link_libraries (
>
>  piglit_add_executable (arb_texture_multisample-minmax minmax.c)
>  piglit_add_executable (arb_texture_multisample-fb-completeness
> fb-completeness.c)
> +piglit_add_executable (arb_texture_multisample-texstate texstate.c)
>
>  # vim: ft=cmake:
> diff --git a/tests/spec/arb_texture_multisample/texstate.c
> b/tests/spec/arb_texture_multisample/texstate.c
> new file mode 100644
> index 0000000..37c111e
> --- /dev/null
> +++ b/tests/spec/arb_texture_multisample/texstate.c
> @@ -0,0 +1,58 @@
> +#include "piglit-util-gl-common.h"
> +
> +PIGLIT_GL_TEST_CONFIG_BEGIN
> +
> +    config.supports_gl_compat_version = 30;
> +
> +    config.window_width = 10;
> +    config.window_height = 10;
> +    config.window_visual = PIGLIT_GL_VISUAL_RGB;
> +
> +PIGLIT_GL_TEST_CONFIG_END
> +
> +enum piglit_result
> +piglit_display(void)
> +{
> +    return PIGLIT_FAIL;
> +}
> +
> +static bool
> +check_texlevelparameter_int(GLuint target, GLuint level,
> +        char const *name, GLuint pname, GLint expected_value)
> +{
> +    GLint actual_value;
> +    glGetTexLevelParameteriv(target, level, pname, &actual_value);
> +    if (!piglit_check_gl_error(GL_NO_ERROR))
> +        return false;
> +
> +    if (actual_value != expected_value) {
> +        printf("Expected %s value of %d but got %d\n",
> +                name, expected_value, actual_value);
> +        return false;
> +    }
> +
> +    return true;
> +}
> +
> +void
> +piglit_init(int argc, char **argv)
> +{
> +    GLuint tex2d;
> +    bool pass = true;
> +    piglit_require_extension("GL_ARB_texture_multisample");
> +
> +    /* check that new image state required by ARB_texture_multisample
> +     * exists, and has correct defaults. Tests against a non-multisample
> +     * texture target, since this state exists on all images. */
> +
> +    glGenTextures(1, &tex2d);
> +    glBindTexture(GL_TEXTURE_2D, tex2d);
> +    glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, 64, 64, 0, GL_RGBA,
> GL_UNSIGNED_BYTE, 0);
> +
> +    pass = check_texlevelparameter_int(GL_TEXTURE_2D, 0,
> "GL_TEXTURE_SAMPLES",
> +            GL_TEXTURE_SAMPLES, 0) && pass;
> +    pass = check_texlevelparameter_int(GL_TEXTURE_2D, 0,
> "GL_TEXTURE_FIXED_SAMPLE_LOCATIONS",
> +            GL_TEXTURE_FIXED_SAMPLE_LOCATIONS, GL_TRUE) && pass;
> +
> +    piglit_report_result(pass ? PIGLIT_PASS : PIGLIT_FAIL);
> +}
> --
> 1.8.1
>
> _______________________________________________
> Piglit mailing list
> Piglit at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/piglit
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/piglit/attachments/20130107/35cc1811/attachment.html>


More information about the Piglit mailing list