Testing; better tests of environment mapping, minor fixes #3694
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Would you believe we never had a testsuite test for environment mapping? Well, it wasn't totally untested, in the sense that OSL testsuite had one, and obviously it's used in production all the time. But OIIO's testsuite didn't have any tests of TextureSystem::environmemt(). We now remedy that.
Add testsuite/texture-env, contains several environment tests, including handles vs filenames, subimage selection, different interp and mip modes, ask for >4 channels.
New CMake build option OIIO_TEX_IMPLEMENT_VARYINGREF can be used for testing to disable implementation of the old 1.x style of batch texture calls. We don't use them, they are deprecated. This option give us a way to exclude them from code analysis, because we really don't care.
Fix bug with >4 channels for environment batch shading!
Avoid unnecessary spec lookup in TileID constructor.
Avoid building testtex test_hash during code coverage -- it is an extremely specialized test, not run in the testsuite, it shouldn't really count againt good code coverage.