import static org.junit.jupiter.api.Assertions.assertEquals;

import org.junit.jupiter.api.Test;

public class FourTest
{
    @Test
    public void testAgainstExamples()
    {
        GameBoard gb = new GameBoard();
        gb.board = new Space[4][5];

        gb.board[0][0] = new Space("orange", 100);
        gb.board[0][1] = new Space("red", 100);
        gb.board[0][2] = new Space("blue", 500);
        gb.board[0][3] = new Space("green", 500);
        gb.board[0][4] = new Space("red", 100);

        gb.board[1][0] = new Space("red", 300);
        gb.board[1][1] = new Space("blue", 200);
        gb.board[1][2] = new Space("blue", 400);
        gb.board[1][3] = new Space("red", 100);
        gb.board[1][4] = new Space("green", 100);

        gb.board[2][0] = new Space("red", 200);
        gb.board[2][1] = new Space("red", 300);
        gb.board[2][2] = new Space("red", 100);
        gb.board[2][3] = new Space("red", 200);
        gb.board[2][4] = new Space("red", 200);

        gb.board[3][0] = new Space("green", 100);
        gb.board[3][1] = new Space("blue", 100);
        gb.board[3][2] = new Space("blue", 200);
        gb.board[3][3] = new Space("blue", 100);
        gb.board[3][4] = new Space("blue", 200);

        assertEquals(1300, gb.getPointsForRow(0));
        assertEquals(2000, gb.getPointsForRow(2));
    }

    @Test
    public void testOtherRows()
    {
        GameBoard gb = new GameBoard();
        gb.board = new Space[4][5];

        gb.board[0][0] = new Space("orange", 100);
        gb.board[0][1] = new Space("red", 100);
        gb.board[0][2] = new Space("blue", 500);
        gb.board[0][3] = new Space("green", 500);
        gb.board[0][4] = new Space("red", 100);

        gb.board[1][0] = new Space("red", 300);
        gb.board[1][1] = new Space("blue", 200);
        gb.board[1][2] = new Space("blue", 400);
        gb.board[1][3] = new Space("red", 100);
        gb.board[1][4] = new Space("green", 100);

        gb.board[2][0] = new Space("red", 200);
        gb.board[2][1] = new Space("red", 300);
        gb.board[2][2] = new Space("red", 100);
        gb.board[2][3] = new Space("red", 200);
        gb.board[2][4] = new Space("red", 200);

        gb.board[3][0] = new Space("green", 100);
        gb.board[3][1] = new Space("blue", 100);
        gb.board[3][2] = new Space("blue", 200);
        gb.board[3][3] = new Space("blue", 100);
        gb.board[3][4] = new Space("blue", 200);

        assertEquals(1100, gb.getPointsForRow(1));
        assertEquals(700, gb.getPointsForRow(3));
    }
}
