As @piglet suggests, you should create test cases to ensure coverage. You could use something like ImageMagick and here is a very basic script that generates a bunch of files in different formats - much more is possible, of course, but you need to specify your own test cases.
This creates a test JPEG file:
magick xc:red xc:lime +append \( xc:blue xc:magenta +append \) -append -resize 600x600 test.jpg

Here is a script if you want a variety of formats:
#!/bin/bash
files=(test.gif test.jpg test.bmp PNG8:testPNG8.png PNG24:testPNG24.png PNG32:testPNG32.png PNG48:testPNG48.png PNG64:testPNG64.png test.tif)
for f in "${files[@]}"; do
magick xc:red xc:lime +append \( xc:blue xc:magenta +append \) -append -resize 600x600 "$f"
done
And here are the output files:
-rw-r--r--@ 1 mark staff 1080138 14 Sep 09:26 test.bmp
-rw-r--r--@ 1 mark staff 109366 14 Sep 09:26 test.gif
-rw-r--r--@ 1 mark staff 24457 14 Sep 09:26 test.jpg
-rw-r--r--@ 1 mark staff 2160264 14 Sep 09:26 test.tif
-rw-r--r--@ 1 mark staff 62181 14 Sep 09:26 testPNG24.png
-rw-r--r--@ 1 mark staff 68153 14 Sep 09:26 testPNG32.png
-rw-r--r--@ 1 mark staff 545890 14 Sep 09:26 testPNG48.png
-rw-r--r--@ 1 mark staff 550337 14 Sep 09:26 testPNG64.png
-rw-r--r--@ 1 mark staff 6747 14 Sep 09:26 testPNG8.png
And here are all the test images montaged together:

You probably need to cycle through:
- formats,
- bit depths (8,16,32),
- colourspaces,
- palettised/non-palettised,
- transparent/opaque,
- compression types,
- interlaced/non-interlaced,
- ... and so on