From: Nanley Chery <[email protected]> ASTC formats are added to the list of formats that should not be returned by the COMPRESSED_TEXTURE_FORMATS query.
v2. add astc test to all.py (Chad). Signed-off-by: Nanley Chery <[email protected]> --- tests/all.py | 5 +++ .../spec/arb_texture_compression/invalid-formats.c | 51 +++++++++++++++++++++- 2 files changed, 55 insertions(+), 1 deletion(-) diff --git a/tests/all.py b/tests/all.py index 4fbe75b..748e27e 100644 --- a/tests/all.py +++ b/tests/all.py @@ -4154,6 +4154,11 @@ with profile.group_manager( g(['oes_compressed_etc1_rgb8_texture-miptree'], 'miptree') with profile.group_manager( + PiglitGLTest, + grouptools.join('spec', 'khr_texture_compression_astc')) as g: + g(['arb_texture_compression-invalid-formats', 'astc'], 'invalid formats') + +with profile.group_manager( PiglitGLTest, grouptools.join('spec', 'oes_compressed_paletted_texture')) as g: g(['oes_compressed_paletted_texture-api'], 'basic API') diff --git a/tests/spec/arb_texture_compression/invalid-formats.c b/tests/spec/arb_texture_compression/invalid-formats.c index e67f00e..7a081bf 100644 --- a/tests/spec/arb_texture_compression/invalid-formats.c +++ b/tests/spec/arb_texture_compression/invalid-formats.c @@ -76,7 +76,7 @@ struct format_list { /** * Formats that are part of the extension but should not be exposed. */ - struct format_tuple bad[5]; + struct format_tuple bad[29]; }; /** @@ -267,6 +267,46 @@ static const struct format_list etc2_formats = { }; /** + * Formats belonging to GL_KHR_texture_compression_astc_ldr + */ +static const struct format_list astc_formats = { + { + { NULL, 0 }, + }, + { + { ENUM_AND_STRING(GL_COMPRESSED_RGBA_ASTC_4x4_KHR) }, + { ENUM_AND_STRING(GL_COMPRESSED_RGBA_ASTC_5x4_KHR) }, + { ENUM_AND_STRING(GL_COMPRESSED_RGBA_ASTC_5x5_KHR) }, + { ENUM_AND_STRING(GL_COMPRESSED_RGBA_ASTC_6x5_KHR) }, + { ENUM_AND_STRING(GL_COMPRESSED_RGBA_ASTC_6x6_KHR) }, + { ENUM_AND_STRING(GL_COMPRESSED_RGBA_ASTC_8x5_KHR) }, + { ENUM_AND_STRING(GL_COMPRESSED_RGBA_ASTC_8x6_KHR) }, + { ENUM_AND_STRING(GL_COMPRESSED_RGBA_ASTC_8x8_KHR) }, + { ENUM_AND_STRING(GL_COMPRESSED_RGBA_ASTC_10x5_KHR) }, + { ENUM_AND_STRING(GL_COMPRESSED_RGBA_ASTC_10x6_KHR) }, + { ENUM_AND_STRING(GL_COMPRESSED_RGBA_ASTC_10x8_KHR) }, + { ENUM_AND_STRING(GL_COMPRESSED_RGBA_ASTC_10x10_KHR) }, + { ENUM_AND_STRING(GL_COMPRESSED_RGBA_ASTC_12x10_KHR) }, + { ENUM_AND_STRING(GL_COMPRESSED_RGBA_ASTC_12x12_KHR) }, + { ENUM_AND_STRING(GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR) }, + { ENUM_AND_STRING(GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR) }, + { ENUM_AND_STRING(GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR) }, + { ENUM_AND_STRING(GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR) }, + { ENUM_AND_STRING(GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR) }, + { ENUM_AND_STRING(GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR) }, + { ENUM_AND_STRING(GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR) }, + { ENUM_AND_STRING(GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR) }, + { ENUM_AND_STRING(GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR) }, + { ENUM_AND_STRING(GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR) }, + { ENUM_AND_STRING(GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR) }, + { ENUM_AND_STRING(GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR) }, + { ENUM_AND_STRING(GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR) }, + { ENUM_AND_STRING(GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR) }, + { NULL, 0 }, + } +}; + +/** * List of all known compression methods to test * * The dummy first element is because this list is used by \c main to replace @@ -284,6 +324,7 @@ const char *all_formats[] = { "paletted", "etc1", "etc2", + "astc", }; enum piglit_result @@ -520,6 +561,14 @@ piglit_init(int argc, char **argv) piglit_is_extension_supported("GL_ARB_ES3_compatibility"), true) && pass; + } else if (strcmp(argv[i], "astc") == 0) { + pass = try_formats(&astc_formats, + compressed_formats, + num_compressed_formats, + check_errors, + piglit_is_extension_supported("GL_KHR_texture_compression_astc_ldr"), + false) + && pass; } else { fprintf(stderr, "Unrecognized selection `%s'\n", argv[i]); -- 2.5.1 _______________________________________________ Piglit mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/piglit
