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); }
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); }
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); }
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); }
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); }