c3915b2c7a8ccdf6a9b5d7c3c30af726b45d95a1
- Author
- Ayman Bagabas <ayman.bagabas@gmail.com>
- Committer
- Ayman Bagabas <ayman.bagabas@gmail.com>
- Date
Message
feat: run test coverage against postgres
Diff
1diff --git a/.github/workflows/coverage.yml b/.github/workflows/coverage.yml
2index 4b1b12a83f5624f16d158e9f039f62a8d79c24fc..8c46d3bd47d2274dbb2486dac0308ee88225d144 100644
3--- a/.github/workflows/coverage.yml
4+++ b/.github/workflows/coverage.yml
5@@ -11,6 +11,18 @@ jobs:
6 strategy:
7 matrix:
8 os: [ubuntu-latest] # TODO: add macos & windows
9+ services:
10+ postgres:
11+ image: postgres
12+ ports:
13+ - 5432:5432
14+ env:
15+ POSTGRES_PASSWORD: postgres
16+ options: >-
17+ --health-cmd pg_isready
18+ --health-interval 10s
19+ --health-timeout 5s
20+ --health-retries 5
21 runs-on: ${{ matrix.os }}
22 steps:
23 - uses: actions/checkout@v4
24@@ -30,15 +42,19 @@ jobs:
25 # https://github.com/golang/go/issues/51430#issuecomment-1344711300
26 mkdir -p coverage/unit
27 mkdir -p coverage/int
28+ mkdir -p coverage/int2
29
30 # Collect unit tests coverage
31 go test -failfast -race -timeout 5m -skip=^TestScript -cover ./... -args -test.gocoverdir=$PWD/coverage/unit
32
33 # Collect integration tests coverage
34 GOCOVERDIR=$PWD/coverage/int go test -failfast -race -timeout 5m -run=^TestScript ./...
35+ SOFT_SERVE_DB_DRIVER=postgres \
36+ SOFT_SERVE_DB_DATA_SOURCE=postgres://postgres:postgres@localhost/postgres?sslmode=disable \
37+ GOCOVERDIR=$PWD/coverage/int2 go test -failfast -race -timeout 5m -run=^TestScript ./...
38
39 # Convert coverage data to legacy textfmt format to upload
40- go tool covdata textfmt -i=coverage/unit,coverage/int -o=coverage.txt
41+ go tool covdata textfmt -i=coverage/unit,coverage/int,coverage/int2 -o=coverage.txt
42 - uses: codecov/codecov-action@v3
43 with:
44 file: ./coverage.txt