Skip to content

Tests

Tests #1290

Workflow file for this run

name: Tests
on:
workflow_dispatch:
push:
branches:
- '*'
pull_request:
branches:
- '*'
jobs:
tests_vim:
name: Vim (unix)
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, macos-latest]
vim-version: [v8.0.0000, v9.0.1500]
runs-on: ${{ matrix.os }}
steps:
- name: Checkout kkoomen/vim-doge
uses: actions/checkout@v2
- name: Checkout junegunn/vader.vim
uses: actions/checkout@v2
with:
repository: junegunn/vader.vim
path: vader.vim
- name: Cache Cargo dependencies
uses: actions/cache@v2
with:
path: ~/.cargo
key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }}
- name: Build (unix)
run: ./scripts/build.sh
shell: bash
- name: Setup vim
uses: rhysd/action-setup-vim@v1
id: vim
with:
version: ${{ matrix.vim-version }}
neovim: false
- name: Run tests
run: ./scripts/run-vader-tests.sh "${{ steps.vim.outputs.executable }}"
shell: bash
tests_vim_windows:
name: Vim (windows)
strategy:
fail-fast: false
matrix:
os: [windows-latest]
# versions are coming from https://github.com/vim/vim-win32-installer
# and most of the versions we support aren't listed, therefore we take
# the next tag version that is available in this repository.
vim-version: [v8.0.0003, nightly]
runs-on: ${{ matrix.os }}
steps:
- name: Checkout kkoomen/vim-doge
uses: actions/checkout@v2
- name: Checkout junegunn/vader.vim
uses: actions/checkout@v2
with:
repository: junegunn/vader.vim
path: vader.vim
- name: Cache Cargo dependencies
uses: actions/cache@v2
with:
path: ~/.cargo
key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }}
- name: Build (windows)
run: ./scripts/build.ps1
- name: Setup vim
uses: rhysd/action-setup-vim@v1
id: vim
with:
version: ${{ matrix.vim-version }}
neovim: false
- name: Run tests
run: ./scripts/run-vader-tests.sh "${{ steps.vim.outputs.executable }}"
shell: bash
tests_neovim:
name: Neovim
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, macos-latest, windows-latest]
vim-version: [v0.3.2, stable]
runs-on: ${{ matrix.os }}
steps:
- name: Checkout kkoomen/vim-doge
uses: actions/checkout@v2
- name: Checkout junegunn/vader.vim
uses: actions/checkout@v2
with:
repository: junegunn/vader.vim
path: vader.vim
- name: Cache Cargo dependencies
uses: actions/cache@v2
with:
path: ~/.cargo
key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }}
- name: Build (unix)
if: matrix.os != 'windows-latest'
run: ./scripts/build.sh
shell: bash
- name: Build (windows)
if: matrix.os == 'windows-latest'
run: ./scripts/build.ps1
- name: Setup neovim
uses: rhysd/action-setup-vim@v1
id: vim
with:
version: ${{ matrix.vim-version }}
neovim: true
- name: Run tests
run: ./scripts/run-vader-tests.sh "${{ steps.vim.outputs.executable }}"
shell: bash
vint:
name: Linter
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/setup-python@v1
- run: pip install vim-vint
- run: vint -s ./autoload ./plugin