public void SaveStateTest() { //Arrange var playerState = new PlayerState(new RobotStub(null), new GameHistory()); var playerStateService = new PlayerStateService(playerState); //Act playerStateService.SaveState(); //Assert Assert.NotEmpty(playerState.History.History); Assert.Equal(playerState.GameRobot.BatteryCharge, playerState.History.History.Peek().BatteryCharge); }
public void ReduceBatteryChargeTest(int charge) { //Arrange var playerState = new PlayerState(new RobotStub(null), null); var playerStateService = new PlayerStateService(playerState); //Act var expected = playerStateService.GetBatteryCharge() - charge; playerStateService.reduceBatteryCharge(charge); var result = playerStateService.GetBatteryCharge(); //Assert Assert.Equal(expected, result); }
public void RestoreStateTest() { //Arrange var gameHistory = new GameHistory(); gameHistory.History.Push(new RobotMemento(100)); var playerState = new PlayerState(new RobotStub(null), gameHistory); var playerStateService = new PlayerStateService(playerState); //Act playerStateService.RestoreState(); var result = playerStateService.GetBatteryCharge(); //Assert Assert.Equal(100, result); }
private void PopulateDependencies(EconomyController economyController, PlayerStateService playerStateService) { this._economyController = economyController; this._playerStateService = playerStateService; this._economyController.OnMoneyChanged += () => { if (this._workerMoneyLabelReference != null) { this._workerMoneyLabelReference.element.text = this._economyController.Money.ToString("0.00"); } if (this._moneyUpgradeButtonReference == null) { return; } if (this._economyController.CanUpgradePercentageSkill()) { return; } this._moneyUpgradeButtonReference.element.SetAttribute("color", "red"); this._moneyUpgradeButtonReference.element.ApplyAttributes(); }; }
public WorkerController(PlayerStateService playerStateService) { this._playerStateService = playerStateService; }