---
name: Continuous Integration

on:
  pull_request:
    branches:
      - master

jobs:
  test:
    permissions: write-all
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v2
      - uses: actions/setup-node@v1
        with:
          node-version: 18
      - name: Install with NPM
        id: installation
        run: |
          npm ci --no-optional
      - name: Run Tests
        id: testing
        run: |
          npm run test:ci
      - name: Add Coverage Report
        id: coverage-report
        uses: 5monkeys/cobertura-action@v1
        with:
          path: coverage/cobertura-coverage.xml
          repo_token: ${{ secrets.GITHUB_TOKEN }}
          minimum_coverage: 80
      - name: Upload Artifacts
        id: upload-artifacts
        uses: actions/upload-artifact@v1
        with:
          name: artifacts
          path: coverage
