Sixel implementation: Tests
Part of #253. This issue is for adding tests for the new terminal graphics/sixel code.
At minimum, tests should cover these cases:
- Printing images and text overlapping each other in various configurations for visual inspection. It should be possible to verify that rewrap and scrolling behave sanely.
- Printing lots of images very quickly in order to verify that resource constraints are respected.
- Simple fuzzing to generate malformed input for parser testing.
I see three ways of generating test input:
- By adding a handful of pre-encoded sixel images. These would typically be 20-50KiB each, but we'd have few permutations and no big images to test with.
- By depending on libsixel, ImageMagick, Chafa, ... I doubt such a dependency is desirable.
- By adding a standalone sixel encoder. I could probably code one up fairly quickly with minimal dependencies, or there may be existing license-compatible code out there. The upside is that this wouldn't add any dependencies or bloat the repository, but on the other hand, it's more code to maintain.