Exemple #1
0
    def testStopSectionTimeline(self):
        eaist.segment_current_trips(self.testUUID)
        eaiss.segment_current_sections(self.testUUID)
        tl = esdt.get_timeline(self.testUUID, self.day_start_ts,
                               self.day_end_ts)

        for i, element in enumerate(tl):
            logging.debug("%s: %s" % (i, type(element)))
            curr_type = self.get_type(element)
            if curr_type == ecwt.Trip:
                curr_tl = esdtq.get_timeline_for_trip(self.testUUID,
                                                      element.get_id())
                logging.debug("Got timeline %s for trip %s" %
                              (curr_tl, element.start_fmt_time))
                prev_sub_type = None
                prev_element = None
                checked_count = 0
                j = 0
                for j, curr_element in enumerate(curr_tl):
                    logging.debug("curr_element = %s" % curr_element)
                    curr_sub_type = self.get_type(curr_element)
                    if prev_sub_type is not None:
                        checked_count = checked_count + 1
                        self.assertNotEqual(prev_sub_type, curr_sub_type)
                        if prev_sub_type == ecws.Stop:
                            self.assertEqual(prev_element.starting_section,
                                             curr_element.get_id())
                        else:
                            self.assertEqual(prev_sub_type, ecwsc.Section)
                            self.assertEqual(prev_element.end_stop,
                                             curr_element.get_id())
                    prev_sub_type = curr_sub_type
                    prev_element = curr_element
                self.assertEqual(checked_count, j)
    def testStopSectionTimeline(self):
        eaist.segment_current_trips(self.testUUID)
        eaiss.segment_current_sections(self.testUUID)
        tl = esdt.get_timeline(self.testUUID, self.day_start_ts, self.day_end_ts)


        for i, element in enumerate(tl):
            logging.debug("%s: %s" % (i, type(element)))
            curr_type = self.get_type(element)
            if curr_type == ecwt.Trip:
                curr_tl = esdtq.get_timeline_for_trip(self.testUUID, element.get_id())
                logging.debug("Got timeline %s for trip %s" % (curr_tl, element.start_fmt_time))
                prev_sub_type = None
                prev_element = None
                checked_count = 0
                j = 0
                for j, curr_element in enumerate(curr_tl):
                    logging.debug("curr_element = %s" % curr_element)
                    curr_sub_type = self.get_type(curr_element)
                    if prev_sub_type is not None:
                        checked_count = checked_count + 1
                        self.assertNotEqual(prev_sub_type, curr_sub_type)
                        if prev_sub_type == ecws.Stop:
                            self.assertEqual(prev_element.starting_section, curr_element.get_id())
                        else:
                            self.assertEqual(prev_sub_type, ecwsc.Section)
                            self.assertEqual(prev_element.end_stop, curr_element.get_id())
                    prev_sub_type = curr_sub_type
                    prev_element = curr_element
                self.assertEqual(checked_count, j)
Exemple #3
0
    def testTripGeojson(self):
        eaist.segment_current_trips(self.testUUID)
        eaiss.segment_current_sections(self.testUUID)

        tl = esdtl.get_timeline(self.testUUID, 1440658800, 1440745200)
        tl.fill_start_end_places()

        created_trips = tl.trips
        self.assertEquals(len(created_trips), 8)

        trip_geojson = gjfc.trip_to_geojson(created_trips[0], tl)
        logging.debug("trip_geojson = %s" % gj.dumps(trip_geojson, indent=4))
def get_geojson_for_range(user_id, start_ts, end_ts):
    geojson_list = []
    tl = esdtl.get_timeline(user_id, start_ts, end_ts)
    tl.fill_start_end_places()

    for trip in tl.trips:
        try:
            trip_geojson = trip_to_geojson(trip, tl)
            # If the trip has no sections, it will have exactly two points - one for the start place and
            # one for the stop place. If a trip has no sections, let us filter it out here because it is
            # annoying to the user. But in that case, we need to merge the places.
            # Let's make that a TODO after getting everything else to work.
            if len(trip_geojson.features) == 2:
                logging.info("Skipping zero section trip %s with distance %s (should be zero)" %
                             (trip, trip_geojson.properties["distance"]))
            else:
                geojson_list.append(trip_geojson)
        except Exception, e:
            logging.exception("Found error %s while processing trip %s" % (e, trip))
            raise e
    def testPlaceTripTimeline(self):
        eaist.segment_current_trips(self.testUUID)
        tl = esdt.get_timeline(self.testUUID, self.day_start_ts, self.day_end_ts)

        prev_type = None
        prev_element = None
        checked_count = 0
        for i, curr_element in enumerate(tl):
            # logging.debug("%s: %s" % (i, curr_element))
            curr_type = self.get_type(curr_element)
            if prev_type is not None:
                checked_count = checked_count + 1
                self.assertNotEqual(prev_type, curr_type)
                if prev_type == ecwp.Place:
                    self.assertEqual(prev_element.starting_trip, curr_element.get_id())
                else:
                    self.assertEqual(prev_type, ecwt.Trip)
                    self.assertEqual(prev_element.end_place, curr_element.get_id())
            prev_type = curr_type
            prev_element = curr_element
        self.assertEqual(checked_count, i)
def get_geojson_for_dt(user_id, start_dt, end_dt):
    tl = esdtl.get_timeline(user_id, start_dt, end_dt)
    tl.fill_start_end_places()
    return get_geojson_for_timeline(user_id, tl)
def get_geojson_for_ts(user_id, start_ts, end_ts):
    tl = esdtl.get_timeline(user_id, start_ts, end_ts)
    tl.fill_start_end_places()
    return get_geojson_for_timeline(user_id, tl)
 def testPlaceTripTimeline(self):
     eaist.segment_current_trips(self.testUUID)
     tl = esdt.get_timeline(self.testUUID, self.day_start_ts, self.day_end_ts)
     self.checkPlaceTripConsistency(tl)
Exemple #9
0
 def testPlaceTripTimeline(self):
     eaist.segment_current_trips(self.testUUID)
     tl = esdt.get_timeline(self.testUUID, self.day_start_ts,
                            self.day_end_ts)
     self.checkPlaceTripConsistency(tl)