示例#1
0
        public void CriarEquipamentoUltraPackComPneuDeCouroDeDragao()
        {
            PneusDeCouroDeDragao pneu      = new PneusDeCouroDeDragao();
            UltraPack            ultraPack = new UltraPack(pneu);

            Assert.AreEqual(3, ultraPack.Bonus);
        }
示例#2
0
        public void CriarEquipamentoUltraPackComFogueteDePlutonioNivel4()
        {
            FogueteDePlutonio foguete   = new FogueteDePlutonio(4);
            UltraPack         ultraPack = new UltraPack(foguete);

            Assert.AreEqual(5, ultraPack.Bonus);
        }
示例#3
0
        public void CriarKartSkyFusionComSkyFusionEquipandoESendoEquipadoPorOutroSkyFusion()
        {
            Corredor  corredor   = new Corredor("Zé", NivelHabilidadeCorredor.Profissional);
            SkyFusion skyFusion  = new SkyFusion(corredor);
            SkyFusion skyFusion2 = new SkyFusion(corredor);
            SkyFusion skyFusion3 = new SkyFusion(corredor);

            FogueteDePlutonio foguete   = new FogueteDePlutonio(5);
            UltraPack         ultraPack = new UltraPack(foguete);
            MotorABaseDeLava  motor     = new MotorABaseDeLava();

            skyFusion.Equipar(foguete);
            skyFusion.Equipar(ultraPack);
            skyFusion.Equipar(motor);

            skyFusion2.Equipar(foguete);
            skyFusion2.Equipar(ultraPack);
            skyFusion2.Equipar(motor);
            skyFusion2.Equipar(skyFusion);

            skyFusion3.Equipar(foguete);
            skyFusion3.Equipar(ultraPack);
            skyFusion3.Equipar(motor);
            skyFusion3.Equipar(skyFusion2);

            Assert.AreEqual(115, skyFusion3.VelocidadeFinal());
        }
示例#4
0
        public void UltraPackRecebeUmEquipamentoDeBonus5eAumenta2()
        {
            var equipamentoQualquer = new FogueteDePlutonio(5); // recebe 10 de bônus
            var ultrapack           = new UltraPack(equipamentoQualquer);
            var resultado           = ultrapack.Bonus;

            Assert.AreEqual(12, resultado);
        }
示例#5
0
        public void UltraPackRecebeUmEquipamentoDeBonus2eAumenta1()
        {
            var equipamentoQualquer = new PneusDeCouroDeDragao(); // recebe 2 de bônus
            var ultrapack           = new UltraPack(equipamentoQualquer);
            var resultado           = ultrapack.Bonus;

            Assert.AreEqual(3, resultado);
        }
示例#6
0
        public void UltraPackRecebeUmEquipamentoDeBonus3eAumenta1()
        {
            var equipamentoQualquer = new MotorABaseDeLava(); // recebe 3 de bônus
            var ultrapack           = new UltraPack(equipamentoQualquer);
            var resultado           = ultrapack.Bonus;

            Assert.AreEqual(4, resultado);
        }
示例#7
0
        public void CriarEquipamentoUltraPackComUltrapackComUltraPackDentro()
        {
            PneusDeCouroDeDragao pneu           = new PneusDeCouroDeDragao();
            UltraPack            ultraPack      = new UltraPack(pneu);
            UltraPack            novoUltraPack  = new UltraPack(ultraPack);
            UltraPack            ultraPackTeste = new UltraPack(novoUltraPack);

            Assert.AreEqual(5, ultraPackTeste.Bonus);
        }
示例#8
0
        public void UltraPackComCorredorNoobCom1PneusDeCouroDeDragao()
        {
            Corredor             corredor = new Corredor("Ayrton Senna", NivelHabilidade.Noob);
            Kart                 kart     = new Kart(corredor);
            PneusDeCouroDeDragao pneus    = new PneusDeCouroDeDragao();
            UltraPack            ultra    = new UltraPack(new UltraPack(pneus));

            Assert.AreEqual(11, kart.Velocidade);
        }
示例#9
0
        public void CorredorSoRecebeBonusDaUltraPack()
        {
            var piloto = new Corredor("Mario", NivelDeHabilidade.Profissional);  // 6 velocidade
            var kart   = new Kart(piloto);                                       // 3 velocidade
            var pack   = new UltraPack(new UltraPack(new FogueteDePlutonio(5))); // 8 velocidade

            kart.Equipar(pack);                                                  // 1 de velocidade profissional
            Assert.AreEqual(18, kart.Velocidade);                                // 6 + 3 + 1 + 8 = 18
        }
示例#10
0
        public void UltraPackDuploComFogueteDePlutonioNivel5Bonus7()
        {
            var ultraPack = new UltraPack(
                new UltraPack(
                    new FogueteDePlutonio(5)
                    )
                );

            Assert.AreEqual(8, ultraPack.Bonus);
        }
