@@ -23,26 +23,28 @@ func TestSlugBuilderPodName(t *testing.T) {
2323}
2424
2525type 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
3738type 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
4850func 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