@@ -48,6 +48,35 @@ func TestInstantiate(t *testing.T) {
48
48
}
49
49
}
50
50
51
+ func TestInstantiateBinary (t * testing.T ) {
52
+ generator := mockBuildGenerator ()
53
+ /*
54
+ generator.Client.GetBuildConfigFunc = func(ctx kapi.Context, name string) (*buildapi.BuildConfig, error) {
55
+ bc := &buildapi.BuildConfig{}
56
+ return bc, nil
57
+ }
58
+ generator.Client.GetBuildFunc = func(ctx kapi.Context, name string) (*buildapi.Build, error) {
59
+ build := &buildapi.Build{
60
+ Status: buildapi.BuildStatus{
61
+ Config: &kapi.ObjectReference{
62
+ Name: "buildconfig",
63
+ },
64
+ },
65
+ }
66
+ return build, nil
67
+ }
68
+ */
69
+ _ , err := generator .Instantiate (kapi .NewDefaultContext (), & buildapi.BuildRequest {Binary : & buildapi.BinaryBuildSource {}})
70
+ if err != nil {
71
+ t .Errorf ("Unexpected error %v" , err )
72
+ }
73
+ // TODO: we should enable this flow.
74
+ _ , err = generator .Clone (kapi .NewDefaultContext (), & buildapi.BuildRequest {Binary : & buildapi.BinaryBuildSource {}})
75
+ if err == nil || ! strings .Contains (err .Error (), "can't clone binary Build" ) {
76
+ t .Errorf ("Expected error, got different %v" , err )
77
+ }
78
+ }
79
+
51
80
// TODO(agoldste): I'm not sure the intent of this test. Using the previous logic for
52
81
// the generator, which would try to update the build config before creating
53
82
// the build, I can see why the UpdateBuildConfigFunc is set up to return an
@@ -83,6 +112,7 @@ func TestInstantiateRetry(t *testing.T) {
83
112
*/
84
113
85
114
func TestInstantiateDeletingError (t * testing.T ) {
115
+ source := mocks .MockSource ()
86
116
generator := BuildGenerator {Client : Client {
87
117
GetBuildConfigFunc : func (ctx kapi.Context , name string ) (* buildapi.BuildConfig , error ) {
88
118
bc := & buildapi.BuildConfig {
@@ -91,11 +121,31 @@ func TestInstantiateDeletingError(t *testing.T) {
91
121
buildapi .BuildConfigPausedAnnotation : "true" ,
92
122
},
93
123
},
124
+ Spec : buildapi.BuildConfigSpec {
125
+ CommonSpec : buildapi.CommonSpec {
126
+ Source : source ,
127
+ Revision : & buildapi.SourceRevision {
128
+ Git : & buildapi.GitSourceRevision {
129
+ Commit : "1234" ,
130
+ },
131
+ },
132
+ },
133
+ },
94
134
}
95
135
return bc , nil
96
136
},
97
137
GetBuildFunc : func (ctx kapi.Context , name string ) (* buildapi.Build , error ) {
98
138
build := & buildapi.Build {
139
+ Spec : buildapi.BuildSpec {
140
+ CommonSpec : buildapi.CommonSpec {
141
+ Source : source ,
142
+ Revision : & buildapi.SourceRevision {
143
+ Git : & buildapi.GitSourceRevision {
144
+ Commit : "1234" ,
145
+ },
146
+ },
147
+ },
148
+ },
99
149
Status : buildapi.BuildStatus {
100
150
Config : & kapi.ObjectReference {
101
151
Name : "buildconfig" ,
@@ -115,6 +165,33 @@ func TestInstantiateDeletingError(t *testing.T) {
115
165
}
116
166
}
117
167
168
+ func TestInstantiateBinaryError (t * testing.T ) {
169
+ generator := BuildGenerator {Client : Client {
170
+ GetBuildConfigFunc : func (ctx kapi.Context , name string ) (* buildapi.BuildConfig , error ) {
171
+ bc := & buildapi.BuildConfig {}
172
+ return bc , nil
173
+ },
174
+ GetBuildFunc : func (ctx kapi.Context , name string ) (* buildapi.Build , error ) {
175
+ build := & buildapi.Build {
176
+ Status : buildapi.BuildStatus {
177
+ Config : & kapi.ObjectReference {
178
+ Name : "buildconfig" ,
179
+ },
180
+ },
181
+ }
182
+ return build , nil
183
+ },
184
+ }}
185
+ _ , err := generator .Instantiate (kapi .NewDefaultContext (), & buildapi.BuildRequest {})
186
+ if err == nil || ! strings .Contains (err .Error (), "can't instantiate binary BuildConfig" ) {
187
+ t .Errorf ("Expected error, got different %v" , err )
188
+ }
189
+ _ , err = generator .Clone (kapi .NewDefaultContext (), & buildapi.BuildRequest {})
190
+ if err == nil || ! strings .Contains (err .Error (), "can't clone binary Build" ) {
191
+ t .Errorf ("Expected error, got different %v" , err )
192
+ }
193
+ }
194
+
118
195
func TestInstantiateGetBuildConfigError (t * testing.T ) {
119
196
generator := BuildGenerator {Client : Client {
120
197
GetBuildConfigFunc : func (ctx kapi.Context , name string ) (* buildapi.BuildConfig , error ) {
@@ -240,6 +317,7 @@ func TestInstantiateWithImageTrigger(t *testing.T) {
240
317
},
241
318
}
242
319
320
+ source := mocks .MockSource ()
243
321
for _ , tc := range tests {
244
322
bc := & buildapi.BuildConfig {
245
323
Spec : buildapi.BuildConfigSpec {
@@ -252,6 +330,12 @@ func TestInstantiateWithImageTrigger(t *testing.T) {
252
330
},
253
331
},
254
332
},
333
+ Source : source ,
334
+ Revision : & buildapi.SourceRevision {
335
+ Git : & buildapi.GitSourceRevision {
336
+ Commit : "1234" ,
337
+ },
338
+ },
255
339
},
256
340
Triggers : tc .triggers ,
257
341
},
0 commit comments