forked from Mirrorlandia_minetest/minetest
Run automated tests when lua files change (#12184)
* Run automated tests when lua files change * skip busted on devtest * use newer build env * Add .luacheckrc for games/devetest Co-authored-by: sfan5 <sfan5@live.de>
This commit is contained in:
parent
ec4a789b4f
commit
828461c193
60
.github/workflows/lua.yml
vendored
Normal file
60
.github/workflows/lua.yml
vendored
Normal file
@ -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
.github/workflows/lua_lint.yml
vendored
32
.github/workflows/lua_lint.yml
vendored
@ -1,32 +0,0 @@
|
|||||||
name: lua_lint
|
|
||||||
|
|
||||||
# Lint on lua changes on builtin or if workflow changed
|
|
||||||
on:
|
|
||||||
push:
|
|
||||||
paths:
|
|
||||||
- 'builtin/**.lua'
|
|
||||||
- '.github/workflows/**.yml'
|
|
||||||
pull_request:
|
|
||||||
paths:
|
|
||||||
- 'builtin/**.lua'
|
|
||||||
- '.github/workflows/**.yml'
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
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
|
|
||||||
run: |
|
|
||||||
$HOME/.luarocks/bin/luacheck builtin
|
|
||||||
$HOME/.luarocks/bin/busted builtin
|
|
43
games/devtest/.luacheckrc
Normal file
43
games/devtest/.luacheckrc
Normal file
@ -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" } },
|
||||||
|
"_",
|
||||||
|
}
|
||||||
|
|
Loading…
Reference in New Issue
Block a user