@@ -166,6 +166,28 @@ targets:
166
166
)
167
167
168
168
assert .Assert (t , fs .Equal (dirName , manifest ))
169
+
170
+ // test single-file init
171
+ args = []string {
172
+ "init" ,
173
+ "tac" ,
174
+ "-c" ,
175
+ filepath .Join (inputDir , "docker-compose.yml" ),
176
+ "-d" ,
177
+ "my cool app" ,
178
+ "-m" , "bob" ,
179
+
180
+ "-s" ,
181
+ }
182
+ cmd = exec .Command (dockerApp , args ... )
183
+ output , err = cmd .CombinedOutput ()
184
+ if err != nil {
185
+ fmt .Println (string (output ))
186
+ }
187
+ assert .NilError (t , err )
188
+ defer os .Remove ("tac.dockerapp" )
189
+ appData , _ := ioutil .ReadFile ("tac.dockerapp" )
190
+ golden .Assert (t , string (appData ), "init-singlefile.dockerapp" )
169
191
}
170
192
171
193
func TestInspectBinary (t * testing.T ) {
@@ -226,3 +248,41 @@ func TestHelmBinary(t *testing.T) {
226
248
golden .AssertBytes (t , values , "helm-expected.chart/values.yaml" )
227
249
golden .AssertBytes (t , stack , "helm-expected.chart/templates/stack.yaml" )
228
250
}
251
+
252
+ func TestSplitMergeBinary (t * testing.T ) {
253
+ dockerApp , hasExperimental := getBinary (t )
254
+ if ! hasExperimental {
255
+ t .Skip ("experimental mode needed for this test" )
256
+ }
257
+ app := "render/envvariables"
258
+ cmd := exec .Command (dockerApp , "merge" , app , "-o" , "remerged.dockerapp" )
259
+ output , err := cmd .CombinedOutput ()
260
+ if err != nil {
261
+ fmt .Println (string (output ))
262
+ }
263
+ assert .NilError (t , err )
264
+ defer os .Remove ("remerged.dockerapp" )
265
+ // test that inspect works on single-file
266
+ cmd = exec .Command (dockerApp , "inspect" , "remerged" )
267
+ output , err = cmd .CombinedOutput ()
268
+ if err != nil {
269
+ fmt .Println (string (output ))
270
+ }
271
+ assert .NilError (t , err )
272
+ golden .Assert (t , string (output ), "envvariables-inspect.golden" )
273
+ // split it
274
+ cmd = exec .Command (dockerApp , "split" , "remerged" , "-o" , "splitted.dockerapp" )
275
+ output , err = cmd .CombinedOutput ()
276
+ if err != nil {
277
+ fmt .Println (string (output ))
278
+ }
279
+ assert .NilError (t , err )
280
+ defer os .RemoveAll ("splitted.dockerapp" )
281
+ cmd = exec .Command (dockerApp , "inspect" , "splitted" )
282
+ output , err = cmd .CombinedOutput ()
283
+ if err != nil {
284
+ fmt .Println (string (output ))
285
+ }
286
+ assert .NilError (t , err )
287
+ golden .Assert (t , string (output ), "envvariables-inspect.golden" )
288
+ }
0 commit comments