From 4026dde896c0935b7f31a44db62058031d2de3c5 Mon Sep 17 00:00:00 2001 From: Stanislaw Halik Date: Sun, 3 Mar 2024 07:19:51 +0100 Subject: critter: a? --- test/critter.cpp | 20 ++++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) (limited to 'test') diff --git a/test/critter.cpp b/test/critter.cpp index 0a715657..f8f75485 100644 --- a/test/critter.cpp +++ b/test/critter.cpp @@ -1,11 +1,14 @@ #include "app.hpp" +#include #include "compat/debug.hpp" #include "compat/shared-ptr-wrapper.hpp" #include "src/critter.hpp" #include "src/world.hpp" #include "src/wall-atlas.hpp" #include "src/timer.hpp" +#include "src/log.hpp" #include "loader/loader.hpp" +#include namespace floormat { @@ -22,7 +25,8 @@ void run(StringView name, const F& make_dt, critter& npc, const Ns max_time, const uint32_t fuzz_pixels, const Ns fuzz_time) { constexpr uint32_t max_steps = 10'000; - fm_assert(max_time < Second*60); + const bool verbose = is_log_verbose(); + fm_assert(max_time < Second*200); auto index = npc.index(); npc.teleport_to(index, start, rotation_COUNT); @@ -31,7 +35,7 @@ void run(StringView name, const F& make_dt, critter& npc, const Ns max_time, Ns time{0}; uint32_t steps; - Debug{} << ">>" << name << npc.position(); + Debug{} << name << npc.position(); auto last_pos = npc.position(); uint32_t i; @@ -42,6 +46,7 @@ void run(StringView name, const F& make_dt, critter& npc, const Ns max_time, auto dt = Ns{make_dt()}; fm_assert(dt <= Ns(1e9)); npc.update_movement(index, dt, r); + time += dt; const auto pos = npc.position(); if (pos == last_pos) { @@ -49,7 +54,14 @@ void run(StringView name, const F& make_dt, critter& npc, const Ns max_time, break; } last_pos = pos; - Debug{} << Vector2i(pos.local()) << pos.offset(); + Debug{} << "-" << pos << colon(',') << time; + + if (time > max_time) + { + if (verbose) + Debug{&std::cerr} << "timeout:" << max_time << "reached!"; + fm_EMIT_ABORT(); + } fm_assert(i != max_steps); } @@ -130,7 +142,7 @@ void test_app::test_critter() Debug{} << ""; Debug{} << "--"; Debug{} << ""; - test1(constantly(Millisecond * 1000), 1); + test1(constantly(Millisecond * 100), 1); Debug{} << ""; } -- cgit v1.2.3