github.com/drone/drone-cache-lib@v0.0.0-20200806063744-981868645a25/archive/util/util_test.go (about)

     1  package util
     2  
     3  import (
     4  	"testing"
     5  
     6  	"github.com/franela/goblin"
     7  )
     8  
     9  func TestArchive(t *testing.T) {
    10  	g := goblin.Goblin(t)
    11  
    12  	g.Describe("FromFilename", func() {
    13  		g.It("Should return tarArchive for .tar", func() {
    14  			_, err := FromFilename("filename.tar")
    15  			g.Assert(err == nil).IsTrue("failed to determine .tar suffix")
    16  		})
    17  
    18  		g.It("Should return tgzArchive for .tgz", func() {
    19  			_, err := FromFilename("filename.tgz")
    20  			g.Assert(err == nil).IsTrue("failed to determine .tgz suffix")
    21  		})
    22  
    23  		g.It("Should return tgzArchive for .tar.gz", func() {
    24  			_, err := FromFilename("filename.tar.gz")
    25  			g.Assert(err == nil).IsTrue("failed to determine .tar.gz suffix")
    26  		})
    27  
    28  		g.It("Should return error for everything else", func() {
    29  			_, err := FromFilename("filename.ttt")
    30  			g.Assert(err != nil).IsTrue("failed to return error")
    31  			g.Assert(err.Error()).Equal("Unknown file format for archive filename.ttt")
    32  		})
    33  	})
    34  }