Skip to content

Commit 74aa81a

Browse files
author
Aaron Schlesinger
committed
fix(k8s_util_test.go): pass an api.PullPolicy
…to slugBuilderPod and dockerBuilderPod. Also check that each function sets the policy correctly.
1 parent 1a8dc3c commit 74aa81a

1 file changed

Lines changed: 71 additions & 36 deletions

File tree

pkg/gitreceive/k8s_util_test.go

Lines changed: 71 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -23,26 +23,28 @@ func TestSlugBuilderPodName(t *testing.T) {
2323
}
2424

2525
type slugBuildCase struct {
26-
debug bool
27-
name string
28-
namespace string
29-
env map[string]interface{}
30-
tarKey string
31-
putKey string
32-
buildPack string
33-
slugBuilderImage string
34-
storageType string
26+
debug bool
27+
name string
28+
namespace string
29+
env map[string]interface{}
30+
tarKey string
31+
putKey string
32+
buildPack string
33+
slugBuilderImage string
34+
slugBuilderImagePullPolicy api.PullPolicy
35+
storageType string
3536
}
3637

3738
type dockerBuildCase struct {
38-
debug bool
39-
name string
40-
namespace string
41-
env map[string]interface{}
42-
tarKey string
43-
imgName string
44-
dockerBuilderImage string
45-
storageType string
39+
debug bool
40+
name string
41+
namespace string
42+
env map[string]interface{}
43+
tarKey string
44+
imgName string
45+
dockerBuilderImage string
46+
dockerBuilderImagePullPolicy api.PullPolicy
47+
storageType string
4648
}
4749

