...
1 package version
2
3 import (
4 "testing"
5
6 "github.com/go-test/deep"
7 )
8
9 func TestIsReleaseChannel(t *testing.T) {
10 cases := []struct {
11 version string
12 expected bool
13 expectedError bool
14 }{
15 {
16 version: "edge-1.0",
17 expected: true,
18 },
19 {
20 version: "stable-1.0",
21 expected: true,
22 },
23 {
24 version: "edge-",
25 expected: true,
26 },
27 {
28 version: "stable-",
29 expected: true,
30 },
31 {
32 version: "edge",
33 expected: false,
34 expectedError: true,
35 },
36 {
37 version: "stable",
38 expected: false,
39 expectedError: true,
40 },
41 }
42
43 for _, c := range cases {
44 c := c
45 t.Run(c.version, func(t *testing.T) {
46 got, err := IsReleaseChannel(c.version)
47 if (err != nil) != c.expectedError {
48 t.Errorf("got unexpected error: %v", err)
49 }
50 if diff := deep.Equal(c.expected, got); diff != nil {
51 t.Errorf("%v", diff)
52 }
53 })
54 }
55 }
56
View as plain text