glslang/gtests
steve-lunarg 3226b0835c HLSL: Add min*{float,int,uint} types
These HLSL types are guaranteed to have at least the given number of bits, but may have more.

min{16,10}float is mapped to EbtFloat at medium precision -> SPIRV RelaxedPrecision
min{16,12}int and min16uint are mapped to mediump -> SPIR-V RelaxedPrecision
2016-10-31 12:46:05 -06:00
..
AST.FromFile.cpp Gtests can be run on another source tree 2016-10-05 10:28:32 -04:00
BuiltInResource.FromFile.cpp Gtests can be run on another source tree 2016-10-05 10:28:32 -04:00
CMakeLists.txt Gtests can be run on another source tree 2016-10-05 10:28:32 -04:00
Config.FromFile.cpp Gtests can be run on another source tree 2016-10-05 10:28:32 -04:00
HexFloat.cpp Update HexFloat tests to use non-enum class enum values 2016-10-13 20:05:13 +02:00
Hlsl.FromFile.cpp HLSL: Add min*{float,int,uint} types 2016-10-31 12:46:05 -06:00
Initializer.h Infrastructure: Make shared symbol-table cache complete, delete work around. 2016-08-09 19:15:17 -06:00
Link.FromFile.cpp Gtests can be run on another source tree 2016-10-05 10:28:32 -04:00
main.cpp Gtests can be run on another source tree 2016-10-05 10:28:32 -04:00
Pp.FromFile.cpp Gtests can be run on another source tree 2016-10-05 10:28:32 -04:00
README.md Link in Google Test framework. 2016-03-31 10:31:30 -04:00
Remap.FromFile.cpp Gtests can be run on another source tree 2016-10-05 10:28:32 -04:00
Settings.cpp Gtests can be run on another source tree 2016-10-05 10:28:32 -04:00
Settings.h Gtests can be run on another source tree 2016-10-05 10:28:32 -04:00
Spv.FromFile.cpp Merge pull request #538 from steve-lunarg/iomap-binding-range-err 2016-10-13 12:44:16 -06:00
TestFixture.cpp Non-functional: Rationalizing parse helper hierarchy, step 2 (effected error messaging and cascading errors). 2016-10-01 18:07:57 -06:00
TestFixture.h Gtests can be run on another source tree 2016-10-05 10:28:32 -04:00

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.