John Kessenich f80ef74c80 Fix recently found non-determinism with gl_WorldToObject3x4EXT. 5 years ago
..
AST.FromFile.cpp 08328fea5a Fix xfb stride limit issue (#2088) 5 years ago
BuiltInResource.FromFile.cpp 1d3a966106 Gtests can be run on another source tree 9 years ago
CMakeLists.txt 31cad22758 Use CMake's builtin functionality for PCHs 5 years ago
Config.FromFile.cpp 31fbc11f5d Build: Remove extra commas in calling INSTANTIATE_TEST_SUITE_P. 7 years ago
HexFloat.cpp 31fbc11f5d Build: Remove extra commas in calling INSTANTIATE_TEST_SUITE_P. 7 years ago
Hlsl.FromFile.cpp 1ee750aed5 Add pack_matrix test 5 years ago
Initializer.h 0a6fb85494 Infrastructure: Make shared symbol-table cache complete, delete work around. 9 years ago
Link.FromFile.Vk.cpp 4f32f93d7e Revert "Merge pull request #2330 from ShabbyX/optimize_for_angle" 5 years ago
Link.FromFile.cpp 6f723ebbe3 fix incorrect error when multiple compilation units don't declare layouts (#2238) 5 years ago
Pp.FromFile.cpp d03da06ac1 Remove execute permissions 7 years ago
README.md 414eb60482 Link in Google Test framework. 10 years ago
Remap.FromFile.cpp 65c2eed65d Remapper: handle embedded opcode in OpSpecConstantOp 8 years ago
Settings.cpp 1d3a966106 Gtests can be run on another source tree 9 years ago
Settings.h 1d3a966106 Gtests can be run on another source tree 9 years ago
Spv.FromFile.cpp f80ef74c80 Fix recently found non-determinism with gl_WorldToObject3x4EXT. 5 years ago
TestFixture.cpp db32b243ff Add support for GLSL_EXT_ray_tracing 6 years ago
TestFixture.h 4f32f93d7e Revert "Merge pull request #2330 from ShabbyX/optimize_for_angle" 5 years ago
main.cpp 66011cb2c2 SPV: Implement Vulkan 1.1 features and extensions. 8 years ago
pch.h 22d0b7cbad Use precompiled headers for some glslang projects 7 years ago

README.md

Glslang Tests based on the Google Test Framework

This directory contains Google Test based test fixture and test cases for glslang.

Apart from typical unit tests, necessary utility methods are added into the GlslangTests fixture to provide the ability to do file-based integration tests. Various *.FromFile.cpp files lists names of files containing input shader code in the Test/ directory. Utility methods will load the input shader source, compile them, and compare with the corresponding expected output in the Test/baseResults/ directory.

How to run the tests

Please make sure you have a copy of Google Test checked out under the External directory before building. After building, just run the ctest command or the gtests/glslangtests binary in your build directory.

The gtests/glslangtests binary also provides an --update-mode command line option, which, if supplied, will overwrite the golden files under the Test/baseResults/ directory with real output from that invocation. This serves as an easy way to update golden files.