name: selenium_tests

on:
    push:
        branches:
            - master
            - E2E_TESTS
jobs:
    e2e-test:
        runs-on: ubuntu-latest
        steps:
            - name: Checkout code
              uses: actions/checkout@v2
              with:
                  ref: ${{ github.ref }}
            - name: Set up Python 3.7
              uses: actions/setup-python@v1
              with:
                  python-version: 3.7
            - uses: actions/cache@v1
              with:
                  path: ~/.cache/pip
                  key: ${{ runner.os }}-pip-${{ hashFiles('**/requirements.txt') }}
                  restore-keys: |
                      ${{ runner.os }}-pip-
            - name: Install dependencies
              run: |
                  sudo apt-get update
                  sudo apt-get install chromium-chromedriver
                  python -m pip install --upgrade pip
                  pip install -r requirements.txt
                  pip install -r tests/requirements.txt
                  npm i
              env:
                  GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
            - name: Check files
              run: |
                  npm run lint:yaml
            - name: Build the components
              run: |
                  npm run build
            - name: Test with pytest
              env:
                  PERCY_TOKEN: ${{ secrets.PERCY_TOKEN }}
              run: |
                  pytest --headless tests
