From 209bcc54a3a7535866731133f632803b6028e6ff Mon Sep 17 00:00:00 2001 From: Vetle Leinonen-Roeim Date: Sun, 30 Mar 2025 18:19:29 +0200 Subject: [PATCH] add test for trimEdges function with uneven vertical rectangle image --- transform_test.go | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) diff --git a/transform_test.go b/transform_test.go index 6dd5e3e..36420a5 100644 --- a/transform_test.go +++ b/transform_test.go @@ -449,6 +449,44 @@ func TestTrimEdgesCircle(t *testing.T) { } } +func TestTrimEdgesUnevenVerticalRectangle(t *testing.T) { + // Define colors for better readability + white := color.NRGBA{255, 255, 255, 255} + red := color.NRGBA{255, 0, 0, 255} + + // Create a 9x5 image with a white background and a red diagonal shape + src := newImage(5, 9, + white, white, white, white, white, + white, white, white, red, white, + white, white, red, white, white, + white, red, white, white, white, + white, red, white, white, white, + white, red, white, white, white, + white, white, red, white, white, + white, white, white, red, white, + white, white, white, white, white, + ) + + // Expected result: a trimmed 5x5 image containing only the diagonal shape + want := newImage(3, 7, + white, white, red, + white, red, white, + red, white, white, + red, white, white, + red, white, white, + white, red, white, + white, white, red, + ) + + // Apply the trimEdges function + got := trimEdges(src) + + // Compare pixel data + if !compareImages(got, want) { + t.Errorf("trimEdges() pixel data does not match expected result") + } +} + func compareImages(img1, img2 image.Image) bool { bounds1 := img1.Bounds() bounds2 := img2.Bounds()