public void GiveMatchTilesAddedToRemoveTile_WhenExecute_ThenRemoveMatchTile() { MatchTile matchTile = new MatchTile(); matchTile.type = MatchTileType.MatchToken_A; matchTile.canMove = true; List <MatchTile> matchTiles = new List <MatchTile> (); matchTiles.Add(matchTile); RemoveTile removeTile = new RemoveTile(); removeTile.matchTiles = matchTiles; matchTileGridModel.CanMove(matchTile).Returns(true); removeMatchTilesCommand.removeTile = removeTile; removeMatchTilesCommand.Execute(); IEnumerator iEnum = removeMatchTilesCommand.enumerator; iEnum.MoveNext(); iEnum.MoveNext(); matchTileFactory.Received().RemoveMatchTile(matchTile); }
public void GivenMatchTilesDataLoadedTwoByTwoWithNoMatchTokenData_WhenExecute_ThenCreateFourRandomMatchTile() { MatchTilesData layout = ScriptableObject.CreateInstance <MatchTilesData> (); layout.matchTilesData = new List <MatchTileData> (); matchTileGridModel.matchTilesData.Returns(layout); matchTileGridModel.gridSize = new Vector2(2, 2); createMatchTileGridCommand.Execute(); matchTileFactory.Received(4).CreateRandomMatchTile(Arg.Any <Vector2> ()); }
public void GivenMatchTileSlotIsEmpty_WhenExecute_ThenCreateRandomMatchTile() { matchTileGridModel.gridSize = new Vector2(1, 1); // We can't set this as null directly, but using a lambda enables us to.. matchTileGridModel.GetMatchTile(new Vector2(0, 0)).Returns(a => null); createNewTileCommand.Execute(); IEnumerator iEnum = createNewTileCommand.enumerator; iEnum.MoveNext(); iEnum.MoveNext(); matchTileFactory.Received().CreateRandomMatchTile(Arg.Any <Vector2> ()); }