Feat: Add Basic Lua Test Suite (#115)

This MR adds a Lua test suite to the project, run via busted, and introduces tests for a number of the utility functions. Subsequent work will have to be done to test functions that use the `vim.api` scope and external packages to the plugin.
This commit is contained in:
Harrison (Harry) Cramer
2023-11-20 18:03:35 -05:00
committed by GitHub
parent 1abc33d149
commit 88b9196a2e
12 changed files with 401 additions and 180 deletions

View File

@@ -4,7 +4,23 @@ on:
branches:
- main
jobs:
build:
go_lint:
name: Lint Go 💅
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/setup-go@v4
with:
go-version: '1.19'
cache: false
- name: golangci-lint
uses: golangci/golangci-lint-action@v3
with:
version: v1.54
only-new-issues: true
go_test:
name: Test Go 🧪
needs: [go_lint]
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3

15
.github/workflows/lua-tests.yaml vendored Normal file
View File

@@ -0,0 +1,15 @@
name: Lua Tests
on:
pull_request:
branches:
- main
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Run Busted
uses: lunarmodules/busted@v2.2.0
# with:
# args: --run=api

View File

@@ -1,10 +1,11 @@
name: Linting and Formatting
name: Lua
on:
pull_request:
branches:
- main
jobs:
luacheck:
lua_lint:
name: Lint Lua 💅
runs-on: ubuntu-latest
steps:
- name: Checkout
@@ -13,7 +14,8 @@ jobs:
uses: lunarmodules/luacheck@v1
with:
args: --globals vim --no-max-line-length -- .
stylua:
lua_format:
name: Formatting Lua 💅
runs-on: ubuntu-latest
steps:
- name: Checkout
@@ -24,16 +26,12 @@ jobs:
token: ${{ secrets.GITHUB_TOKEN }}
version: latest
args: --check .
golangci:
lua_test:
name: Test Lua 🧪
needs: [lua_format,lua_lint]
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/setup-go@v4
with:
go-version: '1.19'
cache: false
- name: golangci-lint
uses: golangci/golangci-lint-action@v3
with:
version: v1.54
only-new-issues: true
- name: Checkout
uses: actions/checkout@v3
- name: Run Busted
uses: lunarmodules/busted@v2.2.0