From 1d245667dffa72ecc603bf362c01e69ffdd3abb7 Mon Sep 17 00:00:00 2001 From: Denis Vaumoron Date: Fri, 2 Feb 2024 15:02:17 +0100 Subject: [PATCH] fix #38 --- pkg/download/download.go | 5 +---- pkg/download/download_test.go | 12 ++++++++---- 2 files changed, 9 insertions(+), 8 deletions(-) diff --git a/pkg/download/download.go b/pkg/download/download.go index a4e4764c..de25a254 100644 --- a/pkg/download/download.go +++ b/pkg/download/download.go @@ -19,15 +19,12 @@ package download import ( - "errors" "fmt" "io" "net/http" "net/url" ) -var ErrPrefix = errors.New("prefix does not match") - func ApplyUrlTranformer(urlTransformer func(string) (string, error), baseURLs ...string) ([]string, error) { transformedURLs := make([]string, 0, len(baseURLs)) for _, baseURL := range baseURLs { @@ -70,7 +67,7 @@ func UrlTranformer(rewriteRule []string) func(string) (string, error) { return func(urlValue string) (string, error) { if len(urlValue) < prevLen || urlValue[:prevLen] != prevBaseURL { - return "", ErrPrefix + return urlValue, nil } return url.JoinPath(baseURL, urlValue[prevLen:]) //nolint diff --git a/pkg/download/download_test.go b/pkg/download/download_test.go index b3e00fdd..8c615328 100644 --- a/pkg/download/download_test.go +++ b/pkg/download/download_test.go @@ -53,10 +53,14 @@ func TestUrlTransformerDisabled(t *testing.T) { func TestUrlTransformerPrefix(t *testing.T) { urlTransformer := download.UrlTranformer([]string{"https://github.com", "https://go.dev"}) - if value, err := urlTransformer("https://releases.hashicorp.com/terraform/1.7.0/terraform_1.7.0_darwin_amd64.zip"); err == nil { - t.Error("Should fail on erroneous prefix, get :", value) - } else if err != download.ErrPrefix { - t.Error("Incorrect error reported, get :", err) + initialValue := "https://releases.hashicorp.com/terraform/1.7.0/terraform_1.7.0_darwin_amd64.zip" + value, err := urlTransformer(initialValue) + if err != nil { + t.Fatal("Unexpected error :", err) + } + + if value != initialValue { + t.Error("Unexpected result, get :", value) } }