-
Notifications
You must be signed in to change notification settings - Fork 13
/
serve_test.go
35 lines (32 loc) · 1.03 KB
/
serve_test.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
// Copyright 2022 Frederik Zipp. All rights reserved.
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
package canvas
import (
"image/color"
"testing"
)
func TestRGBAString(t *testing.T) {
tests := []struct {
name string
color color.Color
want string
}{
{"zero", color.RGBA{}, "rgba(0, 0, 0, 0)"},
{"black", color.Black, "rgba(0, 0, 0, 1)"},
{"white", color.White, "rgba(255, 255, 255, 1)"},
{"red", color.RGBA{R: 0xFF, A: 0xFF}, "rgba(255, 0, 0, 1)"},
{"green", color.RGBA{G: 0xFF, A: 0xFF}, "rgba(0, 255, 0, 1)"},
{"blue", color.RGBA{B: 0xFF, A: 0xFF}, "rgba(0, 0, 255, 1)"},
{"grey", color.RGBA{R: 0x7F, G: 0x7F, B: 0x7F, A: 0xFF}, "rgba(127, 127, 127, 1)"},
{"grey semi-transparent", color.RGBA{R: 0x7F, G: 0x7F, B: 0x7F, A: 0x7F}, "rgba(127, 127, 127, 0.5)"},
}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
got := rgbaString(tt.color)
if got != tt.want {
t.Errorf("rgbaString(%v) = %v, want: %v", tt.color, got, tt.want)
}
})
}
}