GitHub actions for mt-mods/mineunit
Executes Lua unit/integration tests with mineunit in spec directory with code coverage analysis using cluacov.
Additionally generates badge parameters for coverage badges as well as plain text coverage reports.
Example badges:
Examples in projects:
- https://github.com/S-S-X/metatool
- https://github.com/S-S-X/qos
- https://github.com/mt-mods/technic
- https://github.com/mt-mods/machine_parts
Example workflow file .github/workflows/mineunit.yml:
name: mineunit
on: [push, pull_request]
jobs:
mineunit:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- id: mineunit
uses: mt-mods/mineunit-actions@master
with:
badge-color: "CC9909"
- uses: RubbaBoy/[email protected]
with:
NAME: "${{ steps.mineunit.outputs.badge-name }}"
LABEL: "${{ steps.mineunit.outputs.badge-label }}"
STATUS: "${{ steps.mineunit.outputs.badge-status }}"
COLOR: "${{ steps.mineunit.outputs.badge-color }}"
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}Optional parameters for mt-mods/mineunit-actions:
working-directoryWorking directory for unit tests, can be used when testing modpacks or multiple mods.mineunit-argsMineunit extra arguments, for example to specify--engine-version 5.7.0.coverageLuacov code coverage. Enabled by default.badge-nameCode coverage badge name.badge-labelCode coverage badge label.badge-colorCode coverage badge color.mineunit-versionMineunit version.
Outputs:
steps.mineunit.outputs.badge-nameCode coverage badge name.steps.mineunit.outputs.badge-labelCode coverage badge label.steps.mineunit.outputs.badge-statusCode coverage badge status.steps.mineunit.outputs.badge-colorCode coverage badge color.steps.mineunit.outputs.mineunit-stdoutStdout produced during mineunit run.steps.mineunit.outputs.mineunit-spec-missingSet to true if no spec files found for busted.steps.mineunit.outputs.mineunit-reportMineunit code coverage summary report.steps.mineunit.outputs.coverage-totalTotal test coverage percentage.steps.mineunit.outputs.coverage-filesNumber of files tested and total number of source files.steps.mineunit.outputs.help-busted-spec-missingHelp for situation where spec files could not be loaded.
Based on Docker image https://hub.docker.com/r/mineunit/mineunit