name: Tests

on:
  push:
    branches: [master]
  pull_request:

jobs:
  appimage-ubuntu:
    name: ubuntu
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v2
      - run: date +%F > todays-date
      - name: Restore cache for today's nightly.
        uses: actions/cache@v2
        with:
          path: |
            build
          key: ${{ runner.os }}-appimage-${{ hashFiles('todays-date') }}

      - name: Prepare
        run: |
          sudo apt install fd-find
          test -d build || {
            mkdir -p build
            wget https://github.com/neovim/neovim/releases/download/nightly/nvim.appimage
            chmod +x nvim.appimage
            mv nvim.appimage ./build/nvim
          }
          mkdir -p ~/.local/share/nvim/site/pack/vendor/start
          git clone --depth 1 https://github.com/nvim-lua/plenary.nvim ~/.local/share/nvim/site/pack/vendor/start/plenary.nvim
          git clone --depth 1 https://github.com/kyazdani42/nvim-web-devicons ~/.local/share/nvim/site/pack/vendor/start/nvim-web-devicons
          ln -s $(pwd) ~/.local/share/nvim/site/pack/vendor/start
      - name: Run tests
        run: |
            export PATH="${PWD}/build/:${PATH}"
            make test