parent
							
								
									e5d16dd2d5
								
							
						
					
					
						commit
						07daa5e160
					
				@ -0,0 +1,49 @@ | 
				
			||||
package caddyhugo | 
				
			||||
 | 
				
			||||
import ( | 
				
			||||
	"fmt" | 
				
			||||
	"image" | 
				
			||||
	"testing" | 
				
			||||
) | 
				
			||||
 | 
				
			||||
// TestThumbSizeStrings tests parsing various size strings, which doesn't include
 | 
				
			||||
// scaling zeros, but does use the actual image size to infer single-dimension
 | 
				
			||||
// strings
 | 
				
			||||
func TestThumbSizeStrings(t *testing.T) { | 
				
			||||
	type testcase struct { | 
				
			||||
		input      string | 
				
			||||
		actualSize image.Rectangle | 
				
			||||
		expect     image.Rectangle | 
				
			||||
	} | 
				
			||||
 | 
				
			||||
	i50x100 := image.Rect(0, 0, 50, 100) | 
				
			||||
	i100x100 := image.Rect(0, 0, 100, 100) | 
				
			||||
 | 
				
			||||
	var cases = []testcase{ | 
				
			||||
		{"100x100", i100x100, image.Rect(0, 0, 100, 100)}, | 
				
			||||
		{"x100", i100x100, image.Rect(0, 0, 0, 100)}, | 
				
			||||
		{"100x", i100x100, image.Rect(0, 0, 100, 0)}, | 
				
			||||
		{"100", i100x100, image.Rect(0, 0, 100, 0)}, | 
				
			||||
 | 
				
			||||
		{"100x100", i50x100, image.Rect(0, 0, 100, 100)}, | 
				
			||||
		{"x100", i50x100, image.Rect(0, 0, 0, 100)}, | 
				
			||||
		{"100x", i50x100, image.Rect(0, 0, 100, 0)}, | 
				
			||||
		{"100", i50x100, image.Rect(0, 0, 0, 100)}, | 
				
			||||
	} | 
				
			||||
 | 
				
			||||
	for _, c := range cases { | 
				
			||||
		t.Run(fmt.Sprint(c.input, "=>", c.actualSize), func(t *testing.T) { | 
				
			||||
			got, err := parseSizeString(c.input, image.Rect(0, 0, 100, 100)) | 
				
			||||
			if err != nil { | 
				
			||||
				t.Errorf("error parsing size string: %v", err) | 
				
			||||
				return | 
				
			||||
			} | 
				
			||||
 | 
				
			||||
			if !got.Eq(c.expect) { | 
				
			||||
				t.Errorf("expected %v, got %v", c.expect, got) | 
				
			||||
				return | 
				
			||||
			} | 
				
			||||
 | 
				
			||||
		}) | 
				
			||||
	} | 
				
			||||
} | 
				
			||||
					Loading…
					
					
				
		Reference in new issue