Skip to content

Commit 06cc867

Browse files
committed
resources/images: Add some mask tests
Closes #13244
1 parent 71fae99 commit 06cc867

File tree

5 files changed

+51
-0
lines changed

5 files changed

+51
-0
lines changed

resources/images/images_golden_integration_test.go

+51
Original file line numberDiff line numberDiff line change
@@ -133,6 +133,57 @@ Home.
133133
runGolden(t, name, files)
134134
}
135135

136+
func TestGoldenFiltersMask(t *testing.T) {
137+
t.Parallel()
138+
139+
if skipGolden {
140+
t.Skip("Skip golden test on this architecture")
141+
}
142+
143+
// Will be used to generate golden files.
144+
name := "filters_mask"
145+
146+
files := `
147+
-- hugo.toml --
148+
[imaging]
149+
bgColor = '#ebcc34'
150+
hint = 'photo'
151+
quality = 75
152+
resampleFilter = 'Lanczos'
153+
-- assets/sunset.jpg --
154+
sourcefilename: ../testdata/sunset.jpg
155+
-- assets/mask.png --
156+
sourcefilename: ../testdata/mask.png
157+
158+
-- layouts/index.html --
159+
Home.
160+
{{ $sunset := resources.Get "sunset.jpg" }}
161+
{{ $mask := resources.Get "mask.png" }}
162+
163+
{{ template "mask" (dict "name" "transparant.png" "base" $sunset "mask" $mask) }}
164+
{{ template "mask" (dict "name" "yellow.jpg" "base" $sunset "mask" $mask) }}
165+
{{ template "mask" (dict "name" "wide.jpg" "base" $sunset "mask" $mask "spec" "resize 600x200") }}
166+
167+
168+
{{ define "mask"}}
169+
{{ $ext := path.Ext .name }}
170+
{{ if lt (len (path.Ext .name)) 4 }}
171+
{{ errorf "No extension in %q" .name }}
172+
{{ end }}
173+
{{ $format := strings.TrimPrefix "." $ext }}
174+
{{ $spec := .spec | default (printf "resize 300x300 %s" $format) }}
175+
{{ $filters := slice (images.Process $spec) (images.Mask .mask) }}
176+
{{ $name := printf "images/%s" .name }}
177+
{{ $img := .base.Filter $filters }}
178+
{{ with $img | resources.Copy $name }}
179+
{{ .Publish }}
180+
{{ end }}
181+
{{ end }}
182+
`
183+
184+
runGolden(t, name, files)
185+
}
186+
136187
func TestGoldenFiltersText(t *testing.T) {
137188
t.Parallel()
138189

Loading
Loading
Loading

resources/testdata/mask.png

117 KB
Loading

0 commit comments

Comments
 (0)