示例#11
0
        public void CriarKartSkyFusionCom2Equipamentos()
        {
            Corredor          corredor  = new Corredor("Zé", NivelHabilidadeCorredor.Noob);
            SkyFusion         skyFusion = new SkyFusion(corredor);
            FogueteDePlutonio foguete   = new FogueteDePlutonio(5);
            UltraPack         ultraPack = new UltraPack(foguete);

            skyFusion.Equipar(foguete);
            skyFusion.Equipar(ultraPack);

            Assert.AreEqual(25, skyFusion.VelocidadeFinal());
        }
示例#12
0
        public void CriarKartSkyFusionCom3Equipamentos()
        {
            Corredor          corredor  = new Corredor("Zé", NivelHabilidadeCorredor.Profissional);
            SkyFusion         skyFusion = new SkyFusion(corredor);
            FogueteDePlutonio foguete   = new FogueteDePlutonio(5);
            UltraPack         ultraPack = new UltraPack(foguete);
            MotorABaseDeLava  motor     = new MotorABaseDeLava();

            skyFusion.Equipar(foguete);
            skyFusion.Equipar(ultraPack);
            skyFusion.Equipar(motor);


            Assert.AreEqual(37, skyFusion.VelocidadeFinal());
        }
        public void KartEquipadoComUltraPackQuePossuiPneusDeCouroDeDragao()
        {
            var corredor     = new Corredor("Juca", NivelDeHabilidade.MEDIANO);
            var kart         = new Kart(corredor);
            var equipInterno = new PneusDeCouroDeDragao();
            var equip        = new UltraPack(equipInterno);

            kart.Equipar(equip);

            Assert.AreEqual(1, kart.Equipamentos.Count);
            UltraPack ultrapack = (UltraPack)kart.Equipamentos[0];

            Assert.AreEqual(equip, ultrapack);
            Assert.AreEqual(equipInterno, ultrapack.EquipamentoInterno);
            Assert.AreEqual(3, ultrapack.Bonus);
            Assert.AreEqual(11, kart.Velocidade);
        }
示例#14
0
        public void CriarKartSonarComSkyFusionEquipando()
        {
            Corredor          corredor  = new Corredor("Zé", NivelHabilidadeCorredor.Profissional);
            Sonar             sonar     = new Sonar(corredor);
            SkyFusion         skyFusion = new SkyFusion(corredor);
            FogueteDePlutonio foguete   = new FogueteDePlutonio(5);
            UltraPack         ultraPack = new UltraPack(foguete);
            MotorABaseDeLava  motor     = new MotorABaseDeLava();

            skyFusion.Equipar(foguete);
            skyFusion.Equipar(ultraPack);
            skyFusion.Equipar(motor);

            sonar.Equipar(skyFusion);

            Assert.AreEqual(49, sonar.VelocidadeFinal());
        }
        public void KartEquipadoComUltraPackQuePossuiUltraPack()
        {
            var corredor    = new Corredor("Juca", NivelDeHabilidade.MEDIANO);
            var kart        = new Kart(corredor);
            var equipNivel3 = new PneusDeCouroDeDragao();
            var equipNivel2 = new UltraPack(equipNivel3);
            var equipNivel1 = new UltraPack(equipNivel2);

            kart.Equipar(equipNivel1);

            Assert.AreEqual(1, kart.Equipamentos.Count);
            UltraPack ultrapackExterno = (UltraPack)kart.Equipamentos[0];
            UltraPack ultrapackInterno = (UltraPack)ultrapackExterno.EquipamentoInterno;

            Assert.AreEqual(equipNivel1, ultrapackExterno);
            Assert.AreEqual(equipNivel2, ultrapackInterno);
            Assert.AreEqual(equipNivel3, ultrapackInterno.EquipamentoInterno);
            Assert.AreEqual(4, ultrapackExterno.Bonus);
            Assert.AreEqual(12, kart.Velocidade);
        }
示例#16
0
        public void UltraPackComUltraPackComFoguetePlutonioNivel5TemBonusVelocidade8()
        {
            var pack = new UltraPack(new UltraPack(new FogueteDePlutonio(5)));

            Assert.AreEqual(8, pack.BonusDeVelocidade);
        }
示例#17
0
        public void UltraPackComMotorDeLavaTemBonus4()
        {
            var ultraPack = new UltraPack(new MotorABaseDeLava());

            Assert.AreEqual(4, ultraPack.Bonus);
        }
示例#18
0
        public void UltraPackComPneuDeCouroDeDragaoTemBonus3()
        {
            var ultraPack = new UltraPack(new PneuDeCouroDeDragao());

            Assert.AreEqual(3, ultraPack.Bonus);
        }
示例#19
0
        public void UltraPackEquipamentoFogueteDePlutonioNivel1Bonus2()
        {
            var ultraPack = new UltraPack(new FogueteDePlutonio(1));

            Assert.AreEqual(2, ultraPack.BonusDeVelocidade);
        }
示例#20
0
        public void UltraPackEquipamentoMotorABaseDeLavaBonus4()
        {
            var ultraPack = new UltraPack(new MotorABaseDeLava());

            Assert.AreEqual(4, ultraPack.BonusDeVelocidade);
        }