Skip to content
Snippets Groups Projects
Commit 4a4f107adaf1 authored by Patrice Journoud's avatar Patrice Journoud
Browse files

modifications liées à l'impact de la réorganisation de pytsp

parent 6ff17ee8ce2a
No related tags found
No related merge requests found
...@@ -17,7 +17,7 @@ ...@@ -17,7 +17,7 @@
config = Configurator(settings=settings) config = Configurator(settings=settings)
config.include('pyramid_chameleon') config.include('pyramid_chameleon')
config.include("cornice") config.include("cornice")
config.add_route('credentials', '/credentials') config.add_route('users', '/users')
config.add_route('access', '/') config.add_route('access', '/')
config.add_static_view(name='assets', path='assets', cache_max_age=3600) config.add_static_view(name='assets', path='assets', cache_max_age=3600)
config.scan() config.scan()
......
...@@ -94,7 +94,7 @@ ...@@ -94,7 +94,7 @@
def delete_db_user(session, allowed_domain): def delete_db_user(session, allowed_domain):
success, user = get_db_user(allowed_domain) success, user = get_db_user(session, allowed_domain)
if success: if success:
session.delete(user) session.delete(user)
return success return success
......
...@@ -30,7 +30,7 @@ ...@@ -30,7 +30,7 @@
value = get_init_file_key(key) value = get_init_file_key(key)
self.scheme = value self.scheme = value
def get_viaroute(self, points): def get_osrm_viaroute(self, points):
"""We assume that coords are OSRM locate/nearest results. ie: 2-tuples """We assume that coords are OSRM locate/nearest results. ie: 2-tuples
in the form (43.83032, 4.359950) in the form (43.83032, 4.359950)
......
import unittest import unittest
from pyramid import testing from pyramid import testing
from pytsp.tsp import TSP from pytsp.viaroute import Viaroute
from pytsp.distancegetter import DistanceGetter
from gpsdistance.main import distance as gps_distance
class ViewTests(unittest.TestCase): class ViewTests(unittest.TestCase):
...@@ -25,5 +23,7 @@ ...@@ -25,5 +23,7 @@
def test_pytsp_mode_test_brute_force_tsp(self): def test_pytsp_mode_test_brute_force_tsp(self):
get_distance = gps_distance obj = Viaroute(osrmhost=self.hostname,
is_debug_mode=True)
obj.compute(self.points)
...@@ -29,12 +29,5 @@ ...@@ -29,12 +29,5 @@
brute_force = True self.assertEqual(obj.get_indices(), (0, 2, 1, 3, 0,))
solver = TSP(self.points,
get_distance,
brute_force=brute_force,
no_tsp=False)
solver.init()
indices = solver.compute()
self.assertEqual(indices, (0, 2, 1, 3, 0,))
def test_pytsp_mode_test_ortools_tsp(self): def test_pytsp_mode_test_ortools_tsp(self):
...@@ -38,5 +31,7 @@ ...@@ -38,5 +31,7 @@
def test_pytsp_mode_test_ortools_tsp(self): def test_pytsp_mode_test_ortools_tsp(self):
distance_getter = DistanceGetter(self.hostname, scheme=self.scheme) obj = Viaroute(osrmhost=self.hostname,
is_debug_mode=True)
obj.compute(self.points, max_points_for_brute_force=2)
...@@ -42,13 +37,5 @@ ...@@ -42,13 +37,5 @@
get_distance = distance_getter.get_distance self.assertEqual(obj.get_indices(), [0L, 2L, 1L, 3L, 0L])
brute_force = False
solver = TSP(self.points,
get_distance,
brute_force=brute_force,
no_tsp=False)
solver.init()
indices = solver.compute()
self.assertEqual(indices, [0L, 2L, 1L, 3L, 0L])
def test_pytsp_mode_osrm_brute_force_tsp(self): def test_pytsp_mode_osrm_brute_force_tsp(self):
...@@ -52,5 +39,7 @@ ...@@ -52,5 +39,7 @@
def test_pytsp_mode_osrm_brute_force_tsp(self): def test_pytsp_mode_osrm_brute_force_tsp(self):
distance_getter = DistanceGetter(self.hostname, scheme=self.scheme) obj = Viaroute(osrmhost=self.hostname,
is_debug_mode=False)
obj.compute(self.points)
...@@ -56,13 +45,5 @@ ...@@ -56,13 +45,5 @@
get_distance = distance_getter.get_distance self.assertEqual(obj.get_indices(), (0, 2, 1, 3, 0,))
brute_force = True
solver = TSP(self.points,
get_distance,
brute_force=brute_force,
no_tsp=False)
solver.init()
indices = solver.compute()
self.assertEqual(indices, (0, 2, 1, 3, 0,))
def test_pytsp_mode_osrm_ortools_tsp(self): def test_pytsp_mode_osrm_ortools_tsp(self):
...@@ -66,5 +47,7 @@ ...@@ -66,5 +47,7 @@
def test_pytsp_mode_osrm_ortools_tsp(self): def test_pytsp_mode_osrm_ortools_tsp(self):
distance_getter = DistanceGetter(self.hostname, scheme=self.scheme) obj = Viaroute(osrmhost=self.hostname,
is_debug_mode=False)
obj.compute(self.points, max_points_for_brute_force=2)
...@@ -70,11 +53,5 @@ ...@@ -70,11 +53,5 @@
get_distance = distance_getter.get_distance self.assertEqual(obj.get_indices(), [0L, 2L, 1L, 3L, 0])
solver = TSP(self.points,
get_distance,
no_tsp=False)
solver.init()
indices = solver.compute()
self.assertEqual(indices, [0L, 2L, 1L, 3L, 0])
def test_pytsp_mode_test_brute_force_no_tsp(self): def test_pytsp_mode_test_brute_force_no_tsp(self):
...@@ -78,5 +55,7 @@ ...@@ -78,5 +55,7 @@
def test_pytsp_mode_test_brute_force_no_tsp(self): def test_pytsp_mode_test_brute_force_no_tsp(self):
get_distance = gps_distance obj = Viaroute(osrmhost=self.hostname,
is_debug_mode=True)
obj.compute(self.points, start=0, end=3)
...@@ -82,13 +61,5 @@ ...@@ -82,13 +61,5 @@
brute_force = True self.assertEqual(obj.get_indices(), (0, 2, 1, 3,))
solver = TSP(self.points,
get_distance,
brute_force=brute_force,
no_tsp=True
)
solver.init()
indices = solver.compute()
self.assertEqual(indices, (0, 2, 1, 3,))
def test_pytsp_mode_test_ortools_no_tsp(self): def test_pytsp_mode_test_ortools_no_tsp(self):
...@@ -92,5 +63,7 @@ ...@@ -92,5 +63,7 @@
def test_pytsp_mode_test_ortools_no_tsp(self): def test_pytsp_mode_test_ortools_no_tsp(self):
distance_getter = DistanceGetter(self.hostname, scheme=self.scheme) obj = Viaroute(osrmhost=self.hostname,
is_debug_mode=True)
obj.compute(self.points, max_points_for_brute_force=2, start=0, end=3)
...@@ -96,16 +69,5 @@ ...@@ -96,16 +69,5 @@
get_distance = distance_getter.get_distance self.assertEqual(obj.get_indices(), [0L, 2L, 1L, 3L])
brute_force = False
solver = TSP(self.points,
get_distance,
brute_force=brute_force,
no_tsp=True,
start=1,
end=2
)
solver.init()
indices = solver.compute()
self.assertEqual(indices, [1L, 3L, 0L, 2L])
def test_pytsp_mode_osrm_brute_force_no_tsp(self): def test_pytsp_mode_osrm_brute_force_no_tsp(self):
...@@ -109,5 +71,7 @@ ...@@ -109,5 +71,7 @@
def test_pytsp_mode_osrm_brute_force_no_tsp(self): def test_pytsp_mode_osrm_brute_force_no_tsp(self):
distance_getter = DistanceGetter(self.hostname, scheme=self.scheme) obj = Viaroute(osrmhost=self.hostname,
is_debug_mode=False)
obj.compute(self.points, start=0, end=3)
...@@ -113,13 +77,5 @@ ...@@ -113,13 +77,5 @@
get_distance = distance_getter.get_distance self.assertEqual(obj.get_indices(), (0, 2, 1, 3,))
brute_force = True
solver = TSP(self.points,
get_distance,
brute_force=brute_force,
no_tsp=True)
solver.init()
indices = solver.compute()
self.assertEqual(indices, (0, 2, 1, 3,))
def test_pytsp_mode_osrm_ortools_no_tsp(self): def test_pytsp_mode_osrm_ortools_no_tsp(self):
...@@ -123,5 +79,7 @@ ...@@ -123,5 +79,7 @@
def test_pytsp_mode_osrm_ortools_no_tsp(self): def test_pytsp_mode_osrm_ortools_no_tsp(self):
distance_getter = DistanceGetter(self.hostname, scheme=self.scheme) obj = Viaroute(osrmhost=self.hostname,
is_debug_mode=False)
obj.compute(self.points, max_points_for_brute_force=2, start=0, end=3)
...@@ -127,6 +85,2 @@ ...@@ -127,6 +85,2 @@
get_distance = distance_getter.get_distance self.assertEqual(obj.get_indices(), [0L, 2L, 1L, 3L])
solver = TSP(self.points, get_distance, no_tsp=True)
solver.init()
indices = solver.compute()
self.assertEqual(indices, [0L, 2L, 1L, 3L])
...@@ -10,10 +10,8 @@ ...@@ -10,10 +10,8 @@
import logging import logging
from pytsp.tsp import TSP from pytsp.viaroute import Viaroute
from pytsp.distancegetter import DistanceGetter from pytsprf.conf import get as conf_get
from gpsdistance.main import distance as gps_distance
from pytsprf.models import get_db_user_token, get_db_user from pytsprf.models import get_db_user_token, get_db_user
from pytsprf.models import delete_db_user, get_db_users from pytsprf.models import delete_db_user, get_db_users
...@@ -17,10 +15,6 @@ ...@@ -17,10 +15,6 @@
from pytsprf.models import get_db_user_token, get_db_user from pytsprf.models import get_db_user_token, get_db_user
from pytsprf.models import delete_db_user, get_db_users from pytsprf.models import delete_db_user, get_db_users
from pytsprf.osrm.osrmviaroute import OsrmViaroute
from pytsprf.conf import get as conf_get
from pytsprf.transactions import task_create_db_user from pytsprf.transactions import task_create_db_user
# ================================================== # ==================================================
...@@ -24,7 +18,7 @@ ...@@ -24,7 +18,7 @@
from pytsprf.transactions import task_create_db_user from pytsprf.transactions import task_create_db_user
# ================================================== # ==================================================
# Service : Users authentication and autorization # Service : Users authentication and authorization
# ================================================== # ==================================================
users = Service(name='users', path='/users', description="Users management") users = Service(name='users', path='/users', description="Users management")
...@@ -144,7 +138,7 @@ ...@@ -144,7 +138,7 @@
return {'project': 'access'} return {'project': 'access'}
@view_config(route_name='credentials', renderer='templates/index.pt') @view_config(route_name='users', renderer='templates/index.pt')
def home_page(request): def home_page(request):
return {'project': 'pytsprf'} return {'project': 'pytsprf'}
...@@ -191,5 +185,5 @@ ...@@ -191,5 +185,5 @@
return points return points
def get_route(points, start, end, is_test_mode=False): def get_route(points, start, end, is_debug_mode=False):
...@@ -195,10 +189,6 @@ ...@@ -195,10 +189,6 @@
if is_test_mode: scheme = conf_get('osrm.scheme')
get_distance = gps_distance hostname = conf_get('osrm.hostname')
else: conf_max_points_for_brute_force = \
scheme = conf_get('osrm.scheme') int(conf_get('tsp.max_points_for_brute_force'))
hostname = conf_get('osrm.hostname')
distance_getter = DistanceGetter(hostname, scheme=scheme)
get_distance = distance_getter.get_distance
...@@ -204,7 +194,5 @@ ...@@ -204,7 +194,5 @@
solver = TSP(points, obj = Viaroute(osrmhost=hostname,
get_distance, scheme=scheme,
start=start, is_debug_mode=is_debug_mode)
end=end
)
...@@ -210,12 +198,11 @@ ...@@ -210,12 +198,11 @@
solver.init() return \
indices = solver.compute() obj.compute(
points,
ordered_points = [points[i] for i in indices] start,
end,
viaroute = OsrmViaroute() max_points_for_brute_force=conf_max_points_for_brute_force
)
return viaroute.get_viaroute(ordered_points)
def log_connections(request): def log_connections(request):
...@@ -250,7 +237,7 @@ ...@@ -250,7 +237,7 @@
end = int(request.headers.get('end')) end = int(request.headers.get('end'))
route = get_route( route = get_route(
points, start, end, is_test_mode=False points, start, end, is_debug_mode=False
) )
response = get_response( response = get_response(
requestDataDict, route, start, end requestDataDict, route, start, end
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment