public GameTest() { _displayParser = DisplayParser <int, char> .Create(((c) => c == '*' ? 1 : 0, (state) => state == 1 ? '*' : '_')); var lines = new[] { "_____", "__*__", "_***_", "__*__", "_____" }; _lines = lines.Select(s => s.ToCharArray()).ToArray(); var boardFactoryMock = new Mock <IBoardFactory>(); var board = new Board(_displayParser.ParseDisplayGrid(_lines)); boardFactoryMock.Setup(bf => bf.Create(It.IsAny <char[][]>())).Returns(board); boardFactoryMock.Setup(bf => bf.Create(It.IsAny <int>(), It.IsAny <int>())).Returns(board); _boardFactory = boardFactoryMock.Object; }
/// <summary> /// Create Game Board from display input /// </summary> /// <param name="displayValues"></param> /// <returns></returns> public IBoard Create(char[][] displayValues) { return(_componentContext .Resolve <Board>(new TypedParameter(typeof(int[][]), _parser.ParseDisplayGrid(displayValues)))); }
public void CreateBoardTest() { var board = new Board(_displayParser.ParseDisplayGrid(_lines)); Assert.Equal(5, board[1, 2] + board[2, 1] + board[2, 2] + board[2, 3] + board[3, 2]); }