Skip to content

refactor(test): prefer assert_diagnostics over EXPECT_THAT #5675

refactor(test): prefer assert_diagnostics over EXPECT_THAT

refactor(test): prefer assert_diagnostics over EXPECT_THAT #5675

# Copyright (C) 2020 Matthew Glazar
# See end of file for extended copyright information.
name: test Vim plugin
on:
push:
pull_request:
types: [opened, synchronize]
jobs:
build:
name: ${{ matrix.vim.name }}
strategy:
fail-fast: false
matrix:
vim:
- {name: "Neovim", version_command: "nvim --version", test_command: "./plugin/vim/test-nvim.sh"}
- {name: "Vim", version_command: "vim --version", test_command: "./plugin/vim/test-vim.sh"}
runs-on: ubuntu-latest
container: ghcr.io/quick-lint/quick-lint-js-github-vim:v1
steps:
- name: checkout
uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2
- name: version
run: ${{ matrix.vim.version_command }}
- name: test
run: ${{ matrix.vim.test_command }}
- name: package Vim plugin
run: ./plugin/vim/create-archive
- name: upload archive to workflow
uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2
with:
if-no-files-found: error
name: web-demo-dist-${{ github.sha }}
path: plugin/vim/quick-lint-js-vim.zip
- name: upload archive to long-term storage
if: ${{ github.event_name == 'push' && github.repository_owner == 'quick-lint' != null }}
uses: quick-lint/sftp-upload@1fa54164d4bdd081207a6e54ec143d8dda3a7fb8 # v3
with:
host: ${{ secrets.artifacts_host }}
local-file-globs: plugin/vim/quick-lint-js-vim.zip
private-key: ${{ secrets.artifacts_key }}
remote-directory: ${{ secrets.artifacts_root }}/builds/${{ github.sha }}/vim/
user: ${{ secrets.artifacts_user }}
# quick-lint-js finds bugs in JavaScript programs.
# Copyright (C) 2020 Matthew Glazar
#
# This file is part of quick-lint-js.
#
# quick-lint-js is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# quick-lint-js is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with quick-lint-js. If not, see <https://www.gnu.org/licenses/>.