public void TestBombitaColocaUnaBombaMolotov() { bombita = Bombita.GetInstancia(); Casilla posicion = Tablero.GetInstancia().Casilla(1, 1); bombita.PosicionarEn(posicion); // asserts Assert.IsTrue(posicion.TienePersonaje()); Assert.IsFalse(posicion.TieneBomba()); bombita.LanzarExplosivo(); // asserts Assert.IsTrue(posicion.TienePersonaje()); Assert.IsTrue(posicion.TieneBomba()); // comprueba que en verdad bombita haya plantado una molotov (tiene rango 3 expansivo) Entidad bomba = posicion.GetEntidades()[1]; // asserts Assert.AreEqual(((Bomba)bomba).GetRango(), 3); // limpia el tablero Tablero.Vaciar(); }
public void TestIntentarQueBombitaLanceBombasSinEsperarQueLaAnteriorHayaExplotadoNoTieneEfecto() { Casilla posicion = Tablero.GetInstancia().Casilla(1, 1); bombita = Bombita.GetInstancia(); bombita.PosicionarEn(posicion); // en principio en la posicion d ebombita, no hay bombas // asserts Assert.IsFalse(posicion.TieneBomba()); Assert.AreEqual(posicion.CantidadDeEntidades(), 1); // bombita lanza su primera bomba bombita.LanzarExplosivo(); // asserts Assert.IsTrue(posicion.TieneBomba()); Assert.AreEqual(posicion.CantidadDeEntidades(), 2); // pero ahora cuando intenta lanzar la segunda, la tercera y la cuarta, // no puede hacerlo ya que la primera colocada, aun no exploto bombita.LanzarExplosivo(); bombita.LanzarExplosivo(); bombita.LanzarExplosivo(); // asserts Assert.IsTrue(posicion.TieneBomba()); Assert.AreEqual(posicion.CantidadDeEntidades(), 2); // limpia el tablero Tablero.Vaciar(); }