Add more tests
This MR collects a number of testsuite fixes.
The more noteworthy ones are:
- Split tests between various features (small caps, variations, font options), so it is clearer which parts are failing on which backend
- Make assertions nonfatal. This lets us see more test results, even if one test failed
- Skip tests using diff if diff isn't found. This turns a bunch of failures on msvc into skips
After this, there are a few actual test failures that will need to be addressed eventually:
- The linebreaking tests are broken by glib main's Unicode 16 update, that affects all platforms where we use glib main as a subproject
- The macos backend doesn't support font variations, causing a few tests to fail
- The win32 backend doesn't support font variations, causing a few tests to fail
Edited by Matthias Clasen