jpbruyere / vkvg

Vulkan 2D graphics library
https://jpbruyere.github.io/vkvg/
MIT License
773 stars 33 forks source link

Implementing Unit Testing with Meson #120

Open LinuxLegend opened 2 years ago

LinuxLegend commented 2 years ago

This is something I like to bring up for discussion on, while I just recently finished the basic version of Meson Build. We could set up CI/CD Test cases for VKVG by having rendered work compared to control group images to check for regressions via the use of Swiftshader for CI/CD which is a CPU-based implementation for Vulkan.

Basically we have existing test cases that make use of vkengine and we can observe the results and then for unit testing, one of the mode would save vkvg surface after running a number of iteration (as long as the result isn't randomized) into an image as a control group image and then finally the unit testing mode would simply run the test case and then at the end of it's iteration, it'll have it's vkvg surface compared against the control group image to check for any regression.

What you think?