/shakedown

The development, testing and debugging suite for Minetest.

Primary LanguageLua

Shakedown

shake·down /ˈʃeɪkdaʊn/ (noun):
a period of testing undergone before being declared operational.
The behavior driven testing framework for minetest

describe("my mod's functionality", function()
	it("can calculate 1*1", function()
		Given "two numbers"
		local number, factor = 1, 1
		When "multiplying"
		local result = number * factor
		Then "calculate the right answer"
		assert.is.equal(1, result)
	end)
end)
Preliminary tests, that detects simple early failures.
Node: default:chest_locked
 - it can be placed against an unknown node and will be removed from the ItemStack
 - it can be punched
 - it handles a null player passed to its can_dig(pos, [player])
!! but fails with:
.../default/nodes.lua:1357: attempt to index local 'player' (a nil value)
[fail (2/3)]
Utilities for developing, (collaborative) testing and debugging.

A testing oriented singlenode mapgen.

Make sure to get the submodules too:

git clone --recurse-submodules https://github.com/t4im/shakedown.git

And to recurse submodules when updating:

git pull --recurse-submodules

Related projects

  • coretest: cubictest against the minetest api/core.

License

This software is licensed under the MIT License (Expat). See the license file for details.