From f3679cc13b9b7bc19e098f5ddece54f1a06dd566 Mon Sep 17 00:00:00 2001
From: arnaudlabourel <arnaud.labourel@univ-amu.fr>
Date: Tue, 9 Nov 2021 10:45:15 +0100
Subject: [PATCH] Added tests for RandomTileSetGenerator

---
 .../model/RandomTileSetGeneratorTest.java     | 37 +++++++++++++++++++
 1 file changed, 37 insertions(+)
 create mode 100644 src/test/java/model/RandomTileSetGeneratorTest.java

diff --git a/src/test/java/model/RandomTileSetGeneratorTest.java b/src/test/java/model/RandomTileSetGeneratorTest.java
new file mode 100644
index 0000000..40fc91e
--- /dev/null
+++ b/src/test/java/model/RandomTileSetGeneratorTest.java
@@ -0,0 +1,37 @@
+package model;
+
+import javafx.scene.paint.Color;
+import org.junit.jupiter.api.Test;
+
+import java.util.List;
+import java.util.Random;
+
+import static org.assertj.core.api.Assertions.assertThat;
+
+public class RandomTileSetGeneratorTest {
+  @Test
+  void testNextTile(){
+    Side redSide = new ColoredSide(Color.RED);
+    Side blueSide = new ColoredSide(Color.BLUE);
+
+    Tile blueTile = new UniformTile(blueSide);
+    Tile redTile = new UniformTile(redSide);
+    Tile blueRedTile = new WangTile(new Side[]{redSide, redSide, blueSide, blueSide});
+
+    Square square = new ArraySquare();
+    Square northNeighbor = new ArraySquare();
+    Square westNeighbor = new ArraySquare();
+
+    northNeighbor.put(redTile);
+    westNeighbor.put(blueTile);
+
+    square.setNeighbor(northNeighbor, CardinalDirection.NORTH);
+    square.setNeighbor(westNeighbor, CardinalDirection.WEST);
+
+    TileGenerator tileGenerator = new RandomTileSetGenerator(List.of(redTile, blueTile, blueRedTile),
+            new Random(0));
+
+    for(int index = 0; index < 10; index++)
+      assertThat(tileGenerator.nextTile(square)).isEqualTo(blueRedTile);
+  }
+}
-- 
GitLab