Example #1
0
        public void TestPureMonsterFightDragonKraken()
        {
            var dragon = new Dragon()
            {
                Damage = 20
            };
            var kraken = new Kraken()
            {
                Damage = 20
            };

            int dragonDamage = dragon.CalculateDamage(kraken);
            int krakenDamage = kraken.CalculateDamage(dragon);

            // no element type effectiveness applies
            Assert.AreEqual(20, dragonDamage);
            Assert.AreEqual(20, krakenDamage);
        }
Example #2
0
        public void TestMixedFightKrakenWaterSpell()
        {
            var kraken = new Kraken()
            {
                Damage = 20
            };
            var water = new WaterSpell()
            {
                Damage = 20
            };

            int krakenDamage = kraken.CalculateDamage(water);
            int waterDamage  = water.CalculateDamage(kraken);

            // no element type effectiveness applies
            // kraken not affected by spells
            Assert.AreEqual(20, krakenDamage);
            Assert.AreEqual(0, waterDamage);
        }
Example #3
0
        public void TestMixedFightKrakenFireSpell()
        {
            var kraken = new Kraken()
            {
                Damage = 20
            };
            var fire = new FireSpell()
            {
                Damage = 20
            };

            int krakenDamage = kraken.CalculateDamage(fire);
            int fireDamage   = fire.CalculateDamage(kraken);

            // water > fire
            // kraken not affected by spells
            Assert.AreEqual(40, krakenDamage);
            Assert.AreEqual(0, fireDamage);
        }
Example #4
0
        public void TestMixedFightKrakenNormalSpell()
        {
            var kraken = new Kraken()
            {
                Damage = 20
            };
            var normal = new NormalSpell()
            {
                Damage = 20
            };

            int krakenDamage = kraken.CalculateDamage(normal);
            int normalDamage = normal.CalculateDamage(kraken);

            // normal > water
            // kraken not affected by spells
            Assert.AreEqual(10, krakenDamage);
            Assert.AreEqual(0, normalDamage);
        }