name: Test on: push: pull_request: types: [labeled] jobs: test: runs-on: ubuntu-latest strategy: matrix: deno: ["v1.x"] steps: - uses: actions/checkout@v2 - uses: denoland/setup-deno@main with: deno-version: ${{ matrix.deno }} - name: Cache dependencies run: deno cache mod.ts - name: Run test script for maintainers if: ${{ github.actor == 'Skillz4Killz' || github.actor == 'itohatweb' }} run: deno test --unstable --coverage=coverage -A tests/mod.ts - name: Run test script if label added if: ${{ github.event_name == 'pull_request' && github.event.action == 'labeled' && github.event.label.name == 'run-tests' }} run: DISCORD_TOKEN=${{ secrets.DISCORD_TOKEN }} deno test --unstable --coverage=coverage --allow-net tests/mod.ts - name: Create coverage report if: github.ref == 'refs/heads/main' run: deno --unstable coverage ./coverage --lcov > coverage.lcov - name: Collect and upload the coverage report if: github.ref == 'refs/heads/main' uses: codecov/codecov-action@v1.0.10 with: file: ./coverage.lcov env: DISCORD_TOKEN: ${{ secrets.DISCORD_TOKEN }}