def test_no_route(self): """ Test no route has been founded """ data = { u"cities": {u"Madrid": [0, 0], u"Barcelona": [10, 10], u"Albacete": [3, 4]}, u"links": [[u"Madrid", u"Barcelona"]], } a_star = Cities_AStarSolver(CityMap.load(data)) self.assertEqual(a_star.route(from_city="Barcelona", target_city="Albacete"), (None, 0))
def test_solve_2(self): """ Simple test solving another easy city map """ data = { u"cities": {u"Madrid": [0, 0], u"Barcelona": [10, 10], u"Albacete": [3, 4]}, u"links": [[u"Madrid", u"Barcelona"], [u"Madrid", u"Albacete"]], } short_route = ["Barcelona", "Madrid", "Albacete"] a_star = Cities_AStarSolver(CityMap.load(data)) check_res = (short_route, self.get_cost(a_star, short_route)) self.assertEqual(a_star.route(from_city="Barcelona", target_city="Albacete"), check_res)
def test_solve_3(self): """ Simple test solving a more complex city map """ data = { u"cities": {u"Madrid": [0, 0], u"Guadalajara": [1, 2], u"Albacete": [-1, -3], u"Murcia": [-1, -5]}, u"links": [ ["Madrid", "Guadalajara"], ["Madrid", "Albacete"], ["Guadalajara", "Murcia"], ["Albacete", "Murcia"], ["Guadalajara", "Albacete"], ], } short_route = ["Madrid", "Albacete", "Murcia"] a_star = Cities_AStarSolver(CityMap.load(data)) check_res = (short_route, self.get_cost(a_star, short_route)) self.assertEqual(a_star.route(from_city="Madrid", target_city="Murcia"), check_res)