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