Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Reenvision WebGL unit tests #4817

Open
5 tasks
pjcozzi opened this issue Jan 6, 2017 · 1 comment
Open
5 tasks

Reenvision WebGL unit tests #4817

pjcozzi opened this issue Jan 6, 2017 · 1 comment

Comments

@pjcozzi
Copy link
Contributor

pjcozzi commented Jan 6, 2017

After #4281 (webgl-mock-for-tests branch), CI will be able to run all Cesium unit tests. Tests that require WebGL use an empty WebGL stub and skip readPixels and friends expectations - so all the code is ran, but not all of it is verified.

I want to move away from heavily using readPixels tests; those are integration tests with the Cesium renderer and WebGL implementation. Some will still be included in Cesium's test suite, but most tests relying on readPixels can be verified reasonably well with verifying only Cesium code, e.g., with spys, validating DrawCommands, etc. This will lead to a faster, easier to debug, more reliable, and more consistent test suite. Even if it is less precise, readPixels expectations rarely find issues in practice and will still be with the mix TBA.

  • Update WebGL stubs for WebGL 2, WebGL 2 and WebGL Extensions Roadmap #797
  • Consider removing WebGL test category
  • Strategy for validating rendering code with less readPixels...and migration as reasonable.
  • Tech blog post

Small cleanup

  • Could clean up FramebufferSpec more using toRender by adding framebuffer, renderState, and epsilon to toRender
@pjcozzi
Copy link
Contributor Author

pjcozzi commented Jan 18, 2017

Also check out https://github.com/evanw/webgl-recorder via @austinEng

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants