public void DaniarSobreNaveDestruidaDeberiaArrojarExcepcion() { var posicion = new Posicion('e', 5); var mockNave = new MockNave(1, posicion, Direccion.Norte); mockNave.DaniarConDisparoConvencional(posicion); mockNave.DaniarConDisparoConvencional(posicion); }
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)))); }
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)); }