public static IEnumerable <object[]> Can_detect_when_a_column_is_full_TestData() { return(new List <object[]> { new object[] { BoardGridHelper.CreateFourByFourBoard(), 1, false }, new object[] { BoardGridHelper.CreateFourByFourBoard(), 2, false }, new object[] { BoardGridHelper.CreateFourByFourBoard(), 3, true }, new object[] { BoardGridHelper.CreateFourByFourBoard(), 4, false }, }); }
public void Throws_ColumnDoesntExistFullException_when_trying_to_add_to_a_column_that_does_not_exist(int columnIndex) { var sut = BoardGridHelper.CreateFourByFourBoard(); var exception = Assert.Throws <ColumnDoesntExistException>( () => sut.DropValueIntoColumn(BoardSlotValue.P1, columnIndex) ); Assert.Equal(columnIndex, exception.ColumnIndex); }
public void Throws_ColumnIsFullException_when_trying_to_add_to_a_full_column() { var sut = BoardGridHelper.CreateFourByFourBoard(); var columnIndex = 3; var exception = Assert.Throws <ColumnIsFullException>( () => sut.DropValueIntoColumn(BoardSlotValue.P1, columnIndex) ); Assert.Equal(columnIndex, exception.ColumnIndex); }
public void Can_add_value_to_column(int columnIndex, int expectedSlotsFree) { var sut = BoardGridHelper.CreateFourByFourBoard(); var state = sut .DropValueIntoColumn(BoardSlotValue.P1, columnIndex) .State; var actualSlotsFree = state .Count(slot => slot.Position.Column == columnIndex && slot.Value == BoardSlotValue.Empty ); Assert.Equal(expectedSlotsFree, actualSlotsFree); }