diff --git a/src/test/java/model/RandomTileSetGeneratorTest.java b/src/test/java/model/RandomTileSetGeneratorTest.java
new file mode 100644
index 0000000000000000000000000000000000000000..40fc91e39d010eee253491883a8cd9a767f5b06b
--- /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);
+  }
+}