From: Dylan Baker <baker.dyla...@gmail.com> This increases the readability of the file by allowing the long test string to be indented.
Signed-off-by: Dylan Baker <dylanx.c.ba...@intel.com> --- generated_tests/gen_tes_input_tests.py | 189 +++++++++++++++++---------------- 1 file changed, 95 insertions(+), 94 deletions(-) diff --git a/generated_tests/gen_tes_input_tests.py b/generated_tests/gen_tes_input_tests.py index d716ca0..a0a0fdb 100644 --- a/generated_tests/gen_tes_input_tests.py +++ b/generated_tests/gen_tes_input_tests.py @@ -44,6 +44,7 @@ from __future__ import print_function, absolute_import, division import os import sys import random +import textwrap from six.moves import range @@ -208,100 +209,100 @@ class Test(object): def generate(self): """Generates and writes the test to disc.""" - test = \ -"""# Test generated by: -# {generator_command} -# Test tessellation control shader inputs -[require] -GLSL >= 1.50 -GL_ARB_tessellation_shader - -[vertex shader] -void main() -{{ - gl_Position = vec4(0); -}} - -[tessellation control shader] -#extension GL_ARB_tessellation_shader : require -layout(vertices = 3) out; - -uniform struct S0 {{ - {self.var_type_full} v; -}} reference[12]; - -#if {self.use_block} -{self.interface_prefix}out {self.interface_name} {{ - {self.var_type_full} {self.var_name}; -}} {self.interface_tcs_instance}{self.interface_postfix}; -#else -{self.interface_prefix}out {self.var_type_full} {self.var_name}; -#endif - -void main() -{{ - const int vertices_in = 3; - {self.interface_tcs_instance}{self.tcs_var_ref} = reference[{self.tcs_reference_index}].v; - gl_TessLevelOuter = float[4](1.0, 1.0, 1.0, 1.0); - gl_TessLevelInner = float[2](1.0, 1.0); -}} - -[tessellation evaluation shader] -#extension GL_ARB_tessellation_shader : require -layout(quads) in; - -uniform struct S0 {{ - {self.var_type_full} v; -}} reference[12]; - -#if {self.use_block} -{self.interface_prefix}in {self.interface_name} {{ - {self.var_type_full} {self.var_name}; -}} {self.interface_tes_instance}{self.interface_postfix}; -#else -{self.interface_prefix}in {self.var_type_full} {self.var_name}; -#endif - -out vec4 vert_color; - -void main() -{{ - const int vertices_in = 3; - const vec4 red = vec4(1, 0, 0, 1); - const vec4 green = vec4(0, 1, 0, 1); - vert_color = green; - for (int i = 0; i < vertices_in; ++i) - if ({self.interface_tes_instance}{self.tes_var_ref} != reference[{self.tes_reference_index}].v) - vert_color = red; - vec2[3] position = vec2[3]( - vec2(float(gl_PrimitiveID / 2) - 1.0, float(gl_PrimitiveID % 2) - 1.0), - vec2(float(gl_PrimitiveID / 2) - 0.0, float(gl_PrimitiveID % 2) - 1.0), - vec2(float(gl_PrimitiveID / 2) - 1.0, float(gl_PrimitiveID % 2) - 0.0) - ); - gl_Position = vec4(position[0] - + (position[1] - position[0]) * gl_TessCoord[0] - + (position[2] - position[0]) * gl_TessCoord[1], 0.0, 1.0); -}} - -[fragment shader] - -in vec4 vert_color; - -out vec4 frag_color; - -void main() -{{ - frag_color = vert_color; -}} - -[test] -{self.uniform_string} -draw arrays GL_PATCHES 0 12 -relative probe rgb (0.25, 0.25) (0.0, 1.0, 0.0) -relative probe rgb (0.75, 0.25) (0.0, 1.0, 0.0) -relative probe rgb (0.25, 0.75) (0.0, 1.0, 0.0) -relative probe rgb (0.75, 0.75) (0.0, 1.0, 0.0) -""" + test = textwrap.dedent("""\ + # Test generated by: + # {generator_command} + # Test tessellation control shader inputs + [require] + GLSL >= 1.50 + GL_ARB_tessellation_shader + + [vertex shader] + void main() + {{ + gl_Position = vec4(0); + }} + + [tessellation control shader] + #extension GL_ARB_tessellation_shader : require + layout(vertices = 3) out; + + uniform struct S0 {{ + {self.var_type_full} v; + }} reference[12]; + + #if {self.use_block} + {self.interface_prefix}out {self.interface_name} {{ + {self.var_type_full} {self.var_name}; + }} {self.interface_tcs_instance}{self.interface_postfix}; + #else + {self.interface_prefix}out {self.var_type_full} {self.var_name}; + #endif + + void main() + {{ + const int vertices_in = 3; + {self.interface_tcs_instance}{self.tcs_var_ref} = reference[{self.tcs_reference_index}].v; + gl_TessLevelOuter = float[4](1.0, 1.0, 1.0, 1.0); + gl_TessLevelInner = float[2](1.0, 1.0); + }} + + [tessellation evaluation shader] + #extension GL_ARB_tessellation_shader : require + layout(quads) in; + + uniform struct S0 {{ + {self.var_type_full} v; + }} reference[12]; + + #if {self.use_block} + {self.interface_prefix}in {self.interface_name} {{ + {self.var_type_full} {self.var_name}; + }} {self.interface_tes_instance}{self.interface_postfix}; + #else + {self.interface_prefix}in {self.var_type_full} {self.var_name}; + #endif + + out vec4 vert_color; + + void main() + {{ + const int vertices_in = 3; + const vec4 red = vec4(1, 0, 0, 1); + const vec4 green = vec4(0, 1, 0, 1); + vert_color = green; + for (int i = 0; i < vertices_in; ++i) + if ({self.interface_tes_instance}{self.tes_var_ref} != reference[{self.tes_reference_index}].v) + vert_color = red; + vec2[3] position = vec2[3]( + vec2(float(gl_PrimitiveID / 2) - 1.0, float(gl_PrimitiveID % 2) - 1.0), + vec2(float(gl_PrimitiveID / 2) - 0.0, float(gl_PrimitiveID % 2) - 1.0), + vec2(float(gl_PrimitiveID / 2) - 1.0, float(gl_PrimitiveID % 2) - 0.0) + ); + gl_Position = vec4(position[0] + + (position[1] - position[0]) * gl_TessCoord[0] + + (position[2] - position[0]) * gl_TessCoord[1], 0.0, 1.0); + }} + + [fragment shader] + + in vec4 vert_color; + + out vec4 frag_color; + + void main() + {{ + frag_color = vert_color; + }} + + [test] + {self.uniform_string} + draw arrays GL_PATCHES 0 12 + relative probe rgb (0.25, 0.25) (0.0, 1.0, 0.0) + relative probe rgb (0.75, 0.25) (0.0, 1.0, 0.0) + relative probe rgb (0.25, 0.75) (0.0, 1.0, 0.0) + relative probe rgb (0.75, 0.75) (0.0, 1.0, 0.0) + """) test = test.format(self=self, generator_command=" ".join(sys.argv)) -- 2.6.1 _______________________________________________ Piglit mailing list Piglit@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/piglit