4850
func TestBuildPod(t *testing.T) {
@@ -54,18 +56,29 @@ func TestBuildPod(t *testing.T) {
5456
var pod *api.Pod
5557

5658
slugBuilds := []slugBuildCase{
57-
{true, "test", "default", emptyEnv, "tar", "put-url", "", "", ""},
58-
{true, "test", "default", emptyEnv, "tar", "put-url", "", "", ""},
59-
{true, "test", "default", env, "tar", "put-url", "", "", ""},
60-
{true, "test", "default", env, "tar", "put-url", "", "", ""},
61-
{true, "test", "default", emptyEnv, "tar", "put-url", "buildpack", "", ""},
62-
{true, "test", "default", emptyEnv, "tar", "put-url", "buildpack", "", ""},
63-
{true, "test", "default", env, "tar", "put-url", "buildpack", "", ""},
64-
{true, "test", "default", env, "tar", "put-url", "buildpack", "customimage", ""},
59+
{true, "test", "default", emptyEnv, "tar", "put-url", "", "", api.PullAlways, ""},
60+
{true, "test", "default", emptyEnv, "tar", "put-url", "", "", api.PullAlways, ""},
61+
{true, "test", "default", env, "tar", "put-url", "", "", api.PullAlways, ""},
62+
{true, "test", "default", env, "tar", "put-url", "", "", api.PullAlways, ""},
63+
{true, "test", "default", emptyEnv, "tar", "put-url", "buildpack", "", api.PullAlways, ""},
64+
{true, "test", "default", emptyEnv, "tar", "put-url", "buildpack", "", api.PullAlways, ""},
65+
{true, "test", "default", env, "tar", "put-url", "buildpack", "", api.PullAlways, ""},
66+
{true, "test", "default", env, "tar", "put-url", "buildpack", "customimage", api.PullAlways, ""},
6567
}
6668

6769
for _, build := range slugBuilds {
68-
pod = slugbuilderPod(build.debug, build.name, build.namespace, build.env, build.tarKey, build.putKey, build.buildPack, build.slugBuilderImage, build.storageType)
70+
pod = slugbuilderPod(
71+
build.debug,
72+
build.name,
73+
build.namespace,
74+
build.env,
75+
build.tarKey,
76+
build.putKey,
77+
build.buildPack,
78+
build.storageType,
79+
build.slugBuilderImage,
80+
string(build.slugBuilderImagePullPolicy),
81+
)
6982

7083
if pod.ObjectMeta.Name != build.name {
7184
t.Errorf("expected %v but returned %v ", build.name, pod.ObjectMeta.Name)
@@ -87,21 +100,36 @@ func TestBuildPod(t *testing.T) {
87100
t.Errorf("expected %v but returned %v ", build.slugBuilderImage, pod.Spec.Containers[0].Image)
88101
}
89102
}
103+
if build.slugBuilderImagePullPolicy != "" {
104+
if pod.Spec.Containers[0].ImagePullPolicy != build.slugBuilderImagePullPolicy {
105+
t.Errorf("expected %v but returned %v", build.slugBuilderImagePullPolicy, pod.Spec.Containers[0].ImagePullPolicy)
106+
}
107+
}
90108
}
91109

92110
dockerBuilds := []dockerBuildCase{
93-
{true, "test", "default", emptyEnv, "tar", "", "", ""},
94-
{true, "test", "default", emptyEnv, "tar", "", "", ""},
95-
{true, "test", "default", env, "tar", "", "", ""},
96-
{true, "test", "default", env, "tar", "", "", ""},
97-
{true, "test", "default", emptyEnv, "tar", "img", "", ""},
98-
{true, "test", "default", emptyEnv, "tar", "img", "", ""},
99-
{true, "test", "default", env, "tar", "img", "", ""},
100-
{true, "test", "default", env, "tar", "img", "customimage", ""},
111+
{true, "test", "default", emptyEnv, "tar", "", "", api.PullAlways, ""},
112+
{true, "test", "default", emptyEnv, "tar", "", "", api.PullAlways, ""},
113+
{true, "test", "default", env, "tar", "", "", api.PullAlways, ""},
114+
{true, "test", "default", env, "tar", "", "", api.PullAlways, ""},
115+
{true, "test", "default", emptyEnv, "tar", "img", "", api.PullAlways, ""},
116+
{true, "test", "default", emptyEnv, "tar", "img", "", api.PullAlways, ""},
117+
{true, "test", "default", env, "tar", "img", "", api.PullAlways, ""},
118+
{true, "test", "default", env, "tar", "img", "customimage", api.PullAlways, ""},
101119
}
102120

103121
for _, build := range dockerBuilds {
104-
pod = dockerBuilderPod(build.debug, build.name, build.namespace, build.env, build.tarKey, build.imgName, build.dockerBuilderImage, build.storageType)
122+
pod = dockerBuilderPod(
123+
build.debug,
124+
build.name,
125+
build.namespace,
126+
build.env,
127+
build.tarKey,
128+
build.imgName,
129+
build.storageType,
130+
build.dockerBuilderImage,
131+
string(build.dockerBuilderImagePullPolicy),
132+
)
105133

106134
if pod.ObjectMeta.Name != build.name {
107135
t.Errorf("expected %v but returned %v ", build.name, pod.ObjectMeta.Name)
@@ -114,7 +142,14 @@ func TestBuildPod(t *testing.T) {
114142
checkForEnv(t, pod, "IMG_NAME", build.imgName)
115143
if build.dockerBuilderImage != "" {
116144
if pod.Spec.Containers[0].Image != build.dockerBuilderImage {
117-
t.Errorf("expected %v but returned %v ", build.dockerBuilderImage, pod.Spec.Containers[0].Image)
145+
t.Errorf("expected %v but returned %v", build.dockerBuilderImage, pod.Spec.Containers[0].Image)
146+
}
147+
}
148+
if build.dockerBuilderImagePullPolicy != "" {
149+
if pod.Spec.Containers[0].ImagePullPolicy != "" {
150+
if pod.Spec.Containers[0].ImagePullPolicy != build.dockerBuilderImagePullPolicy {
151+
t.Errorf("expected %v but returned %v", build.dockerBuilderImagePullPolicy, pod.Spec.Containers[0].ImagePullPolicy)
152+
}
118153
}
119154
}
120155
}

0 commit comments

Comments
 (0)