diff options
| author | skal <pascal.massimino@gmail.com> | 2026-02-03 18:44:41 +0100 |
|---|---|---|
| committer | skal <pascal.massimino@gmail.com> | 2026-02-03 18:44:41 +0100 |
| commit | bf46e44e1cb6027a072819a2a3aa3be32651f6e1 (patch) | |
| tree | 21267e7ef52fd91e7b99271ed87e275e91b3de3c /src/tests/test_shader_composer.cc | |
| parent | 815c428dea14a6a1ea5c421c400985d0c14d473d (diff) | |
refactor: Task #20 - Platform & Code Hygiene
- Consolidated all WebGPU shims and platform-specific logic into src/platform.h.
- Refactored platform_init to return PlatformState by value and platform_poll to automatically refresh time and aspect_ratio.
- Removed STL dependencies (std::map, std::vector, std::string) from AssetManager and Procedural subsystems.
- Fixed Windows cross-compilation by adjusting include paths and linker flags in CMakeLists.txt and updating build_win.sh.
- Removed redundant direct inclusions of GLFW/glfw3.h and WebGPU headers across the project.
- Applied clang-format and updated documentation.
handoff(Gemini): Completed Task #20 and 20.1. Platform abstraction is now unified, and core paths are STL-free. Windows build is stable.
Diffstat (limited to 'src/tests/test_shader_composer.cc')
| -rw-r--r-- | src/tests/test_shader_composer.cc | 46 |
1 files changed, 24 insertions, 22 deletions
diff --git a/src/tests/test_shader_composer.cc b/src/tests/test_shader_composer.cc index 7efcd83..16dabba 100644 --- a/src/tests/test_shader_composer.cc +++ b/src/tests/test_shader_composer.cc @@ -15,7 +15,6 @@ // Forward declaration for asset loading const uint8_t* GetAsset(AssetId asset_id, size_t* out_size); - void test_composition() { std::cout << "Testing Shader Composition..." << std::endl; auto& sc = ShaderComposer::Get(); @@ -42,35 +41,38 @@ void test_composition() { } void test_asset_composition() { - std::cout << "Testing Asset-Based Shader Composition..." << std::endl; + std::cout << "Testing Asset-Based Shader Composition..." << std::endl; - // Use test assets - auto& sc = ShaderComposer::Get(); + // Use test assets + auto& sc = ShaderComposer::Get(); - size_t snippet_a_size; - const char* snippet_a_code = (const char*)GetAsset(AssetId::ASSET_SHADER_SNIPPET_A, &snippet_a_size); - assert(snippet_a_code != nullptr); - sc.RegisterSnippet("SNIPPET_A", std::string(snippet_a_code, snippet_a_size)); + size_t snippet_a_size; + const char* snippet_a_code = + (const char*)GetAsset(AssetId::ASSET_SHADER_SNIPPET_A, &snippet_a_size); + assert(snippet_a_code != nullptr); + sc.RegisterSnippet("SNIPPET_A", std::string(snippet_a_code, snippet_a_size)); - size_t snippet_b_size; - const char* snippet_b_code = (const char*)GetAsset(AssetId::ASSET_SHADER_SNIPPET_B, &snippet_b_size); - sc.RegisterSnippet("SNIPPET_B", std::string(snippet_b_code, snippet_b_size)); + size_t snippet_b_size; + const char* snippet_b_code = + (const char*)GetAsset(AssetId::ASSET_SHADER_SNIPPET_B, &snippet_b_size); + sc.RegisterSnippet("SNIPPET_B", std::string(snippet_b_code, snippet_b_size)); - std::string main_code = "fn main() -> f32 { return snippet_a() + snippet_b(); }"; - std::string result = sc.Compose({"SNIPPET_A", "SNIPPET_B"}, main_code); + std::string main_code = + "fn main() -> f32 { return snippet_a() + snippet_b(); }"; + std::string result = sc.Compose({"SNIPPET_A", "SNIPPET_B"}, main_code); - assert(result.find("fn snippet_a()") != std::string::npos); - assert(result.find("fn snippet_b()") != std::string::npos); - assert(result.find("fn main()") != std::string::npos); + assert(result.find("fn snippet_a()") != std::string::npos); + assert(result.find("fn snippet_b()") != std::string::npos); + assert(result.find("fn main()") != std::string::npos); - size_t pos_a = result.find("snippet_a"); - size_t pos_b = result.find("snippet_b"); - size_t pos_main = result.find("main"); + size_t pos_a = result.find("snippet_a"); + size_t pos_b = result.find("snippet_b"); + size_t pos_main = result.find("main"); - assert(pos_a < pos_b); - assert(pos_b < pos_main); + assert(pos_a < pos_b); + assert(pos_b < pos_main); - std::cout << "Asset-based composition logic verified." << std::endl; + std::cout << "Asset-based composition logic verified." << std::endl; } int main() { |
