diff options
author | Grzegorz Bizon <grzesiek.bizon@gmail.com> | 2019-12-04 13:02:54 +0300 |
---|---|---|
committer | Grzegorz Bizon <grzesiek.bizon@gmail.com> | 2019-12-04 13:02:54 +0300 |
commit | a0d9ec2632a1392f5a16cbac25e44112c3d56cfa (patch) | |
tree | 3ae141f8bb420a832fbfeeff5992315729d36b88 | |
parent | ea055ad67421dc0fa4d7afbcfe726572548a4da0 (diff) |
Check if GitLab API secret has been provided too
-rw-r--r-- | internal/source/gitlab/client/client.go | 4 | ||||
-rw-r--r-- | internal/source/gitlab/client/client_test.go | 11 |
2 files changed, 11 insertions, 4 deletions
diff --git a/internal/source/gitlab/client/client.go b/internal/source/gitlab/client/client.go index a0781251..1c3024b7 100644 --- a/internal/source/gitlab/client/client.go +++ b/internal/source/gitlab/client/client.go @@ -34,8 +34,8 @@ var connectionTimeout = 10 * time.Second // NewClient initializes and returns new Client baseUrl is // appConfig.GitLabServer secretKey is appConfig.GitLabAPISecretKey func NewClient(baseURL string, secretKey []byte) (*Client, error) { - if len(baseURL) == 0 { - return nil, errors.New("GitLab API URL has not been provided") + if len(baseURL) == 0 || len(secretKey) == 0 { + return nil, errors.New("GitLab API URL or API secret has not been provided") } url, err := url.Parse(baseURL) diff --git a/internal/source/gitlab/client/client_test.go b/internal/source/gitlab/client/client_test.go index 0b5d11f3..d056f2bd 100644 --- a/internal/source/gitlab/client/client_test.go +++ b/internal/source/gitlab/client/client_test.go @@ -29,11 +29,18 @@ func TestNewInvalidBaseURL(t *testing.T) { require.Nil(t, client) }) - t.Run("when API URL empty", func(t *testing.T) { + t.Run("when API URL is empty", func(t *testing.T) { client, err := NewClient("", secretKey()) require.Nil(t, client) - require.EqualError(t, err, "GitLab API URL has not been provided") + require.EqualError(t, err, "GitLab API URL or API secret has not been provided") + }) + + t.Run("when API secret is empty", func(t *testing.T) { + client, err := NewClient("https://gitlab.com", []byte{}) + + require.Nil(t, client) + require.EqualError(t, err, "GitLab API URL or API secret has not been provided") }) } |