--- name: Unit Tests on: push: branches: - master pull_request: types: - opened - edited - synchronize jobs: unit_tests: name: Unit tests runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 # Cache - uses: actions/cache@v1 with: path: ~/.npm key: ${{ runner.os }}-node-${{ hashFiles('**/package-lock.json') }} restore-keys: | ${{ runner.os }}-node- - uses: actions/cache@v1 with: path: ~/.cache/pip key: ${{ runner.os }}-pip-${{ hashFiles('**/requirements.txt') }} restore-keys: | ${{ runner.os }}-pip- # Setup - name: Install snappy dep run: sudo apt-get install libsnappy-dev - name: Set up Python 3.9 uses: actions/setup-python@v1 with: python-version: 3.9 - name: Set up Nodejs 16 uses: actions/setup-node@v1 with: node-version: 16 - name: Set up ruby 2.6 uses: actions/setup-ruby@v1 with: ruby-version: '2.6' - name: Install virtualenv run: pip install virtualenv - name: Install dependencies run: make setup # Run Tests - name: CloudFormation unit tests run: make test-cfn - name: Backend unit tests run: make test-ci env: AWS_DEFAULT_REGION: eu-west-1 - name: Frontend unit tests run: make test-frontend - name: Upload unit test coverage reports to Codecov uses: codecov/codecov-action@v1