tests: Allow skipping shader tests if requirements are not met.

Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
Zebediah Figura
2022-04-07 18:58:14 -05:00
committed by Alexandre Julliard
parent c7a7cf498d
commit 83a3de8529
2 changed files with 9 additions and 1 deletions

View File

@ -595,11 +595,15 @@ void run_shader_tests(struct shader_runner *runner, int argc, char **argv, const
{
case STATE_INPUT_LAYOUT:
case STATE_NONE:
case STATE_REQUIRE:
case STATE_SAMPLER:
case STATE_TEST:
break;
case STATE_REQUIRE:
if (runner->ops->check_requirements && !runner->ops->check_requirements(runner))
goto out;
break;
case STATE_TEXTURE:
case STATE_VERTEX_BUFFER:
set_resource(runner, runner->ops->create_resource(runner, &current_resource));
@ -832,6 +836,7 @@ void run_shader_tests(struct shader_runner *runner, int argc, char **argv, const
}
}
out:
for (i = 0; i < runner->input_element_count; ++i)
free(runner->input_elements[i].name);
free(runner->input_elements);