public void WhenNotAllPiecesAreInCorretPlaceWinEventIsNotTriggered() { int maximumPiecesToPlace = 2; List <PiecePlaceInGrid> correctlyPositionedPieces = CreateCorrectPositionedPieceList(); WinEventController winEventController = CreateWinEventController(); WinController winController = CreateWinController(correctlyPositionedPieces, winEventController, maximumPiecesToPlace); PiecePlaceInGrid firstPiece = CreatePiecePlaceInGrid(); bool wasEventTriggered = false; winEventController.AddListener(() => wasEventTriggered = true); winController.AddCorrectlyPositionedPiece(firstPiece); Assert.IsFalse(wasEventTriggered); }
public void PieceIsAddedToWinController() { int piecePlaceInGrid = 2; (pieceDataSorter as StubPieceDataSorter).pieceData = new StubPieceData(piecePlaceInGrid); int maximumPiecesToPlace = 1; WinEventController winEventController = CreateWinEventController(); List <PiecePlaceInGrid> correctlyPositionedPieces = new List <PiecePlaceInGrid>(); WinController winController = CreateWinController(correctlyPositionedPieces, winEventController, maximumPiecesToPlace); EmptyState emptyState = CreateEmptyState(); PieceDestinationController movableSlot = CreateSlot(winController, 1, 0, 1); PieceDestinationController emptySlot = CreateSlot(winController, 2, 0, 2); bool wasEventTriggered = false; winEventController.AddListener(() => wasEventTriggered = true); emptyState.ReceivePiece(emptySlot, movableSlot); Assert.IsTrue(wasEventTriggered); }
public void Construct(int maximumPiecesToPlace, WinEventController winEventController) { correctlyPositionedPieces = new List <PiecePlaceInGrid>(); winController = new WinControllerImplementation(correctlyPositionedPieces, winEventController, maximumPiecesToPlace); }
private WinController CreateWinController(List <PiecePlaceInGrid> correctlyPositionedPieces, WinEventController winEventController, int maximumPiecesToPlace) { return(new WinControllerImplementation(correctlyPositionedPieces, winEventController, maximumPiecesToPlace)); }
public WinControllerImplementation(List <PiecePlaceInGrid> correctlyPositionedPieces, WinEventController winEventController, int maximumPiecesToPlace) { this.correctlyPositionedPieces = correctlyPositionedPieces; this.winEventController = winEventController; this.maximumPiecesToPlace = maximumPiecesToPlace; }
private WinController CreateWinController(List <PiecePlaceInGrid> correctlyPositionedPieces) { WinEventController winEventController = CreateWinEventController(); return(new WinControllerImplementation(correctlyPositionedPieces, winEventController, 2)); }