|
|
|
#include <catch2/catch_test_macros.hpp>
|
|
|
|
#include <fmt/core.h>
|
|
|
|
#include <nlohmann/json.hpp>
|
|
|
|
#include <fstream>
|
|
|
|
#include "map.hpp"
|
|
|
|
#include "worldbuilder.hpp"
|
|
|
|
|
|
|
|
using namespace fmt;
|
|
|
|
using namespace nlohmann;
|
|
|
|
using std::string;
|
|
|
|
|
|
|
|
TEST_CASE("bsp algo test", "[builder]") {
|
|
|
|
Map map(20, 20);
|
|
|
|
WorldBuilder builder(map);
|
|
|
|
builder.generate();
|
|
|
|
}
|
|
|
|
|
|
|
|
TEST_CASE("dumping and debugging", "[builder]") {
|
|
|
|
Map map(20, 20);
|
|
|
|
WorldBuilder builder(map);
|
|
|
|
builder.generate();
|
|
|
|
|
|
|
|
matrix_dump("GENERATED", map.paths());
|
|
|
|
map.dump();
|
|
|
|
}
|
|
|
|
|
|
|
|
TEST_CASE("pathing", "[builder]") {
|
|
|
|
Map map(20, 20);
|
|
|
|
WorldBuilder builder(map);
|
|
|
|
builder.generate();
|
|
|
|
|
|
|
|
REQUIRE(map.can_move({0,0}) == false);
|
|
|
|
REQUIRE(map.iswall(0,0) == true);
|
|
|
|
}
|