Ejemplo n.º 1
0
from AndroidRequests.allviews.BusStopsByService import BusStopsByService
from AndroidRequests.allviews.RegisterReport import RegisterReport
from AndroidRequests.allviews.ServiceRoute import ServiceRoute
from AndroidRequests.allviews.SetDirection import SetDirection
from AndroidRequests.allviews.RequestUUID import RequestUUID

urlpatterns = [
    url(r'^nearbyBuses/(?P<pUserId>[0-9a-z-]+)/(?P<pBusStop>\w+)$',
        views.nearbyBuses),
    url(r'^registerReport$', RegisterReport.as_view()),
    url(
        r'^userPosition/(?P<pUserId>[0-9a-z-]+)/(?P<pLat>[\-+]?[0-9]*\.?[0-9]*)/(?P<pLon>[\-+]?[0-9]*\.?[0-9]*)$',
        views.userPosition),
    url(
        r'^requestToken/(?P<pUserId>[0-9a-z-]+)/(?P<pBusService>[0-9,\w]*)/(?P<pRegistrationPlate>[0-9,\w,-]{6,8})$',
        RequestToken.as_view()),
    url(
        r'^requestToken/v2/(?P<pUserId>[0-9a-z-]+)/(?P<pBusService>[0-9,\w]*)/(?P<pUUID>[0-9a-z-]+)$',
        RequestTokenV2.as_view()),
    url(r'^endRoute/(?P<pToken>[0-9,a-f]{128})$', EndRoute.as_view()),
    url(r'^sendTrajectory$', SendPoses.as_view()),
    # reportEventBus with location
    url(
        r'^reportEventBus/(?P<pUserId>[0-9a-z-]+)/(?P<pBusService>[\w,0-9]*)/(?P<pBusPlate>[\w,0-9,-]*)/(?P<pEventID>.*)/(?P<pLatitud>[\-+]?[0-9]*\.?[0-9]*)/(?P<pLongitud>[\-+]?[0-9]*\.?[0-9]*)/(?P<pConfirmDecline>.*)$',
        RegisterEventBus.as_view()),
    url(
        r'^reportEventBus/v2/(?P<pUserId>[0-9a-z-]+)/(?P<pUuid>[0-9a-z-]+)/(?P<pBusService>[\w,0-9]*)/(?P<pEventID>.*)/(?P<pLatitud>[\-+]?[0-9]*\.?[0-9]*)/(?P<pLongitud>[\-+]?[0-9]*\.?[0-9]*)/(?P<pConfirmDecline>.*)$',
        RegisterEventBusV2.as_view()),
    # reportEventBus without location
    url(
        r'^reportEventBus/(?P<pUserId>[0-9a-z-]+)/(?P<pBusService>[\w,0-9]*)/(?P<pBusPlate>[\w,0-9,-]*)/(?P<pEventID>.*)/(?P<pConfirmDecline>.*)$',
Ejemplo n.º 2
0
    def test_getGetMapTrajectory(self):
        '''this test the trajectory that the server gives to the map. '''

        timeStampNow = str(timezone.localtime(timezone.now()))
        timeStampNow = timeStampNow[0:19]
        testPoses = {"poses": [
            {"latitud": -33.458771,
             "longitud": -70.676266,
             "timeStamp": str(timeStampNow),
             "inVehicleOrNot": "vehicle"},
            {"latitud": -33.458699,
             "longitud": -70.675708,
             "timeStamp": "2015-10-01T18:10:10",
             "inVehicleOrNot": "vehicle"},
            {"latitud": -33.458646,
             "longitud": -70.674678,
             "timeStamp": "2015-10-01T18:10:15",
             "inVehicleOrNot": "vehicle"},
            {"latitud": -33.458646,
             "longitud": -70.673799,
             "timeStamp": "2015-10-01T18:10:20",
             "inVehicleOrNot": "vehicle"},
            {"latitud": -33.458413,
             "longitud": -70.671631,
             "timeStamp": "2015-10-01T18:10:24",
             "inVehicleOrNot": "vehicle"},
            {"latitud": -33.457983,
             "longitud": -70.669035,
             "timeStamp": "2015-10-01T18:10:30",
             "inVehicleOrNot": "vehicle"},
            {"latitud": -33.457518,
             "longitud": -70.666718,
             "timeStamp": "2015-10-01T18:10:35",
             "inVehicleOrNot": "vehicle"},
            {"latitud": -33.457196,
             "longitud": -70.664636,
             "timeStamp": "2015-10-01T18:10:40",
             "inVehicleOrNot": "vehicle"},
            {"latitud": -33.457070, "longitud": -70.660559, "timeStamp": str(timeStampNow), "inVehicleOrNot": "vehicle"}]}

        testTokens = []

        request = self.factory.get('/android/requestToken')
        request.user = AnonymousUser()

        for cont in range(6):
            reponseView = RequestToken()
            response = reponseView.get(request, self.userId, '503', 'ZZZZ00')

            jsonContent = json.loads(response.content)
            testToken = jsonContent['token']
            testTokens.append(testToken)

        # save last token
        timeOutToken = testTokens[-1]

        for cont in range(6):
            request = self.factory.get('/android/sendTrajectoy')
            request.user = AnonymousUser()

            reponseView = SendPoses()
            request.POST = {}
            request.POST['pToken'] = testTokens[cont]
            request.POST['pTrajectory'] = json.dumps(testPoses)
            request.method = 'POST'
            response = reponseView.post(request)

            request = self.factory.get('/android/endRoute/')
            request.user = AnonymousUser()
            reponseView = EndRoute()
            response = reponseView.get(request, testTokens[cont])

        nonTrajectory = PoseInTrajectoryOfToken.objects.filter(
            token=timeOutToken)
        for data in nonTrajectory:
            data.timeStamp = data.timeStamp - timezone.timedelta(minutes=11)
            data.save()

        request = self.factory.get('/map/activetrajectory')
        request.user = AnonymousUser()

        reponseView = GetMapTrajectory()
        response = reponseView.get(request)

        responseMessage = json.loads(response.content)

        # all tokens given by GetMapTrajectory are different of timeOutToken
        for aMsg in responseMessage:
            self.assertEqual(aMsg['token'] != timeOutToken, True)

        self.assertEqual(len(responseMessage), len(testTokens) - 1)