aboutsummaryrefslogtreecommitdiff
path: root/src/test/java/de
diff options
context:
space:
mode:
authorKevinthegreat <92656833+kevinthegreat1@users.noreply.github.com>2024-02-02 16:40:24 -0500
committerKevinthegreat <92656833+kevinthegreat1@users.noreply.github.com>2024-02-19 13:50:54 -0500
commitca61d618df013434bce4fb6995bc40aec4dc07dc (patch)
tree5779ccd73906683d2db4e2eb46c4fe4857290d73 /src/test/java/de
parent443753ad8ed3e9e98e70881a733003a9b6386499 (diff)
downloadSkyblocker-ca61d618df013434bce4fb6995bc40aec4dc07dc.tar.gz
Skyblocker-ca61d618df013434bce4fb6995bc40aec4dc07dc.tar.bz2
Skyblocker-ca61d618df013434bce4fb6995bc40aec4dc07dc.zip
Finish silverfish and ice fill solvers
Diffstat (limited to 'src/test/java/de')
-rw-r--r--src/test/java/de/hysky/skyblocker/skyblock/dungeon/puzzle/SilverfishTest.java40
1 files changed, 40 insertions, 0 deletions
diff --git a/src/test/java/de/hysky/skyblocker/skyblock/dungeon/puzzle/SilverfishTest.java b/src/test/java/de/hysky/skyblocker/skyblock/dungeon/puzzle/SilverfishTest.java
new file mode 100644
index 00000000..cc6178e1
--- /dev/null
+++ b/src/test/java/de/hysky/skyblocker/skyblock/dungeon/puzzle/SilverfishTest.java
@@ -0,0 +1,40 @@
+package de.hysky.skyblocker.skyblock.dungeon.puzzle;
+
+import org.joml.Vector2i;
+import org.junit.jupiter.api.Assertions;
+import org.junit.jupiter.api.Test;
+
+import java.util.List;
+
+public class SilverfishTest {
+ private static final boolean[][] silverfishBoard = new boolean[][]{
+ {false, false, false, false, false, true, false, false, false, false, false, false, false, false, false, false, false},
+ {false, true, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false},
+ {false, false, false, false, true, false, false, false, false, false, false, false, true, false, false, false, false},
+ {true, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, true},
+ {false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false},
+ {false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false},
+ {false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false},
+ {false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false},
+ {false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false},
+ {false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, true, false},
+ {false, true, false, false, false, false, false, false, false, false, true, false, false, false, false, true, false},
+ {false, false, true, false, false, false, false, false, false, false, false, true, false, false, false, false, false},
+ {false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false},
+ {false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false},
+ {false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false},
+ {false, false, false, false, false, false, true, false, false, false, true, false, false, false, false, false, false},
+ {false, false, true, false, false, false, false, false, false, false, false, false, false, true, false, false, false}
+ };
+
+ @Test
+ void testSilverfishSolve() {
+ for (int i = 0; i < silverfishBoard.length; i++) {
+ System.arraycopy(silverfishBoard[i], 0, Silverfish.INSTANCE.silverfishBoard[i], 0, silverfishBoard[i].length);
+ }
+ Silverfish.INSTANCE.silverfishPos = new Vector2i(15, 15);
+ Silverfish.INSTANCE.solve();
+ List<Vector2i> expectedSilverfishPath = List.of(new Vector2i(15, 15), new Vector2i(15, 11), new Vector2i(16, 11), new Vector2i(16, 3), new Vector2i(0, 3), new Vector2i(0, 4), new Vector2i(1, 4), new Vector2i(1, 2), new Vector2i(10, 2), new Vector2i(10, 9), new Vector2i(0, 9));
+ Assertions.assertEquals(expectedSilverfishPath, Silverfish.INSTANCE.silverfishPath);
+ }
+}