github.com/kubri/kubri@v0.5.1-0.20240317001612-bda2aaef967e/internal/blob/source_test.go (about) 1 package blob_test 2 3 import ( 4 "net/url" 5 "testing" 6 7 _ "gocloud.dev/blob/memblob" // blob driver 8 9 "github.com/kubri/kubri/internal/blob" 10 "github.com/kubri/kubri/internal/test" 11 ) 12 13 func TestSource(t *testing.T) { 14 tests := []struct { 15 name string 16 prefix string 17 }{ 18 {"Default", ""}, 19 {"Prefix", "/test/"}, 20 } 21 for _, testCase := range tests { 22 t.Run(testCase.name, func(t *testing.T) { 23 s, err := blob.NewSource("mem://", testCase.prefix, "http://example.com/downloads") 24 if err != nil { 25 t.Fatal(err) 26 } 27 28 test.Source(t, s, func(version, asset string) string { 29 u, _ := url.JoinPath("http://example.com/downloads", testCase.prefix, version, asset) 30 return u 31 }) 32 }) 33 } 34 }