@@ -0,0 +1,2027 @@
+package org.luxons.sevenwonders.game;%0A%0Aimport java.util.Collection;%0A%0Aimport org.junit.Test;%0Aimport org.luxons.sevenwonders.game.api.Action;%0Aimport org.luxons.sevenwonders.game.api.CustomizableSettings;%0Aimport org.luxons.sevenwonders.game.api.HandCard;%0Aimport org.luxons.sevenwonders.game.api.PlayerMove;%0Aimport org.luxons.sevenwonders.game.api.PlayerTurnInfo;%0Aimport org.luxons.sevenwonders.game.data.GameDefinitionLoader;%0Aimport org.luxons.sevenwonders.game.moves.MoveType;%0Aimport org.luxons.sevenwonders.game.test.TestUtils;%0A%0Aimport static org.junit.Assert.assertEquals;%0A%0Apublic class GameTest %7B%0A%0A    @Test%0A    public void test() %7B%0A        int nbPlayers = 5;%0A        Game game = createGame(nbPlayers);%0A        Collection%3CPlayerTurnInfo%3E turnInfos = game.getCurrentTurnInfo();%0A%0A        assertEquals(nbPlayers, turnInfos.size());%0A%0A        for (PlayerTurnInfo turnInfo : turnInfos) %7B%0A            Action action = turnInfo.getAction();%0A            assertEquals(Action.PLAY, action);%0A            assertEquals(1, turnInfo.getCurrentAge());%0A            assertEquals(7, turnInfo.getHand().size());%0A            PlayerMove move = getFirstAvailableMove(turnInfo);%0A            game.prepareCard(turnInfo.getPlayerIndex(), move);%0A        %7D%0A    %7D%0A%0A    private PlayerMove getFirstAvailableMove(PlayerTurnInfo turnInfo) %7B%0A        for (HandCard handCard : turnInfo.getHand()) %7B%0A            if (handCard.isPlayable()) %7B%0A                return createMove(handCard, MoveType.PLAY);%0A            %7D%0A        %7D%0A        return createMove(turnInfo.getHand().get(0), MoveType.DISCARD);%0A    %7D%0A%0A    private PlayerMove createMove(HandCard handCard, MoveType play) %7B%0A        PlayerMove move = new PlayerMove();%0A        move.setCardName(handCard.getCard().getName());%0A        move.setType(play);%0A        return move;%0A    %7D%0A%0A    private static Game createGame(int nbPlayers) %7B%0A        CustomizableSettings settings = TestUtils.createCustomizableSettings();%0A        return new GameDefinitionLoader().getGameDefinition().initGame(0, settings, nbPlayers);%0A    %7D%0A%7D%0A

Add first draft of Game test