mirror of
https://github.com/godotengine/godot.git
synced 2025-10-19 16:03:29 +00:00
ci: add basic test pipeline for shader builders
This commit is contained in:
parent
b04593c22b
commit
388d35b74d
26 changed files with 528 additions and 74 deletions
37
tests/python_build/test_glsl_builder.py
Normal file
37
tests/python_build/test_glsl_builder.py
Normal file
|
@ -0,0 +1,37 @@
|
|||
import json
|
||||
|
||||
import pytest
|
||||
|
||||
from glsl_builders import build_raw_header, RAWHeaderStruct, build_rd_header, RDHeaderStruct
|
||||
|
||||
|
||||
@pytest.mark.parametrize(
|
||||
[
|
||||
"shader_files",
|
||||
"builder",
|
||||
"header_struct",
|
||||
],
|
||||
[
|
||||
("glsl/vertex_fragment", build_raw_header, RAWHeaderStruct),
|
||||
("glsl/compute", build_raw_header, RAWHeaderStruct),
|
||||
("rd_glsl/vertex_fragment", build_rd_header, RDHeaderStruct),
|
||||
("rd_glsl/compute", build_rd_header, RDHeaderStruct),
|
||||
],
|
||||
indirect=["shader_files"],
|
||||
)
|
||||
def test_glsl_builder(shader_files, builder, header_struct):
|
||||
header = header_struct()
|
||||
builder(shader_files["path_input"], header_data=header)
|
||||
|
||||
with open(shader_files["path_expected_parts"], "r") as f:
|
||||
expected_parts = json.load(f)
|
||||
assert expected_parts == header.__dict__
|
||||
|
||||
with open(shader_files["path_output"], "r") as f:
|
||||
actual_output = f.read()
|
||||
assert actual_output
|
||||
|
||||
with open(shader_files["path_expected_full"], "r") as f:
|
||||
expected_output = f.read()
|
||||
|
||||
assert actual_output == expected_output
|
Loading…
Add table
Add a link
Reference in a new issue