public void Test_CheckIfDamageHandlerDestroysCell() { var cell = new EmptyCell(new Position(0, 0)); cell.TakeDamage(new DefaultDamageHandler()); Assert.IsTrue(cell.IsDestroyed); }
public void Test_CheckIfDamageHandlerDestroysMine() { var cell = new EmptyCell(new Position(0, 0)); var mine = new GiantMine(cell); mine.TakeDamage(new DefaultDamageHandler()); Assert.IsTrue(mine.IsDestroyed); }
public void Test_CheckIfDamageHandlerDamagesEmptyCell() { var mockDamageHandler = new Mock<ICellDamageHandler>(); var cell = new EmptyCell(new Position(0, 0)); cell.TakeDamage(mockDamageHandler.Object); mockDamageHandler.Verify(x => x.Damage(cell), Times.Once()); }
public void Test_MineFactoryShouldReturnTinyMine() { var mockedGenerator = new Mock<IRandomGenerator>(); mockedGenerator.Setup(x => x.GetRandomBetween(It.IsAny<int>(), It.IsAny<int>())).Returns(0); var randomMineFactory = new RandomMineFactory(mockedGenerator.Object); var cell = new EmptyCell(new Position(0, 0)); var mine = randomMineFactory.Create(cell); Assert.IsInstanceOf<TinyMine>(mine, "Returned mine is not the right type"); }
/// <summary> /// Damages a cell. /// </summary> /// <param name="cell">The cell to be damaged.</param> public void Damage(EmptyCell cell) { cell.IsDestroyed = true; }
public void Test_MineFactoryShouldThrowIndexOutOfRangeExceptionWithInvalidMineIndex() { var mockedGenerator = new Mock<IRandomGenerator>(); mockedGenerator.Setup(x => x.GetRandomBetween(It.IsAny<int>(), It.IsAny<int>())).Returns(5); var randomMineFactory = new RandomMineFactory(mockedGenerator.Object); var cell = new EmptyCell(new Position(0, 0)); var mine = randomMineFactory.Create(cell); }