diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 1bca06b08..15744bfe3 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -204,6 +204,17 @@ jobs: run: docker-compose exec -T backend yarn db:migrate init - name: backend | Unit test run: docker-compose exec -T backend yarn test + ########################################################################## + # COVERAGE CHECK BACKEND ################################################# + ########################################################################## + - name: backend | Coverage check + uses: webcraftmedia/coverage-check-action@master + with: + report_name: Coverage Backend + type: lcov + result_path: ./coverage/lcov.info + min_coverage: 58 + token: ${{ github.token }} ############################################################################## # JOB: UNIT TEST WEBAPP ###################################################### @@ -238,4 +249,24 @@ jobs: - name: backend | docker-compose run: docker-compose -f docker-compose.yml -f docker-compose.test.yml up --detach --no-deps webapp - name: webapp | Unit tests - run: docker-compose exec -T webapp yarn test \ No newline at end of file + run: docker-compose exec -T webapp yarn test + ########################################################################## + # COVERAGE REPORT FRONTEND ################################################ + ########################################################################## + # TODO: Maybe remove this later on to avoid spam? + #- name: frontend | Coverage report + # uses: romeovs/lcov-reporter-action@v0.2.21 + # with: + # github-token: ${{ secrets.GITHUB_TOKEN }} + # lcov-file: ./coverage/lcov.info + ########################################################################## + # COVERAGE CHECK WEBAPP ################################################## + ########################################################################## + - name: webapp | Coverage check + uses: webcraftmedia/coverage-check-action@master + with: + report_name: Coverage Webapp + type: lcov + result_path: ./coverage/lcov.info + min_coverage: 52 + token: ${{ github.token }} \ No newline at end of file diff --git a/backend/package.json b/backend/package.json index a5c5a1ddc..8148593c4 100644 --- a/backend/package.json +++ b/backend/package.json @@ -15,7 +15,7 @@ "dev": "nodemon --exec babel-node src/ -e js,gql", "dev:debug": "nodemon --exec babel-node --inspect=0.0.0.0:9229 src/ -e js,gql", "lint": "eslint src --config .eslintrc.js", - "test": "cross-env NODE_ENV=test jest --forceExit --detectOpenHandles --runInBand", + "test": "cross-env NODE_ENV=test jest --forceExit --detectOpenHandles --runInBand --coverage", "db:clean": "babel-node src/db/clean.js", "db:reset": "yarn run db:clean", "db:seed": "babel-node src/db/seed.js", diff --git a/docker-compose.test.yml b/docker-compose.test.yml index 2d382d606..be130881e 100644 --- a/docker-compose.test.yml +++ b/docker-compose.test.yml @@ -10,6 +10,8 @@ services: target: test environment: - NODE_ENV="test" + volumes: + - ./coverage:/app/coverage ######################################################## # BACKEND ############################################## @@ -20,6 +22,8 @@ services: target: test environment: - NODE_ENV="test" + volumes: + - ./coverage:/app/coverage ######################################################## # NEO4J ################################################ diff --git a/webapp/package.json b/webapp/package.json index 57967b32a..84cdcbc7c 100644 --- a/webapp/package.json +++ b/webapp/package.json @@ -17,7 +17,7 @@ "lint": "eslint --ext .js,.vue .", "locales": "../scripts/translations/missing-keys.sh && ../scripts/translations/sort.sh", "precommit": "yarn lint", - "test": "cross-env NODE_ENV=test jest", + "test": "cross-env NODE_ENV=test jest --coverage", "test:unit:debug": "node --inspect-brk ./node_modules/jest/bin/jest.js --no-cache --runInBand" }, "jest": {