name: CI

on:
    - pull_request

jobs:
    unit-tests:
        name: Unit tests
        runs-on: ubuntu-20.04
        steps:
            - name: Checkout the repository
              uses: actions/checkout@v2

            - name: Set up Node 14
              uses: actions/setup-node@v2
              with:
                  node-version: 14

            - name: Install dependencies
              run: yarn

            - name: Run unit tests
              run: yarn test

    code-quality:
        name: Code quality
        runs-on: ubuntu-20.04
        steps:
            - name: Checkout the repository
              uses: actions/checkout@v2

            - name: Set up Node 14
              uses: actions/setup-node@v2
              with:
                  node-version: 14

            - name: Install dependencies
              run: yarn

            - name: Lint
              run: yarn lint

    build:
        name: Build
        runs-on: ubuntu-20.04
        steps:
            - name: Checkout the repository
              uses: actions/checkout@v2

            - name: Set up Node 14
              uses: actions/setup-node@v2
              with:
                  node-version: 14

            - name: Install dependencies
              run: yarn --frozen-lockfile

            - name: Build the package
              run: yarn build
