public LocalGameControllerCreator() { this.playerPool = new PlayerFactory(); this.dice = new Dice(); this.gameBoard = new GameBoard(BoardSizes.Standard); this.developmentCardHolder = new DevelopmentCardHolder(); }
private TestInstances TestSetup(IDevelopmentCardHolder developmentCardHolder) { var testInstances = LocalGameControllerTestCreator.CreateTestInstances(developmentCardHolder); LocalGameControllerTestSetup.LaunchGameAndCompleteSetup(testInstances.LocalGameController); testInstances.Dice.AddSequence(new[] { 8u }); return(testInstances); }
public ScenarioGameManager( INumberGenerator numberGenerator, GameBoard gameBoard, IDevelopmentCardHolder developmentCardHolder, IPlayerFactory playerFactory, IEventSender eventSender, GameOptions gameOptions) : base(numberGenerator, gameBoard, developmentCardHolder, playerFactory, eventSender, gameOptions) { }
private LocalGameControllerTestCreator.TestInstances TestSetup(IDevelopmentCardHolder developmentCardHolder, GameBoard gameBoard) { var testInstances = LocalGameControllerTestCreator.CreateTestInstances(null, null, developmentCardHolder, gameBoard); testInstances.Dice.AddSequence(new[] { 8u }); LocalGameControllerTestSetup.LaunchGameAndCompleteSetup(testInstances.LocalGameController); this.LoadPlayersByIdForCustomAsserts(testInstances.MainPlayer, testInstances.FirstOpponent, testInstances.SecondOpponent, testInstances.ThirdOpponent); return(testInstances); }
public LocalGameControllerCreator ChangeDevelopmentCardHolder(IDevelopmentCardHolder developmentCardHolder) { this.developmentCardHolder = developmentCardHolder; return(this); }
private LocalGameControllerTestCreator.TestInstances TestSetupWithExplicitDevelopmentCardHolder(IDevelopmentCardHolder developmentCardHolder) { var testInstances = LocalGameControllerTestCreator.CreateTestInstances(developmentCardHolder); LocalGameControllerTestSetup.LaunchGameAndCompleteSetup(testInstances.LocalGameController); testInstances.Dice.AddSequence(new[] { 8u }); // First turn roll i.e. no robber triggered return(testInstances); }
public static TestInstances CreateTestInstances(MockDice mockNumGenerator, PlayerSetup playerSetup, IDevelopmentCardHolder developmentCardHolder, GameBoard gameBoard) { MockDice mockNumberGenerator = null; if (mockNumGenerator != null) { mockNumberGenerator = mockNumGenerator; } else { mockNumberGenerator = LocalGameControllerTestCreator.CreateMockNumberGenerator(); } MockPlayer player; MockComputerPlayer firstOpponent, secondOpponent, thirdOpponent; IPlayerFactory playerPool = null; if (playerSetup != null) { player = playerSetup.Player; firstOpponent = playerSetup.FirstOpponent; secondOpponent = playerSetup.SecondOpponent; thirdOpponent = playerSetup.ThirdOpponent; playerPool = playerSetup.PlayerPool; } else { LocalGameControllerTestCreator.CreateDefaultPlayerInstances(out player, out firstOpponent, out secondOpponent, out thirdOpponent); playerPool = LocalGameControllerTestCreator.CreateMockPlayerPool(player, firstOpponent, secondOpponent, thirdOpponent); } if (developmentCardHolder == null) { developmentCardHolder = new DevelopmentCardHolder(); } if (gameBoard == null) { gameBoard = new GameBoard(BoardSizes.Standard); } var localGameController = new LocalGameController(mockNumberGenerator, playerPool, gameBoard, developmentCardHolder); localGameController.ErrorRaisedEvent = (ErrorDetails e) => { throw new Exception(e.Message); }; var testInstances = new TestInstances(localGameController, player, firstOpponent, secondOpponent, thirdOpponent, mockNumberGenerator); return(testInstances); }
public static TestInstances CreateTestInstances(IDevelopmentCardHolder developmentCardHolder) { return(LocalGameControllerTestCreator.CreateTestInstances(null, null, developmentCardHolder, null)); }
protected LocalGameController CreateLocalGameController(INumberGenerator dice, IPlayerFactory playerPool, IDevelopmentCardHolder developmentCardHolder) { var localGameControllerCreator = new LocalGameControllerCreator(); if (dice != null) { localGameControllerCreator.ChangeDice(dice); } if (playerPool != null) { localGameControllerCreator.ChangePlayerPool(playerPool); } if (developmentCardHolder != null) { localGameControllerCreator.ChangeDevelopmentCardHolder(developmentCardHolder); } var localGameController = localGameControllerCreator.Create(); localGameController.ErrorRaisedEvent = (ErrorDetails e) => { throw new Exception(e.Message); }; return(localGameController); }