]> git.lizzy.rs Git - minetest.git/blobdiff - util/test_multiplayer.sh
Reduce code duplication between c_converter.cpp and helper.cpp
[minetest.git] / util / test_multiplayer.sh
index 5ffc044e06bc099d153df8381f7ccc6897e1185c..e0d0ec742b1ffe711fc754e5c9c4a37c35d72da2 100755 (executable)
@@ -1,6 +1,6 @@
 #!/bin/bash
 dir="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
-gameid=devtest
+gameid=${gameid:-devtest}
 minetest=$dir/../bin/minetest
 testspath=$dir/../tests
 conf_client1=$testspath/client1.conf
@@ -26,34 +26,17 @@ gdbrun () {
 [ -e $minetest ] || { echo "executable $minetest missing"; exit 1; }
 
 rm -rf $worldpath
-mkdir -p $worldpath/worldmods/test
+mkdir -p $worldpath/worldmods
 
 printf '%s\n' >$testspath/client1.conf \
        video_driver=null name=client1 viewing_range=10 \
        enable_{sound,minimap,shaders}=false
 
 printf '%s\n' >$testspath/server.conf \
-       max_block_send_distance=1 devtest_unittests_autostart=true
+       max_block_send_distance=1 devtest_unittests_autostart=true \
+       helper_mode=devtest
 
-cat >$worldpath/worldmods/test/init.lua <<"LUA"
-core.after(0, function()
-       io.close(io.open(core.get_worldpath() .. "/startup", "w"))
-end)
-local function callback(test_ok)
-       if not test_ok then
-               io.close(io.open(core.get_worldpath() .. "/test_failure", "w"))
-       end
-       io.close(io.open(core.get_worldpath() .. "/done", "w"))
-       core.request_shutdown("", false, 2)
-end
-if core.settings:get_bool("devtest_unittests_autostart") then
-       unittests.on_finished = callback
-else
-       core.register_on_joinplayer(function() callback(true) end)
-end
-LUA
-printf '%s\n' >$worldpath/worldmods/test/mod.conf \
-       name=test optional_depends=unittests
+ln -s $dir/helper_mod $worldpath/worldmods/
 
 echo "Starting server"
 gdbrun $minetest --server --config $conf_server --world $worldpath --gameid $gameid 2>&1 | sed -u 's/^/(server) /' &