Example #1
0
        public void DaniarSobreNaveDestruidaDeberiaArrojarExcepcion()
        {
            var posicion = new Posicion('e', 5);
            var mockNave = new MockNave(1, posicion, Direccion.Norte);

            mockNave.DaniarConDisparoConvencional(posicion);

            mockNave.DaniarConDisparoConvencional(posicion);
        }
Example #2
0
        public void NoDeberiaDevolverPartesDestruidasDeLasPuntasAlDevolverPosicionesDePartesSanas()
        {
            var posicionInicial = new Posicion('d', 5);

            var mockNave = new MockNave(3, posicionInicial, Direccion.Este);

            mockNave.DaniarConDisparoConvencional(new Posicion('d', 5));

            Assert.AreEqual(2, mockNave.PosicionesDePartesSanas.Count());
            Assert.IsTrue(mockNave.PosicionesDePartesSanas.Any(po => po.Equals(new Posicion('e', 5))));
            Assert.IsTrue(mockNave.PosicionesDePartesSanas.Any(po => po.Equals(new Posicion('f', 5))));

            mockNave.DaniarConDisparoConvencional(new Posicion('f', 5));

            Assert.AreEqual(1, mockNave.PosicionesDePartesSanas.Count());
            Assert.IsTrue(mockNave.PosicionesDePartesSanas.Any(po => po.Equals(new Posicion('e', 5))));
        }
Example #3
0
        public void DisparoDeberiaDaniarNave()
        {
            var posicion = new Posicion('e', 5);
            var mockNave = new MockNave(3, posicion, Direccion.Norte);

            Assert.AreEqual(3, mockNave.PosicionesDePartesSanas.Count());
            Assert.AreEqual(0, mockNave.PosicionesDePartesDestruidas.Count());

            mockNave.DaniarConDisparoConvencional(posicion);

            Assert.AreEqual(2, mockNave.PosicionesDePartesSanas.Count());
            Assert.AreEqual(1, mockNave.PosicionesDePartesDestruidas.Count());
            Assert.IsTrue(mockNave.PosicionesDePartesDestruidas.ElementAt(0).Equals(posicion));
        }