Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
17 changes: 0 additions & 17 deletions .github/workflows/pr-unit-tests-1.19.yaml

This file was deleted.

17 changes: 0 additions & 17 deletions .github/workflows/pr-unit-tests-1.20.yaml

This file was deleted.

37 changes: 37 additions & 0 deletions .github/workflows/pr-unit-tests.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
name: Unit tests
on:
pull_request:
types: ['opened', 'synchronize']

jobs:
run-tests:
runs-on: ubuntu-latest
strategy:
matrix:
go-version: ['1.23', '1.22']
steps:
- name: Checkout Code
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7

- name: Setup Go
uses: actions/setup-go@cdcb36043654635271a94b9a6d1392de5bb323a7 # v5.0.1
with:
go-version: ${{matrix.go-version}}

- name: Run golangci-lint
uses: golangci/golangci-lint-action@08e2f20817b15149a52b5b3ebe7de50aff2ba8c5

- name: Run unit tests and generate coverage report
run: make test

- name: Upload coverage report
uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808
with:
path: coverage.out
name: Coverage-report-${{matrix.go-version}}

- name: Display coverage test
run: go tool cover -func=coverage.out

- name: Build Go
run: go build ./...
2 changes: 1 addition & 1 deletion .go-version
Original file line number Diff line number Diff line change
@@ -1 +1 @@
1.22.2
1.23
8 changes: 8 additions & 0 deletions .golangci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
linters:
disable-all: true
enable:
- errcheck
- staticcheck
- gosimple
- govet
output_format: colored-line-number
2 changes: 1 addition & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ default: test

test:
go vet ./...
go test -v -race ./...
go test -v -race ./... -coverprofile=coverage.out

updatedeps:
go get -f -t -u ./...
Expand Down
21 changes: 17 additions & 4 deletions client_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -223,7 +223,14 @@ func testClientDo(t *testing.T, body interface{}) {
t.Fatalf("err: %v", err)
}
defer list.Close()
go http.Serve(list, handler)
errors := make(chan error, 1)
go func() {
err := http.Serve(list, handler)
if err != nil {
errors <- err
return
}
}()

// Wait again
select {
Expand Down Expand Up @@ -646,10 +653,14 @@ func testClientResponseLogHook(t *testing.T, l interface{}, buf *bytes.Buffer) {
ts := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
if time.Now().After(passAfter) {
w.WriteHeader(200)
w.Write([]byte("test_200_body"))
if _, err := w.Write([]byte("test_200_body")); err != nil {
t.Fatalf("failed to write: %v", err)
}
} else {
w.WriteHeader(500)
w.Write([]byte("test_500_body"))
if _, err := w.Write([]byte("test_500_body")); err != nil {
t.Fatalf("failed to write: %v", err)
}
}
}))
defer ts.Close()
Expand Down Expand Up @@ -725,7 +736,9 @@ func TestClient_NewRequestWithContext(t *testing.T) {
func TestClient_RequestWithContext(t *testing.T) {
ts := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
w.WriteHeader(200)
w.Write([]byte("test_200_body"))
if _, err := w.Write([]byte("test_200_body")); err != nil {
t.Fatalf("failed to write: %v", err)
}
}))
defer ts.Close()

Expand Down
2 changes: 1 addition & 1 deletion go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -12,4 +12,4 @@ require (
golang.org/x/sys v0.20.0 // indirect
)

go 1.19
go 1.23
4 changes: 3 additions & 1 deletion roundtripper_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,9 @@ func TestRoundTripper_RoundTrip(t *testing.T) {
w.WriteHeader(404)
} else {
w.WriteHeader(200)
w.Write([]byte("success!"))
if _, err := w.Write([]byte("success!")); err != nil {
t.Fatalf("failed to write: %v", err)
}
}
}))
defer ts.Close()
Expand Down
Loading