Description
BasicShaderTestSuite was never covered by the summer 2024 refactor campaign, and it does not fit the standard split pattern — it needs investigation before any work is committed to.
The suite is 1,194 lines reporting 21 results, but the assert count is misleading: most facts contain a single assert_ call inside a loop over a shared shaders[] array. So shader_get/set_uniform_f (83 lines), shader_set_uniform_f_array (75 lines), shader_set_uniform_f_buffer (88 lines), shader_set_uniform_i (79 lines), shader_set_uniform_i_array (74 lines) and shader_get_sampler_index (69 lines) each report one pass/fail for what is actually one check per shader in the array. Two further facts, normals_test (76 lines) and gl_front_facing/sv_is_front_face (79 lines), contain no direct asserts at all and verify through helpers.
The right shape here is almost certainly addTheory() over the shader list rather than a flat fact split — that would give one reported result per shader per uniform function, which is what we actually want, without duplicating the loop body.
The two helper-based facts need a separate decision about how their verification should surface as a result.
This issue should start with an investigation and a written proposal, not with edits.
Script Name
BasicShaderTestSuite
Steps To The Task
Description
BasicShaderTestSuitewas never covered by the summer 2024 refactor campaign, and it does not fit the standard split pattern — it needs investigation before any work is committed to.The suite is 1,194 lines reporting 21 results, but the assert count is misleading: most facts contain a single
assert_call inside a loop over a sharedshaders[]array. Soshader_get/set_uniform_f(83 lines),shader_set_uniform_f_array(75 lines),shader_set_uniform_f_buffer(88 lines),shader_set_uniform_i(79 lines),shader_set_uniform_i_array(74 lines) andshader_get_sampler_index(69 lines) each report one pass/fail for what is actually one check per shader in the array. Two further facts,normals_test(76 lines) andgl_front_facing/sv_is_front_face(79 lines), contain no direct asserts at all and verify through helpers.The right shape here is almost certainly
addTheory()over the shader list rather than a flat fact split — that would give one reported result per shader per uniform function, which is what we actually want, without duplicating the loop body.The two helper-based facts need a separate decision about how their verification should surface as a result.
This issue should start with an investigation and a written proposal, not with edits.
Script Name
BasicShaderTestSuite
Steps To The Task
addTheory()over theshaders[]array as the primary approach and post the proposal on this issue for review before startingnormals_testandgl_front_facing/sv_is_front_faceshould report, given they verify through helpers rather than direct asserts