Exemple #1
0
        public void TestCreateNewRobotCommand()
        {
            DzyraNazarAlgorithm algorithm = new DzyraNazarAlgorithm();

            Map      map             = new Map();
            Position stationPosition = new Position(1, 1);

            map.Stations.Add(new EnergyStation()
            {
                Energy = 1000, Position = stationPosition, RecoveryRate = 2
            });

            var robots = new List <Robot.Common.Robot>()
            {
                new Robot.Common.Robot()
                {
                    Energy   = 500,
                    Position = new Position(2, 3),
                }
            };

            var command = algorithm.DoStep(robots, 0, map);

            Assert.IsTrue(command is CreateNewRobotCommand);
        }
Exemple #2
0
        public void TestGetMovePointFunction()
        {
            DzyraNazarAlgorithm algorithm = new DzyraNazarAlgorithm();

            Map      map             = new Map();
            Position stationPosition = new Position(1, 1);

            map.Stations.Add(new EnergyStation()
            {
                Energy = 1000, Position = stationPosition, RecoveryRate = 2
            });

            var robots = new List <Robot.Common.Robot>()
            {
                new Robot.Common.Robot()
                {
                    Energy   = 1000,
                    Position = new Position(2, 3),
                }
            };


            Position expectedPos = new Position(1, 1);
            Position newPos      = algorithm.GetMovePoint(robots[0], map, robots);

            Assert.AreEqual(expectedPos, newPos);
        }
Exemple #3
0
        public void TestNeedToCollectEnergyFunction()
        {
            DzyraNazarAlgorithm algorithm = new DzyraNazarAlgorithm();

            Map      map             = new Map();
            Position stationPosition = new Position(1, 1);

            map.Stations.Add(new EnergyStation()
            {
                Energy = 1000, Position = stationPosition, RecoveryRate = 2
            });

            var robots = new List <Robot.Common.Robot>()
            {
                new Robot.Common.Robot()
                {
                    Energy   = 1000,
                    Position = stationPosition,
                }
            };

            bool action = algorithm.NeedToCollectEnergy(robots[0], map);

            Assert.IsTrue(action);
        }
Exemple #4
0
        public void TestRobotCountFunction()
        {
            DzyraNazarAlgorithm algorithm = new DzyraNazarAlgorithm();
            Map      map             = new Map();
            Position stationPosition = new Position(1, 1);

            map.Stations.Add(new EnergyStation()
            {
                Energy = 1000, Position = stationPosition, RecoveryRate = 2
            });

            var robots = new List <Robot.Common.Robot>();

            int count = algorithm.MyRobotsCount;

            Assert.AreEqual(0, count);
        }
Exemple #5
0
        public void TestIsCellFreeFunction()
        {
            DzyraNazarAlgorithm algorithm = new DzyraNazarAlgorithm();
            Map      map             = new Map();
            Position stationPosition = new Position(1, 1);

            map.Stations.Add(new EnergyStation()
            {
                Energy = 1000, Position = stationPosition, RecoveryRate = 2
            });

            var robots = new List <Robot.Common.Robot>()
            {
                new Robot.Common.Robot()
                {
                    Energy   = 1000,
                    Position = new Position(2, 3),
                }
            };

            bool action = algorithm.IsCellFree(stationPosition, robots[0], robots);

            Assert.IsTrue(action);
        }