From 1512cad55f703de463f93cf53631acba6ece347a Mon Sep 17 00:00:00 2001 From: Stefano Gabryel Date: Thu, 31 Oct 2019 05:51:25 +0100 Subject: [PATCH] Fixing scenario in which using a non-existing file would return an error about schema --- pkg/dictionary/dictionary.go | 7 ++++--- pkg/dictionary/dictionary_integration_test.go | 2 ++ 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/pkg/dictionary/dictionary.go b/pkg/dictionary/dictionary.go index 366d3bc..f9645a0 100644 --- a/pkg/dictionary/dictionary.go +++ b/pkg/dictionary/dictionary.go @@ -5,6 +5,7 @@ import ( "io" "net/http" "os" + "strings" "github.com/pkg/errors" ) @@ -12,11 +13,11 @@ import ( const commentPrefix = "#" func NewDictionaryFrom(path string, doer Doer) ([]string, error) { - if _, err := os.Stat(path); !os.IsNotExist(err) { - return newDictionaryFromLocalFile(path) + if strings.HasPrefix(path, "http") { + return newDictionaryFromRemoteFile(path, doer) } - return newDictionaryFromRemoteFile(path, doer) + return newDictionaryFromLocalFile(path) } func newDictionaryFromLocalFile(path string) ([]string, error) { diff --git a/pkg/dictionary/dictionary_integration_test.go b/pkg/dictionary/dictionary_integration_test.go index f6a08e2..a0201d1 100644 --- a/pkg/dictionary/dictionary_integration_test.go +++ b/pkg/dictionary/dictionary_integration_test.go @@ -65,6 +65,8 @@ func TestDictionaryFromFileWithInvalidPath(t *testing.T) { d, err := dictionary.NewDictionaryFrom("testdata/gibberish_nonexisting_file", &http.Client{}) assert.Error(t, err) assert.Nil(t, d) + + assert.Contains(t, err.Error(), "unable to open") } func TestNewDictionaryFromRemoteFile(t *testing.T) {