예제 #1
0
        public void TestMethodMensVecht2()
        {
            Speelveld loSpeelveld = new Speelveld(3, 3);

            // . C .    --> this one will not fight
            // . M C    --> these 2 will fight, the right will win
            // . . .

            List <Carnivoor> carnivoren = Carnivoor.CreateCarnivoren(2);
            List <Mens>      mensen     = Mens.CreateMensen(1);

            mensen[0].PosX             = 1;
            mensen[0].PosY             = 1;
            mensen[0].Levenskracht     = 5;
            carnivoren[0].PosX         = 1;
            carnivoren[0].PosY         = 2;
            carnivoren[0].Levenskracht = 10;
            carnivoren[1].PosX         = 0;
            carnivoren[1].PosY         = 1;

            loSpeelveld.AddMensenToSpeelveld(mensen, true);
            loSpeelveld.AddCarnivorenToSpeelveld(carnivoren, true);

            dier = carnivoren[0];

            mensen[0].Vecht(loSpeelveld, dier);

            // assume
            Assert.AreEqual(loSpeelveld.Terrarium[0, 1].GetType(), typeof(Carnivoor));
            Assert.AreEqual(loSpeelveld.Terrarium[1, 1], null);
            Assert.AreEqual(loSpeelveld.Terrarium[1, 2].GetType(), typeof(Carnivoor));
        }
예제 #2
0
        public void TestMethodCarnivoorVechtZelf2LevenskrachtGelijk()
        {
            Speelveld loSpeelveld = new Speelveld(3, 3);

            // . C .    --> this one will not fight
            // . C C    --> these 2 will fight, the right will win
            // . . .

            List <Carnivoor> carnivoren = Carnivoor.CreateCarnivoren(3);

            carnivoren[0].PosX         = 1;
            carnivoren[0].PosY         = 1;
            carnivoren[0].Levenskracht = 10;
            carnivoren[1].PosX         = 1;
            carnivoren[1].PosY         = 2;
            carnivoren[1].Levenskracht = 10;
            carnivoren[2].PosX         = 0;
            carnivoren[2].PosY         = 1;
            loSpeelveld.AddCarnivorenToSpeelveld(carnivoren, true);

            dier = carnivoren[1];

            carnivoren[0].Vecht(loSpeelveld, dier);

            // assume
            Assert.AreEqual(loSpeelveld.Terrarium[0, 1].GetType(), typeof(Carnivoor));
            Assert.AreEqual(loSpeelveld.Terrarium[1, 1].GetType(), typeof(Carnivoor));
            Assert.AreEqual(loSpeelveld.Terrarium[1, 2].GetType(), typeof(Carnivoor));
        }
예제 #3
0
        public void TestMethodCarnivoorEetHerbivoor()
        {
            Speelveld loSpeelveld = new Speelveld(3, 3);

            List <Herbivoor> herbivoren = Herbivoor.CreateHerbivoren(9);

            for (int x = 0; x < 3; x++)
            {
                for (int y = 0; y < 3; y++)
                {
                    herbivoren[x + (y * 3)].PosX = x;
                    herbivoren[x + (y * 3)].PosY = y;
                }
            }
            for (int x = 0; x < herbivoren.Count; x++)
            {
                if (x == 4)
                {
                    herbivoren.Remove(herbivoren[4]);
                    break;
                }
            }

            loSpeelveld.AddHerbivorenToSpeelveld(herbivoren, true);

            // here, I overwrite the position [1, 1]
            List <Carnivoor> carnivoren = Carnivoor.CreateCarnivoren(1);

            carnivoren[0].PosX = 1;
            carnivoren[0].PosY = 1;
            loSpeelveld.AddCarnivorenToSpeelveld(carnivoren, true);

            dier = herbivoren[1];

            // do the eet()
            carnivoren[0].Eet(loSpeelveld, dier);

            // assume
            for (int x = 0; x < 3; x++)
            {
                for (int y = 0; y < 3; y++)
                {
                    if (x == 1 && y == 2)
                    {
                        Assert.AreEqual(loSpeelveld.Terrarium[x, y].GetType(), typeof(Carnivoor));
                    }
                    else
                    {
                        if (x == 1 && y == 1)
                        {
                            Assert.AreEqual(loSpeelveld.Terrarium[x, y], null);
                        }
                        else
                        {
                            Assert.AreEqual(loSpeelveld.Terrarium[x, y].GetType(), typeof(Herbivoor));
                        }
                    }
                }
            }
        }
예제 #4
0
        public void Dier_EetAnderen_True_CarnivoorKanEten()
        {
            Carnivoor dierC = new Carnivoor(Dier.Groottes.Groot);
            Herbivoor dierH = new Herbivoor(Dier.Groottes.Klein);

            var result = dierC.EetAnderen(dierH);

            Assert.IsTrue(result);
        }
예제 #5
0
        public void TestMethodHerbivoorWisDeletedCarnivoren()
        {
            Speelveld speelveld = new Speelveld(3, 3);

            List <Carnivoor> carnivoren = Carnivoor.CreateCarnivoren(3);

            carnivoren[0].IsDeleted    = true;
            carnivoren[0].Levenskracht = 10;
            carnivoren[1].IsDeleted    = false;
            carnivoren[1].Levenskracht = 11;
            carnivoren[2].IsDeleted    = false;
            carnivoren[2].Levenskracht = 12;

            int lnResult = speelveld.RemoveDeletedCarnivoren(ref carnivoren);

            // assume
            Assert.AreEqual(lnResult, 1);
            Assert.AreEqual(carnivoren[0].Levenskracht, 11);
            Assert.AreEqual(carnivoren[1].Levenskracht, 12);
        }
예제 #6
0
        public void TestSpeelveldSeriousTest1()
        {
            Speelveld speelveld = new Speelveld(3, 3);

            // . . .
            // . . .
            // . . .

            List <Plant> planten = Plant.CreatePlanten(2);

            planten[0].PosX = 1;
            planten[0].PosY = 2;
            planten[1].PosX = 2;
            planten[1].PosY = 1;
            speelveld.AddPlantenToSpeelveld(planten, true);

            // . . .
            // . . P
            // . P .

            List <Herbivoor> herbivoren = Herbivoor.CreateHerbivoren(2);

            herbivoren[0].PosX = 0;
            herbivoren[0].PosY = 1;
            herbivoren[1].PosX = 2;
            herbivoren[1].PosY = 0;
            speelveld.AddHerbivorenToSpeelveld(herbivoren, true);

            // . H .
            // . . P
            // H P .

            List <Carnivoor> carnivoren = Carnivoor.CreateCarnivoren(3);

            carnivoren[0].PosX = 0;
            carnivoren[0].PosY = 0;
            carnivoren[1].PosX = 1;
            carnivoren[1].PosY = 0;
            carnivoren[2].PosX = 1;
            carnivoren[2].PosY = 1;
            speelveld.AddCarnivorenToSpeelveld(carnivoren, true);

            // C H .
            // C C P
            // H P .

            List <Mens> mensen = Mens.CreateMensen(1);

            mensen[0].PosX = 2;
            mensen[0].PosY = 2;
            speelveld.AddMensenToSpeelveld(mensen, true);

            // C H .
            // C C P
            // H P M

            speelveld.ToonSpeelveld();

            speelveld.DoActionsOf1Day(mensen, carnivoren, herbivoren, planten);

            speelveld.ToonSpeelveld(20);
        }