diff --git a/src/main/java/Figure.java b/src/main/java/Figure.java new file mode 100644 index 0000000..8cf72b9 --- /dev/null +++ b/src/main/java/Figure.java @@ -0,0 +1,9 @@ +public class Figure { + + int position; + + public Figure() { + this.position = -1; + } + +} diff --git a/src/main/java/Game.java b/src/main/java/Game.java new file mode 100644 index 0000000..da68c76 --- /dev/null +++ b/src/main/java/Game.java @@ -0,0 +1,22 @@ +public class Game { + + Gameboard gb; + Player p1; + Player p2; + Player p3; + Player p4; + + public static void main(String[] args) { + Game g = new Game(); + g.startGame(); + } + + public void startGame() { + this.gb = new Gameboard(); + gb.initGameboard(); + p1 = new Player("Rot"); + p2 = new Player("Blau"); + p3 = new Player("Gelb"); + p4 = new Player("Grün"); + } +} diff --git a/src/main/java/Player.java b/src/main/java/Player.java new file mode 100644 index 0000000..5e5d9a9 --- /dev/null +++ b/src/main/java/Player.java @@ -0,0 +1,25 @@ +import javax.sound.midi.Soundbank; +import java.util.Arrays; + +public class Player { + + String name; + Figure[] figures; + + public Player (String name) { + this.name = name; + figures = new Figure[4]; + for(int i = 0; i < 4; i++) { + this.figures[i] = new Figure(); + } + } + + @Override + public String toString() { + return name; + } + + public int rollDice() { + return (int) (Math.random() * 6 + 1); + } +} diff --git a/src/test/java/GameTest.java b/src/test/java/GameTest.java new file mode 100644 index 0000000..122fbe6 --- /dev/null +++ b/src/test/java/GameTest.java @@ -0,0 +1,27 @@ +import static org.assertj.core.api.Assertions.*; + +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.params.ParameterizedTest; +import org.junit.jupiter.params.provider.Arguments; +import org.junit.jupiter.params.provider.MethodSource; + +public class GameTest { + + private Gameboard gb; + private Player p1; + private Player p2; + private Player p3; + private Player p4; + + @BeforeEach + void setup() { + this.gb = new Gameboard(); + gb.initGameboard(); + p1 = new Player("Rot"); + p2 = new Player("Blau"); + p3 = new Player("Gelb"); + p4 = new Player("Grün"); + } + +} diff --git a/src/test/java/PlayerTest.java b/src/test/java/PlayerTest.java new file mode 100644 index 0000000..5000e0b --- /dev/null +++ b/src/test/java/PlayerTest.java @@ -0,0 +1,46 @@ +import static org.assertj.core.api.Assertions.*; + +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.DisplayName; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.params.ParameterizedTest; +import org.junit.jupiter.params.provider.Arguments; +import org.junit.jupiter.params.provider.MethodSource; + +public class PlayerTest { + + private Player p; + + @BeforeEach + void setup() { + p = new Player("Rot"); + } + + @Test + void testDice() { + int calculatedResult = p.rollDice(); + assertThat(calculatedResult).describedAs("Dice result").isBetween(1,6); + } + + @Test + void testToString() { + String expectedResult = "Rot"; + String calculatedResult = p.toString(); + assertThat(calculatedResult).describedAs("Player Name").isEqualTo(expectedResult); + } + + @Test + void checkStartPositionOfFigures() { + int expectedResult = -1; + int calculatedResult = p.figures[0].position; + for(int i = 0; i < 4; i++) { + calculatedResult = p.figures[i].position; + if(expectedResult != calculatedResult) { + calculatedResult = 1; + break; + } + } + assertThat(calculatedResult).describedAs("Starting postion of Figures").isEqualTo(expectedResult); + } + +}