name: Test project
on:
  push:
  pull_request:
    branches:
      - master

jobs:
  test:
    runs-on: ubuntu-latest
    steps:
      - name: Checkout project
        uses: actions/checkout@v1
      - name: Setup Node.js
        uses: actions/setup-node@v1
        with:
          node-version: '12.x'
          registry-url: https://registry.npmjs.org/
      - name: Install package
        run: npm install
      - name: Linting
        run: npm run lint
      - name: Generate coverage report
        run: npm run coverage
      - name: Upload coverage to Codecov
        run: |
          ./node_modules/.bin/nyc report --reporter=text-lcov > coverage.lcov
          ./node_modules/.bin/codecov --token=${{ secrets.CODECOV_TOKEN }}
