@@ -24,7 +24,7 @@ FROM ghcr.io/openfaas/of-watchdog:0.25.0`
2424 }
2525
2626 cmd := MakeGen ()
27- cmd .SetArgs ([]string {"-f" , dockerfilePath , "--stdout" })
27+ cmd .SetArgs ([]string {dockerfilePath , "--stdout" })
2828
2929 var stdout , stderr strings.Builder
3030 cmd .SetOut (& stdout )
@@ -66,7 +66,7 @@ FROM alpine:3.19`
6666 }
6767
6868 cmd := MakeGen ()
69- cmd .SetArgs ([]string {"-f" , dockerfilePath })
69+ cmd .SetArgs ([]string {dockerfilePath })
7070
7171 var stdout , stderr strings.Builder
7272 cmd .SetOut (& stdout )
@@ -101,6 +101,38 @@ FROM alpine:3.19`
101101 }
102102}
103103
104+ func TestGenCommand_PositionalDirImpliesDockerfile (t * testing.T ) {
105+ tmpDir , err := os .MkdirTemp ("" , "arkade-docker-gen-test-*" )
106+ if err != nil {
107+ t .Fatalf ("failed to create temp dir: %v" , err )
108+ }
109+ defer os .RemoveAll (tmpDir )
110+
111+ dockerfilePath := filepath .Join (tmpDir , "Dockerfile" )
112+ dockerfileContent := `FROM alpine:3.19
113+ FROM golang:1.24`
114+
115+ if err := os .WriteFile (dockerfilePath , []byte (dockerfileContent ), 0644 ); err != nil {
116+ t .Fatalf ("failed to write dockerfile: %v" , err )
117+ }
118+
119+ cmd := MakeGen ()
120+ cmd .SetArgs ([]string {tmpDir , "--stdout" })
121+
122+ var stdout , stderr strings.Builder
123+ cmd .SetOut (& stdout )
124+ cmd .SetErr (& stderr )
125+
126+ if err := cmd .Execute (); err != nil {
127+ t .Fatalf ("command failed: %v" , err )
128+ }
129+
130+ result := stdout .String ()
131+ if ! strings .Contains (result , "- alpine" ) || ! strings .Contains (result , "- golang" ) {
132+ t .Errorf ("expected alpine and golang in output, stdout=%q, stderr=%q" , result , stderr .String ())
133+ }
134+ }
135+
104136func TestGenCommand_NoImagesFound (t * testing.T ) {
105137 tmpDir , err := os .MkdirTemp ("" , "arkade-docker-gen-test-*" )
106138 if err != nil {
@@ -117,7 +149,7 @@ RUN echo "hello"`
117149 }
118150
119151 cmd := MakeGen ()
120- cmd .SetArgs ([]string {"-f" , dockerfilePath })
152+ cmd .SetArgs ([]string {dockerfilePath })
121153
122154 var output strings.Builder
123155 cmd .SetOut (& output )
@@ -149,7 +181,7 @@ FROM alpine:3.19`
149181 }
150182
151183 cmd := MakeGen ()
152- cmd .SetArgs ([]string {"-f" , dockerfilePath , "--stdout" })
184+ cmd .SetArgs ([]string {dockerfilePath , "--stdout" })
153185
154186 var stdout , stderr strings.Builder
155187 cmd .SetOut (& stdout )
@@ -185,7 +217,7 @@ func TestGenCommand_RegistryWithPort(t *testing.T) {
185217 }
186218
187219 cmd := MakeGen ()
188- cmd .SetArgs ([]string {"-f" , dockerfilePath , "--stdout" })
220+ cmd .SetArgs ([]string {dockerfilePath , "--stdout" })
189221
190222 var stdout , stderr strings.Builder
191223 cmd .SetOut (& stdout )
@@ -219,7 +251,7 @@ FROM golang:1.24`
219251 }
220252
221253 cmd := MakeGen ()
222- cmd .SetArgs ([]string {"-f" , dockerfilePath , "--stdout" })
254+ cmd .SetArgs ([]string {dockerfilePath , "--stdout" })
223255
224256 var stdout , stderr strings.Builder
225257 cmd .SetOut (& stdout )
0 commit comments