public void createAllMonstercards() { ICard card1 = new Dragon(100); ICard card2 = new FireElf(60); ICard card3 = new WaterGoblin(40); ICard card4 = new Knight(80); ICard card5 = new Kraken(80); ICard card6 = new Ork(70); ICard card7 = new Wizard(90); Cardname desiredName1 = Cardname.Dragon; Cardname desiredName2 = Cardname.FireElf; Cardname desiredName3 = Cardname.WaterGoblin; Cardname desiredName4 = Cardname.Knight; Cardname desiredName5 = Cardname.Kraken; Cardname desiredName6 = Cardname.Ork; Cardname desiredName7 = Cardname.Wizard; Assert.AreEqual(desiredName1, card1.name); Assert.AreEqual(desiredName2, card2.name); Assert.AreEqual(desiredName3, card3.name); Assert.AreEqual(desiredName4, card4.name); Assert.AreEqual(desiredName5, card5.name); Assert.AreEqual(desiredName6, card6.name); Assert.AreEqual(desiredName7, card7.name); }
public void TestFireElvesVsDragons() { //The FireElves know Dragons since they were little and can evade their attacks. => FireElves always win vs Dragons Card dragon = new Dragon(); Card elve = new FireElf(); Assert.IsTrue(elve.Attack(dragon)); Assert.IsFalse(dragon.Attack(elve)); }
public void Test_FireElveShouldNotEvadeNonDragonAttack() { //arrange Card fireElve = new FireElf("Tentakel", 50, ElementType.Normal); Card nonDragon = new FireSpell("Fireball", 20); //act bool hasEvaded = ((FireElf)fireElve).TryEvadeAttack(nonDragon); //assert Assert.IsFalse(hasEvaded); }
public void Test_FireElveShouldEvadeDragonAttack() { //arrange Card fireElve = new FireElf("Tentakel", 50, ElementType.Normal); Card dragon = new Dragon("Fire Dragon", 20, ElementType.Fire); //act bool hasEvaded = ((FireElf)fireElve).TryEvadeAttack(dragon); //assert Assert.IsTrue(hasEvaded); }
public void FireElf_Dragon() { ICard card1 = new FireElf(60); ICard card2 = new Dragon(100); float desiredCard1Damage = 60; float desiredCard2Damage = 0; float actualCard1Damage = card1.CombatBehavior(card2); float actualCard2Damage = card2.CombatBehavior(card1); Assert.AreEqual(desiredCard1Damage, actualCard1Damage); Assert.AreEqual(desiredCard2Damage, actualCard2Damage); }
public void TestPureMonsterFightFireElfDragon() { var elf = new FireElf() { Damage = 20 }; var dragon = new Dragon() { Damage = 20 }; int elfDamage = elf.CalculateDamage(dragon); int dragonDamage = dragon.CalculateDamage(elf); // no element type effectiveness applies // fire elves evade dragon attacks Assert.AreEqual(20, elfDamage); Assert.AreEqual(0, dragonDamage); }