Go to file
Perttu Ahola c5722e5e9e Add 0.4.3 2012-11-28 11:02:34 +02:00
rules.d Add 0.4.3 2012-11-28 11:02:34 +02:00
.gitignore Add .gitignore 2012-07-23 05:01:40 +03:00
README Add README 2012-07-23 14:29:57 +03:00
minetest-worldtest-check-and-set.sh Better error handling 2012-11-28 11:02:32 +02:00
minetest-worldtest.sh Better error handling 2012-11-28 11:02:32 +02:00

README

minetest-worldtest - Minetest world compatibility tester
=========================================================
WTFPL - 2012 Perttu Ahola <celeron55@gmail.com>

1. Builds a number of Minetest versions as defined in rules.d/
2. Creates and reads worlds with them and reports errors

Patches in rules.d/$tag/*.patch are applied to each version. The patches are supposed to modify the built minetestserver so that it will, once started:
1. Load or generate all the MapBlocks touching (0,0,0)
2. After loading, read nodes and check if they are correctly set
  - Create a new file worldtest_result.txt for results
  - If a test passes, print a line starting with GOOD:, otherwise print a line starting with BAD:
3. Set the nodes in the certain formation
4. Save and quit

The formation of nodes used is:
- 3x5x3 hollow box made of nyan cats, having
- a torch at the topmost inside node (0,2,0), the light value of day and night being 13,
- a glass block at the middle (0,1,0), light being 12
- air at the bottom (0,0,0), light being 11, and
- a sign at the node at (0,0,2); the text of the sign is "Foo Bar".

Example output
===============

Result summary:
== 0.3.1 returns all bad for non-existent world
== 0.3.1 returns all good for self-generated world
== 0.4.dev-20120122-1 returns all bad for non-existent world
== 0.4.dev-20120122-1 returns all good for self-generated world
== 0.4.dev-20120122-1 returns all good for world generated by 0.3.1
== 0.4.dev-20120408 returns all bad for non-existent world
== 0.4.dev-20120408 returns all good for self-generated world
== 0.4.dev-20120408 returns all good for world generated by 0.3.1
== 0.4.dev-20120408 returns all good for world generated by 0.4.dev-20120122-1
== 0.4.dev-20120606 returns all bad for non-existent world
== 0.4.dev-20120606 returns all good for self-generated world
== 0.4.dev-20120606 returns all good for world generated by 0.3.1
== 0.4.dev-20120606 returns all good for world generated by 0.4.dev-20120122-1
== 0.4.dev-20120606 returns all good for world generated by 0.4.dev-20120408
== 0.4.1 returns all bad for non-existent world
== 0.4.1 returns all good for self-generated world
== 0.4.1 returns all good for world generated by 0.3.1
== 0.4.1 returns all good for world generated by 0.4.dev-20120122-1
== 0.4.1 returns all good for world generated by 0.4.dev-20120408
== 0.4.1 returns all good for world generated by 0.4.dev-20120606
== master returns all bad for non-existent world
== master returns all good for self-generated world
EE master returns some bad for world generated by 0.3.1
BAD: (-1,-1,-1) should be "default:nyancat", is ""
BAD: (0,3,0) should be "default:nyancat", is ""
BAD: (0,1,0) should be "default:glass", is ""
BAD: (0,1,0) should have day=12 night=12, has day=0 night=0
== master returns all good for world generated by 0.4.dev-20120122-1
== master returns all good for world generated by 0.4.dev-20120408
== master returns all good for world generated by 0.4.dev-20120606
== master returns all good for world generated by 0.4.1