public void ShouldReturn5Values() { Dice sut = new DiceImplemented(new DieImplemented(), new DieImplemented(), new DieImplemented(), new DieImplemented(), new DieImplemented()); var actual = sut.GetValues().Count; var expected = 5; Assert.Equal(expected, actual); }
public void ShouldKeepSpecifiedDie() { var mockDie = new Mock <Die>(); var stubDie = new Mock <Die>(); var dice = new DiceImplemented(mockDie.Object, stubDie.Object, stubDie.Object, stubDie.Object, stubDie.Object); var sut = new Game(new AllAvailableCategoriesStrategy(), dice); sut.KeepDie(DiceList.Die1); sut.Throw(); mockDie.Verify(die => die.Throw(), Times.Never); }
public void ShouldKeepFirstDie() { var die1 = new Mock <Die>(); var die2 = new Mock <Die>(); Dice sut = new DiceImplemented(die1.Object, die2.Object, die2.Object, die2.Object, die2.Object); sut.KeepDie(DiceList.Die1); sut.Throw(); die1.Verify(die => die.Throw(), Times.Never()); die2.Verify(die => die.Throw(), Times.AtLeastOnce()); }
public void ShouldKeepMultipleDice() { var keep1 = new Mock <Die>(); var keep2 = new Mock <Die>(); var die = new Mock <Die>(); Dice sut = new DiceImplemented(keep1.Object, die.Object, keep2.Object, die.Object, die.Object); sut.KeepDie(DiceList.Die1); sut.KeepDie(DiceList.Die3); sut.Throw(); keep1.Verify(d => d.Throw(), Times.Never()); keep2.Verify(d => d.Throw(), Times.Never()); die.Verify(d => d.Throw(), Times.AtLeastOnce()); }
public void ShouldNotBeEffectedOfKeepingDieMultipleTimes() { var die = new Mock <Die>(); var keep = new Mock <Die>(); Dice sut = new DiceImplemented(die.Object, die.Object, keep.Object, die.Object, die.Object); sut.KeepDie(DiceList.Die3); sut.KeepDie(DiceList.Die3); sut.KeepDie(DiceList.Die3); sut.KeepDie(DiceList.Die3); sut.Throw(); keep.Verify(d => d.Throw(), Times.Never()); die.Verify(d => d.Throw(), Times.Once()); }
public void ShouldThrowAllDice() { var die1 = new Mock <Die>(); var die2 = new Mock <Die>(); var die3 = new Mock <Die>(); var die4 = new Mock <Die>(); var die5 = new Mock <Die>(); Dice sut = new DiceImplemented(die1.Object, die2.Object, die3.Object, die4.Object, die5.Object); sut.Throw(); die1.Verify(die => die.Throw(), Times.Once()); die2.Verify(die => die.Throw(), Times.Once()); die3.Verify(die => die.Throw(), Times.Once()); die4.Verify(die => die.Throw(), Times.Once()); die5.Verify(die => die.Throw(), Times.Once()); }
public void NewMainController() { var player = new Player(); var category = new AllAvailableCategoriesStrategy(); var die1 = new DieImplemented(); var die2 = new DieImplemented(); var die3 = new DieImplemented(); var die4 = new DieImplemented(); var die5 = new DieImplemented(); var dice = new DiceImplemented(die1, die2, die3, die4, die5); var diceView = new DiceView(dice); var view = new EnglishMainView(diceView); var game = new Game(category, dice); var controller = new MainController(view, player, game); Assert.IsType <MainController>(controller); }
public void ShouldGetValuesFromDice() { var die1 = new Mock <Die>(); var die2 = new Mock <Die>(); var die3 = new Mock <Die>(); var die4 = new Mock <Die>(); var die5 = new Mock <Die>(); die1.Setup(die => die.GetValue()).Returns(5); die2.Setup(die => die.GetValue()).Returns(5); die3.Setup(die => die.GetValue()).Returns(5); die4.Setup(die => die.GetValue()).Returns(5); die5.Setup(die => die.GetValue()).Returns(5); Dice sut = new DiceImplemented(die1.Object, die2.Object, die3.Object, die4.Object, die5.Object); var actual = sut.GetValues().Sum(); var expected = 25; Assert.Equal(expected, actual); }