Skip to content
Snippets Groups Projects
Commit 4d33393f authored by Albin Henriksson's avatar Albin Henriksson
Browse files

Issue/7 add test coverage report

parent cc7bfa24
No related branches found
No related tags found
1 merge request!12Issue/7 add test coverage report
Pipeline #34261 passed
stages:
- setup
- test
- report
include:
- local: .gitlab/server.gitlab-ci.yml
......
......@@ -51,3 +51,25 @@ client:test:
- cd client
- npm run test:coverage
coverage: /All files\s*\|\s*([\d\.]+)/
artifacts:
paths:
- client/output/coverage/jest/cobertura-coverage.xml
expire_in: 5 min
client:report:
image: python
stage: report
needs: ["client:test"]
only:
refs:
- dev
- merge_requests
changes:
- client/**/*
script:
- cd client
- python coverage_report.py
artifacts:
reports:
cobertura: client/output/coverage/jest/cobertura-coverage.xml
expire_in: 1 week
......@@ -38,3 +38,26 @@ server:test:
- cd server
- source env/bin/activate
- pytest --cov app tests/
- coverage xml
artifacts:
paths:
- server/coverage.xml
expire_in: 5 min
server:report:
image: python
stage: report
needs: ["server:test"]
only:
refs:
- dev
- merge_requests
changes:
- server/**/*
script:
- cd server
- python coverage_report.py
artifacts:
reports:
cobertura: server/coverage.xml
expire_in: 1 week
import xml.etree.ElementTree as et
tree = et.parse('output/coverage/jest/cobertura-coverage.xml')
root = tree.getroot()
for package_class in tree.find('.//packages'):
package_class.set('name', 'client.' + package_class.attrib.get('name'))
package_class.set('filename', 'client/' + package_class.attrib.get('filename'))
tree.write('output/coverage/jest/cobertura-coverage.xml')
......@@ -38,7 +38,7 @@
"test": "react-scripts test",
"eject": "react-scripts eject",
"lint": "eslint \"./src/**/*.{js,ts,tsx}\"",
"test:coverage": "react-scripts test --coverage"
"test:coverage": "react-scripts test --coverage --coverageDirectory=output/coverage/jest"
},
"browserslist": {
"production": [
......@@ -57,6 +57,10 @@
"src/**/*.{js,jsx,tsx,ts}",
"!src/index.tsx",
"!src/reportWebVitals.ts"
],
"coverageReporters": [
"text",
"cobertura"
]
},
"proxy": "http://localhost:5000/api/"
......
......@@ -6,5 +6,4 @@
from flask import Blueprint
admin_blueprint = Blueprint("admin", __name__)
import datetime
from app import db
from app.api import api_blueprint
from app.database.models import Blacklist, User
from app.utils.validator import edit_user_schema, login_schema, register_schema, validateObject
from flask import request
from flask_jwt_extended import (
jwt_required,
create_access_token,
jwt_refresh_token_required,
create_refresh_token,
get_jwt_identity,
get_raw_jwt,
jwt_refresh_token_required,
jwt_required,
)
from app import db
from app.api import api_blueprint
from app.database.models import User, Blacklist
from app.utils.validator import validateObject, login_schema, register_schema, edit_user_schema
def get_current_user():
......
import xml.etree.ElementTree as et
tree = et.parse('coverage.xml')
root = tree.getroot()
for package in tree.find('.//packages'):
package.set('name', 'server.' + package.attrib.get('name'))
for package_class in package.find('classes'):
package_class.set('name', 'server.' + package_class.attrib.get('name'))
package_class.set('filename', 'server/' + package_class.attrib.get('filename'))
tree.write('coverage.xml')
......@@ -9,7 +9,6 @@ def app():
with app.app_context():
db.drop_all()
db.create_all()
return app
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment