Skip to content

Commit

Permalink
Run automated tests when lua files change (minetest#12184)
Browse files Browse the repository at this point in the history
* Run automated tests when lua files change

* skip busted on devtest

* use newer build env

* Add .luacheckrc for games/devetest

Co-authored-by: sfan5 <[email protected]>
  • Loading branch information
x2048 and sfan5 committed Apr 30, 2022
1 parent ec4a789 commit 828461c
Show file tree
Hide file tree
Showing 3 changed files with 103 additions and 32 deletions.
60 changes: 60 additions & 0 deletions .github/workflows/lua.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
name: lua_lint

# Lint on lua changes on builtin or if workflow changed
on:
push:
paths:
- 'builtin/**.lua'
- 'games/devtest/**.lua'
- '.github/workflows/**.yml'
pull_request:
paths:
- 'builtin/**.lua'
- 'games/devtest/**.lua'
- '.github/workflows/**.yml'

jobs:
# Note that the integration tests are also run build.yml, but only when C++ code is changed.
integration_tests:
name: "Compile and run multiplayer tests"
runs-on: ubuntu-20.04
steps:
- uses: actions/checkout@v2
- name: Install deps
run: |
source ./util/ci/common.sh
install_linux_deps clang-10 gdb
- name: Build
run: |
./util/ci/build.sh
env:
CC: clang-10
CXX: clang++-10

- name: Integration test + devtest
run: |
./util/test_multiplayer.sh
luacheck:
name: "Builtin Luacheck and Unit Tests"
runs-on: ubuntu-18.04
steps:
- uses: actions/checkout@v2
- name: Install luarocks
run: |
sudo apt-get install luarocks -qyy
- name: Install luarocks tools
run: |
luarocks install --local luacheck
luarocks install --local busted
- name: Run checks (builtin)
run: |
$HOME/.luarocks/bin/luacheck builtin
$HOME/.luarocks/bin/busted builtin
- name: Run checks (devtest)
run: |
$HOME/.luarocks/bin/luacheck --config=games/devtest/.luacheckrc games/devtest
32 changes: 0 additions & 32 deletions .github/workflows/lua_lint.yml

This file was deleted.

43 changes: 43 additions & 0 deletions games/devtest/.luacheckrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
unused_args = false
allow_defined_top = true
max_string_line_length = false
max_line_length = false

ignore = {
"131", -- Unused global variable
"211", -- Unused local variable
"231", -- Local variable never accessed
"311", -- Value assigned to a local variable is unused
"412", -- Redefining an argument
"421", -- Shadowing a local variable
"431", -- Shadowing an upvalue
"432", -- Shadowing an upvalue argument
"611", -- Line contains only whitespace
}

read_globals = {
"ItemStack",
"INIT",
"DIR_DELIM",
"dump", "dump2",
"fgettext", "fgettext_ne",
"vector",
"VoxelArea",
"profiler",
"Settings",
"check",
"PseudoRandom",

string = {fields = {"split", "trim"}},
table = {fields = {"copy", "getn", "indexof", "insert_all"}},
math = {fields = {"hypot", "round"}},
}

globals = {
"aborted",
"minetest",
"core",
os = { fields = { "tempfolder" } },
"_",
}

0 comments on commit 828461c

Please sign in to comment.