Skip to content

added work flow

added work flow #36

name: Unit Tests - Client Advisor
on:
push:
branches: main
# Trigger on changes in these specific paths
paths:
- 'ClientAdvisor/**'
pull_request:
branches: main
types:
- opened
- ready_for_review
- reopened
- synchronize
paths:
- 'ClientAdvisor/**'
jobs:
test_client_advisor:
name: Client Advisor Tests
runs-on: ubuntu-latest
# The if condition ensures that this job only runs if changes are in the ClientAdvisor folder
steps:
- uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: "3.11"
- name: Install Backend Dependencies
run: |
cd ClientAdvisor/App
python -m pip install -r requirements.txt
python -m pip install coverage pytest-cov
- name: Run Backend Tests with Coverage
run: |
cd ClientAdvisor/App
python -m pytest -vv --cov=. --cov-report=xml --cov-report=html --cov-report=term-missing --cov-fail-under=80 --junitxml=coverage-junit.xml
- uses: actions/upload-artifact@v4
with:
name: client-advisor-coverage
path: |
ClientAdvisor/App/coverage.xml
ClientAdvisor/App/coverage-junit.xml
ClientAdvisor/App/htmlcov/
- name: Set up Node.js
uses: actions/setup-node@v3
with:
node-version: '20'
- name: Install Frontend Dependencies
run: |
cd ClientAdvisor/App/frontend
npm install
- name: Run Frontend Tests with Coverage
run: |
cd ClientAdvisor/App/frontend
npm run test -- --coverage
- uses: actions/upload-artifact@v4
with:
name: client-advisor-frontend-coverage
path: |
ClientAdvisor/App/frontend/coverage/
ClientAdvisor/App/frontend/coverage/lcov-report/