@@ -183,22 +183,30 @@ func TestImageFromBytesMonochrome(t *testing.T) {
183183// contain the same data afterwards.
184184func TestImageNoise (t * testing.T ) {
185185 t .Run ("RGB888" , func (t * testing.T ) {
186- testImageNoise [pixel.RGB888 ](t )
186+ testImageNoiseN [pixel.RGB888 ](t )
187187 })
188188 t .Run ("RGB565BE" , func (t * testing.T ) {
189- testImageNoise [pixel.RGB565BE ](t )
189+ testImageNoiseN [pixel.RGB565BE ](t )
190190 })
191191 t .Run ("RGB555" , func (t * testing.T ) {
192- testImageNoise [pixel.RGB555 ](t )
192+ testImageNoiseN [pixel.RGB555 ](t )
193193 })
194194 t .Run ("RGB444BE" , func (t * testing.T ) {
195- testImageNoise [pixel.RGB444BE ](t )
195+ testImageNoiseN [pixel.RGB444BE ](t )
196196 })
197197 t .Run ("Monochrome" , func (t * testing.T ) {
198- testImageNoise [pixel.Monochrome ](t )
198+ testImageNoiseN [pixel.Monochrome ](t )
199199 })
200200}
201201
202+ // Run the testImageNoise multiple times, because a single test might not catch
203+ // all bugs (since the test uses random data).
204+ func testImageNoiseN [T pixel.Color ](t * testing.T ) {
205+ for i := 0 ; i < 10 ; i ++ {
206+ testImageNoise [T ](t )
207+ }
208+ }
209+
202210func testImageNoise [T pixel.Color ](t * testing.T ) {
203211 // Create an image of a random width/height for extra testing.
204212 width := rand .Int ()% 500 + 10
0 commit comments