From c7ea57f35096d588f6da43ae4cf317ad0be920da Mon Sep 17 00:00:00 2001 From: austin Date: Sat, 31 May 2025 14:30:35 -0400 Subject: [PATCH] town layout test --- docs/src/progress/renderertodo.md | 1 + .../civilization/town/TownLayoutTests.java | 34 +++++++++++++++++++ 2 files changed, 35 insertions(+) create mode 100644 src/test/java/electrosphere/server/macro/civilization/town/TownLayoutTests.java diff --git a/docs/src/progress/renderertodo.md b/docs/src/progress/renderertodo.md index ca9e1d6e..4c8f74fe 100644 --- a/docs/src/progress/renderertodo.md +++ b/docs/src/progress/renderertodo.md @@ -2094,6 +2094,7 @@ Fix draw cell manager test Error logging in entity-character assignment Potential fix for macro pathing continuous loop Unit test for generating a world +TownLayout test diff --git a/src/test/java/electrosphere/server/macro/civilization/town/TownLayoutTests.java b/src/test/java/electrosphere/server/macro/civilization/town/TownLayoutTests.java new file mode 100644 index 00000000..3bfbeaa2 --- /dev/null +++ b/src/test/java/electrosphere/server/macro/civilization/town/TownLayoutTests.java @@ -0,0 +1,34 @@ +package electrosphere.server.macro.civilization.town; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +import org.joml.Vector3d; + +import electrosphere.engine.Globals; +import electrosphere.server.datacell.ServerWorldData; +import electrosphere.server.entity.ServerContentManager; +import electrosphere.server.macro.MacroData; +import electrosphere.test.annotations.UnitTest; + +/** + * Test creating towns + */ +public class TownLayoutTests { + + @UnitTest + public void test_generateWorld_1(){ + Globals.initGlobals(); + ServerWorldData worldData = ServerWorldData.createGenerationTestWorldData(); + MacroData macroData = MacroData.generateWorld(0, worldData); + Globals.serverState.realmManager.createGriddedRealm(worldData, ServerContentManager.createServerContentManager(false, macroData)); + Town town = Town.createTown(macroData, new Vector3d(1000,0,1000), 256, 0); + TownLayout.layoutTown(Globals.serverState.realmManager.first(), macroData, town); + + assertEquals(true, macroData.getStructures().size() > 50); + assertEquals(true, town.getStructures(macroData).size() > 50); + + Globals.unloadScene(); + Globals.resetGlobals(); + } + +}