package ch.zhaw.catan; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Nested; import org.junit.jupiter.api.Test; import java.awt.*; import java.util.Arrays; import java.util.List; import static org.junit.jupiter.api.Assertions.assertEquals; public class SiedlerBoardTest { /** * To Test getLongestRoad in SiedlerBoard */ @Nested class LongestRoadTest { List factionList = Arrays.asList(Config.Faction.values()); SiedlerBoard board = new SiedlerBoard(); @BeforeEach public void buildLongestRoad(){ board.createFixGameField(); board.setEdge(new Point(6, 6), new Point(5, 7), new Road(Config.Faction.BLUE, new Point(6, 6), new Point(5, 7))); board.setEdge(new Point(4, 6), new Point(5, 7), new Road(Config.Faction.BLUE, new Point(4, 6), new Point(5, 7))); board.setEdge(new Point(4, 6), new Point(4, 4), new Road(Config.Faction.BLUE, new Point(4, 6), new Point(4, 4))); board.setEdge(new Point(4, 6), new Point(3, 7), new Road(Config.Faction.BLUE, new Point(4, 6), new Point(3, 7))); board.setEdge(new Point(3, 7), new Point(3, 9), new Road(Config.Faction.BLUE, new Point(3, 7), new Point(3, 9))); board.setEdge(new Point(3, 9), new Point(4, 10), new Road(Config.Faction.BLUE, new Point(3, 9), new Point(4, 10))); board.setEdge(new Point(4, 10), new Point(5, 9), new Road(Config.Faction.BLUE, new Point(4, 10), new Point(5, 9))); board.setCorner(new Point(3, 7), new Settlement(Config.Faction.BLUE, new Point(3, 7))); } @Test public void testLongestRoadSimple() { System.out.println(board.getTextView()); assertEquals(Config.Faction.BLUE, board.getLongestRoadFaction(factionList)); assertEquals(6, board.getLongestRoadLength()); } @Test public void testLongestRoadWithInterrupt() { board.setCorner(new Point(4, 10), new Settlement(Config.Faction.RED, new Point(4, 10))); System.out.println(board.getTextView()); assertEquals(Config.Faction.BLUE, board.getLongestRoadFaction(factionList)); assertEquals(5, board.getLongestRoadLength()); } } }