Skip to content

Test & Coverage

Test & Coverage #16455

name: Test & Coverage
on:
# pull_request:
# paths-ignore:
# - frontend/**
# - website/**
schedule: # Run every day
- cron: '0 8 * * *'
workflow_dispatch:
jobs:
build:
runs-on: ubuntu-latest
name: build # temporary solution to trick branch protection rules
services:
# Label used to access the service container
postgres:
# Docker Hub image
image: postgres
# Provide the password for postgres
env:
POSTGRES_PASSWORD: postgres
POSTGRES_INITDB_ARGS: "--no-sync"
# Set health checks to wait until postgres has started
ports:
- 5432:5432
options: >-
--health-cmd pg_isready --health-interval 10s --health-timeout 5s --health-retries 5
steps:
- uses: actions/checkout@v4
- name: Use Node.js 20.x
uses: actions/setup-node@v4
with:
node-version: 20.x
cache: 'yarn'
- name: Enable corepack
run: corepack enable
- name: Tests on 20.x
id: coverage
uses: ArtiomTr/jest-coverage-report-action@v2
with:
annotations: none
package-manager: yarn
test-script: yarn run test:coverage:jest
base-coverage-file: ./coverage/report.json
output: report-markdown
env:
CI: true
TEST_DATABASE_URL: postgres://postgres:postgres@localhost:5432/postgres
DATABASE_URL: postgres://postgres:postgres@localhost:5432/postgres
NODE_ENV: test
PORT: 4243
# - name: Report coverage on ${{ matrix.node-version }}
# uses: marocchino/sticky-pull-request-comment@v2
# with:
# # pass output from the previous step by id.
# message: ${{ steps.coverage.outputs.report }}