Skip to content

Commit

Permalink
feat: adding missing headers; cover headers in test
Browse files Browse the repository at this point in the history
  • Loading branch information
y-eight committed Dec 13, 2024
1 parent 5ae8a0a commit 00a6242
Show file tree
Hide file tree
Showing 2 changed files with 16 additions and 10 deletions.
2 changes: 2 additions & 0 deletions pkg/sparrow/targets/remote/gitlab/gitlab.go
Original file line number Diff line number Diff line change
Expand Up @@ -177,6 +177,8 @@ func (c *client) fetchNextFileList(ctx context.Context, reqUrl string) ([]string
log.ErrorContext(ctx, "Failed to create request", "error", err)
return nil, err
}
req.Header.Add("PRIVATE-TOKEN", c.config.Token)
req.Header.Add("Content-Type", "application/json")

resp, err := c.client.Do(req)
if err != nil {
Expand Down
24 changes: 14 additions & 10 deletions pkg/sparrow/targets/remote/gitlab/gitlab_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -710,16 +710,20 @@ func Test_client_fetchNextFileList(t *testing.T) {
t.Run(tt.name, func(t *testing.T) {
// prepare http mock responder for paginated requests
for _, responder := range tt.mock {
resp, err := httpmock.NewJsonResponder(responder.statusCode, responder.response)
if err != nil {
t.Fatalf("error creating mock response: %v", err)
}

h := http.Header{}
h.Add("link", responder.linkHeader)
resp = resp.HeaderAdd(h)

httpmock.RegisterResponder(http.MethodGet, responder.reqUrl, resp)
httpmock.RegisterResponder(http.MethodGet, responder.reqUrl, func(req *http.Request) (*http.Response, error) {
// Check if header are properly set
token := req.Header.Get("PRIVATE-TOKEN")
cType := req.Header.Get("Content-Type")
if token == "" || cType == "" {
t.Error("Some header not properly set", "PRIVATE-TOKEN", token != "", "Content-Type", cType != "")
}

resp, err := httpmock.NewJsonResponse(responder.statusCode, responder.response)

// Add link header for next page (pagination)
resp.Header.Set("link", responder.linkHeader)
return resp, err
})
}

got, err := c.fetchNextFileList(context.Background(), tt.mock[0].reqUrl)
Expand Down

0 comments on commit 00a6242

Please sign in to comment.