@@ -48,6 +48,19 @@ func TestInstantiate(t *testing.T) {
48
48
}
49
49
}
50
50
51
+ func TestInstantiateBinary (t * testing.T ) {
52
+ generator := mockBuildGenerator ()
53
+ _ , err := generator .Instantiate (kapi .NewDefaultContext (), & buildapi.BuildRequest {Binary : & buildapi.BinaryBuildSource {}})
54
+ if err != nil {
55
+ t .Errorf ("Unexpected error %v" , err )
56
+ }
57
+ // TODO: we should enable this flow.
58
+ _ , err = generator .Clone (kapi .NewDefaultContext (), & buildapi.BuildRequest {Binary : & buildapi.BinaryBuildSource {}})
59
+ if err == nil || ! strings .Contains (err .Error (), "can't clone binary Build" ) {
60
+ t .Errorf ("Expected error, got different %v" , err )
61
+ }
62
+ }
63
+
51
64
// TODO(agoldste): I'm not sure the intent of this test. Using the previous logic for
52
65
// the generator, which would try to update the build config before creating
53
66
// the build, I can see why the UpdateBuildConfigFunc is set up to return an
@@ -83,6 +96,7 @@ func TestInstantiateRetry(t *testing.T) {
83
96
*/
84
97
85
98
func TestInstantiateDeletingError (t * testing.T ) {
99
+ source := mocks .MockSource ()
86
100
generator := BuildGenerator {Client : Client {
87
101
GetBuildConfigFunc : func (ctx kapi.Context , name string ) (* buildapi.BuildConfig , error ) {
88
102
bc := & buildapi.BuildConfig {
@@ -91,11 +105,31 @@ func TestInstantiateDeletingError(t *testing.T) {
91
105
buildapi .BuildConfigPausedAnnotation : "true" ,
92
106
},
93
107
},
108
+ Spec : buildapi.BuildConfigSpec {
109
+ CommonSpec : buildapi.CommonSpec {
110
+ Source : source ,
111
+ Revision : & buildapi.SourceRevision {
112
+ Git : & buildapi.GitSourceRevision {
113
+ Commit : "1234" ,
114
+ },
115
+ },
116
+ },
117
+ },
94
118
}
95
119
return bc , nil
96
120
},
97
121
GetBuildFunc : func (ctx kapi.Context , name string ) (* buildapi.Build , error ) {
98
122
build := & buildapi.Build {
123
+ Spec : buildapi.BuildSpec {
124
+ CommonSpec : buildapi.CommonSpec {
125
+ Source : source ,
126
+ Revision : & buildapi.SourceRevision {
127
+ Git : & buildapi.GitSourceRevision {
128
+ Commit : "1234" ,
129
+ },
130
+ },
131
+ },
132
+ },
99
133
Status : buildapi.BuildStatus {
100
134
Config : & kapi.ObjectReference {
101
135
Name : "buildconfig" ,
@@ -115,6 +149,33 @@ func TestInstantiateDeletingError(t *testing.T) {
115
149
}
116
150
}
117
151
152
+ func TestInstantiateBinaryError (t * testing.T ) {
153
+ generator := BuildGenerator {Client : Client {
154
+ GetBuildConfigFunc : func (ctx kapi.Context , name string ) (* buildapi.BuildConfig , error ) {
155
+ bc := & buildapi.BuildConfig {}
156
+ return bc , nil
157
+ },
158
+ GetBuildFunc : func (ctx kapi.Context , name string ) (* buildapi.Build , error ) {
159
+ build := & buildapi.Build {
160
+ Status : buildapi.BuildStatus {
161
+ Config : & kapi.ObjectReference {
162
+ Name : "buildconfig" ,
163
+ },
164
+ },
165
+ }
166
+ return build , nil
167
+ },
168
+ }}
169
+ _ , err := generator .Instantiate (kapi .NewDefaultContext (), & buildapi.BuildRequest {})
170
+ if err == nil || ! strings .Contains (err .Error (), "can't instantiate binary BuildConfig" ) {
171
+ t .Errorf ("Expected error, got different %v" , err )
172
+ }
173
+ _ , err = generator .Clone (kapi .NewDefaultContext (), & buildapi.BuildRequest {})
174
+ if err == nil || ! strings .Contains (err .Error (), "can't clone binary Build" ) {
175
+ t .Errorf ("Expected error, got different %v" , err )
176
+ }
177
+ }
178
+
118
179
func TestInstantiateGetBuildConfigError (t * testing.T ) {
119
180
generator := BuildGenerator {Client : Client {
120
181
GetBuildConfigFunc : func (ctx kapi.Context , name string ) (* buildapi.BuildConfig , error ) {
@@ -240,6 +301,7 @@ func TestInstantiateWithImageTrigger(t *testing.T) {
240
301
},
241
302
}
242
303
304
+ source := mocks .MockSource ()
243
305
for _ , tc := range tests {
244
306
bc := & buildapi.BuildConfig {
245
307
Spec : buildapi.BuildConfigSpec {
@@ -252,6 +314,12 @@ func TestInstantiateWithImageTrigger(t *testing.T) {
252
314
},
253
315
},
254
316
},
317
+ Source : source ,
318
+ Revision : & buildapi.SourceRevision {
319
+ Git : & buildapi.GitSourceRevision {
320
+ Commit : "1234" ,
321
+ },
322
+ },
255
323
},
256
324
Triggers : tc .triggers ,
257
325
},
0 commit comments