@@ -313,6 +313,61 @@ func TestGitGetter_GetFile(t *testing.T) {
313
313
testing_helper .AssertContents (t , dst , "hello" )
314
314
}
315
315
316
+ func TestGitGetter_githubGetWithFileMode (t * testing.T ) {
317
+ if ! testHasGit {
318
+ t .Skip ("git not found, skipping" )
319
+ }
320
+
321
+ ctx := context .Background ()
322
+ dst := testing_helper .TempTestFile (t )
323
+ defer os .RemoveAll (filepath .Dir (dst ))
324
+
325
+ req := Request {
326
+ Src : "git::https://github.com/arikkfir/go-getter/testdata/basic/foo/main.tf?ref=master" ,
327
+ Dst : dst ,
328
+ GetMode : ModeFile ,
329
+ }
330
+
331
+ var result * GetResult
332
+ var err error
333
+ var c Client
334
+ if result , err = c .Get (ctx , & req ); err != nil {
335
+ t .Fatalf ("err: %s" , err )
336
+ } else if result .Dst != dst {
337
+ t .Errorf ("result.Dst != dst (%s != %s)" , result .Dst , dst )
338
+ }
339
+
340
+ // Verify the main file exists
341
+ if _ , err := os .Stat (dst ); err != nil {
342
+ t .Fatalf ("err: %s" , err )
343
+ }
344
+ testing_helper .AssertContents (t , dst , "# Hello\n " )
345
+ }
346
+
347
+ func TestGitGetter_githubGetFile (t * testing.T ) {
348
+ if ! testHasGit {
349
+ t .Skip ("git not found, skipping" )
350
+ }
351
+
352
+ ctx := context .Background ()
353
+ dst := testing_helper .TempTestFile (t )
354
+ defer os .RemoveAll (filepath .Dir (dst ))
355
+
356
+ var result * GetResult
357
+ var err error
358
+ if result , err = GetFile (ctx , dst , "git::https://github.com/arikkfir/go-getter/testdata/basic/foo/main.tf?ref=master" ); err != nil {
359
+ t .Fatalf ("err: %s" , err )
360
+ } else if result .Dst != dst {
361
+ t .Errorf ("result.Dst != dst (%s != %s)" , result .Dst , dst )
362
+ }
363
+
364
+ // Verify the main file exists
365
+ if _ , err := os .Stat (dst ); err != nil {
366
+ t .Fatalf ("err: %s" , err )
367
+ }
368
+ testing_helper .AssertContents (t , dst , "# Hello\n " )
369
+ }
370
+
316
371
func TestGitGetter_gitVersion (t * testing.T ) {
317
372
if ! testHasGit {
318
373
t .Skip ("git not found, skipping" )
0 commit comments