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");
        }
        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);
        }