public void ClearRows() { var board = new TetrisBoard(new Vec2i(3, 10)); board.Cells = new TetrisCell[10][] { new TetrisCell[3] { TetrisCell.Z, TetrisCell.Z, 0 }, new TetrisCell[3] { TetrisCell.J, TetrisCell.Z, TetrisCell.Z }, new TetrisCell[3] { TetrisCell.J, TetrisCell.J, TetrisCell.J }, new TetrisCell[3] { TetrisCell.L, TetrisCell.L, TetrisCell.L }, new TetrisCell[3] { TetrisCell.L, 0, TetrisCell.Z }, new TetrisCell[3] { 0, TetrisCell.Z, TetrisCell.Z }, new TetrisCell[3] { TetrisCell.J, TetrisCell.Z, 0 }, new TetrisCell[3] { TetrisCell.J, TetrisCell.J, TetrisCell.J }, new TetrisCell[3] { TetrisCell.T, TetrisCell.T, TetrisCell.T }, new TetrisCell[3] { 0, TetrisCell.T, 0 }, }; var expectedBoard = new TetrisCell[10][] { new TetrisCell[3] { 0, 0, 0 }, new TetrisCell[3] { 0, 0, 0 }, new TetrisCell[3] { 0, 0, 0 }, new TetrisCell[3] { 0, 0, 0 }, new TetrisCell[3] { 0, 0, 0 }, new TetrisCell[3] { TetrisCell.Z, TetrisCell.Z, 0 }, new TetrisCell[3] { TetrisCell.L, 0, TetrisCell.Z }, new TetrisCell[3] { 0, TetrisCell.Z, TetrisCell.Z }, new TetrisCell[3] { TetrisCell.J, TetrisCell.Z, 0 }, new TetrisCell[3] { 0, TetrisCell.T, 0 }, }; var fullRows = board.FindFullLines(); var expectedFullRows = new int[] { 1, 2, 3, 7, 8 }; Assert.Equal(expectedFullRows, fullRows); board.ClearFullLines(); Assert.Equal(expectedBoard, board.Cells); }