diff --git a/fh.fd.ci.server/src/main/java/de/fd/fh/server/game/GameService.java b/fh.fd.ci.server/src/main/java/de/fd/fh/server/game/GameService.java index f8517c3..86d36dd 100644 --- a/fh.fd.ci.server/src/main/java/de/fd/fh/server/game/GameService.java +++ b/fh.fd.ci.server/src/main/java/de/fd/fh/server/game/GameService.java @@ -32,9 +32,14 @@ public class GameService { for (int y = 0; y < 8; y++) { - fields.add(new Field(x, y, null , null)); + fields.add(new Field(x, y, getColor(x, y) , null)); } } return fields; } + + private Field.Color getColor(final int x, final int y) + { + return (x + y) % 2 != 1 ? Field.Color.WHITE : Field.Color.BLACK; + } } diff --git a/fh.fd.ci.server/src/test/java/de/fd/fh/server/game/GameServiceTest.java b/fh.fd.ci.server/src/test/java/de/fd/fh/server/game/GameServiceTest.java index 0d0c5b5..8cfd9b7 100644 --- a/fh.fd.ci.server/src/test/java/de/fd/fh/server/game/GameServiceTest.java +++ b/fh.fd.ci.server/src/test/java/de/fd/fh/server/game/GameServiceTest.java @@ -5,6 +5,8 @@ import dev.morphia.Key; import org.junit.jupiter.api.Test; import org.mockito.ArgumentCaptor; +import java.util.Set; + import static org.junit.jupiter.api.Assertions.*; import static org.mockito.ArgumentMatchers.any; import static org.mockito.BDDMockito.then; @@ -54,6 +56,15 @@ class GameServiceTest assertEquals("98765", savedGame.getCurrentPlayer().getIdentifier()); assertEquals(64, savedGame.getFields().size()); + final Set fields = savedGame.getFields(); + + fields.forEach(field -> { + + final Field.Color expected = (field.getX() + field.getY()) % 2 != 1 ? Field.Color.WHITE : Field.Color.BLACK; + + assertEquals(expected, field.getColor()); + }); + then(repository).should().save(any(Game.class)); then(repository).shouldHaveNoMoreInteractions(); }