def callback(body, message): task = task_pb2.Task() try: # `body` is of unicode type, but we need str type for # `ParseFromString()` to work. It seems to work. # Maybe kombu estimate that, without any information, # the body should be something as json, and thus a # unicode string. On the c++ side, I didn't manage to # find a way to give a content-type or something like # that. body = str(body) task.ParseFromString(body) except DecodeError as e: log.warn('invalid protobuf: {}'.format(str(e))) return log.info('getting a request: {}'.format(task)) if task.action != task_pb2.LOAD_REALTIME or not task.load_realtime: return feed = convert_to_gtfsrt(RealTimeUpdate.all(task.load_realtime.contributors)) with self._get_producer() as producer: producer.publish(feed.SerializeToString(), routing_key=task.load_realtime.queue_name)
def test_find_activate(): with app.app_context(): create_real_time_update('70866ce8-0638-4fa1-8556-1ddfa22d09d3', 'C1', 'ire', '70866ce8-0638-4fa1-8556-1ddfa22d09d3', 'vj1', datetime.date(2015, 9, 8)) create_real_time_update('70866ce8-0638-4fa1-8556-1ddfa22d09d4', 'C1', 'ire', '70866ce8-0638-4fa1-8556-1ddfa22d09d4', 'vj2', datetime.date(2015, 9, 10)) create_real_time_update('70866ce8-0638-4fa1-8556-1ddfa22d09d5', 'C1', 'ire', '70866ce8-0638-4fa1-8556-1ddfa22d09d5', 'vj3', datetime.date(2015, 9, 12)) create_real_time_update('70866ce8-0638-4fa1-8556-1ddfa22d09d6', 'C2', 'ire', '70866ce8-0638-4fa1-8556-1ddfa22d09d6', 'vj4', datetime.date(2015, 9, 12)) db.session.commit() """ contributor C1 VehicleJourney vj1 Circulation date 20150908 20150910 20150912 | | | request date 20150906 | | | """ rtu = RealTimeUpdate.all(['C1'], datetime.date(2015, 9, 6)) assert len(rtu) == 3 assert rtu[0].id == '70866ce8-0638-4fa1-8556-1ddfa22d09d3' assert rtu[1].id == '70866ce8-0638-4fa1-8556-1ddfa22d09d4' assert rtu[2].id == '70866ce8-0638-4fa1-8556-1ddfa22d09d5' """ contributor C1 VehicleJourney vj1 Circulation date 20150908 20150910 20150912 | | | request date 20150908 | | """ rtu = RealTimeUpdate.all(['C1'], datetime.date(2015, 9, 8)) assert len(rtu) == 3 """ contributor C1 VehicleJourney vj1 Circulation date 20150908 20150910 20150912 | | | request date | 20150909 | | """ rtu = RealTimeUpdate.all(['C1'], datetime.date(2015, 9, 9)) assert len(rtu) == 2 assert rtu[0].id == '70866ce8-0638-4fa1-8556-1ddfa22d09d4' assert rtu[1].id == '70866ce8-0638-4fa1-8556-1ddfa22d09d5' """ contributor C1 VehicleJourney vj1 Circulation date 20150908 20150910 20150912 | | | request date | 20150910 | """ rtu = RealTimeUpdate.all(['C1'], datetime.date(2015, 9, 10)) assert len(rtu) == 2 """ contributor C1 VehicleJourney vj1 Circulation date 20150908 20150910 20150912 | | | request date | | 20150911 | """ rtu = RealTimeUpdate.all(['C1'], datetime.date(2015, 9, 11)) assert len(rtu) == 1 assert rtu[0].id == '70866ce8-0638-4fa1-8556-1ddfa22d09d5' """ contributor C1 VehicleJourney vj1 Circulation date 20150908 20150910 20150912 | | | request date | | 20150912 """ rtu = RealTimeUpdate.all(['C1'], datetime.date(2015, 9, 12)) assert len(rtu) == 1 """ contributor C1 VehicleJourney vj1 Circulation date 20150908 20150910 20150912 | | | request date | | | 20150913 """ rtu = RealTimeUpdate.all(['C1'], datetime.date(2015, 9, 13)) assert len(rtu) == 0 """ contributor C1 VehicleJourney vj1 Circulation date 20150908 20150910 20150912 | | | request interval date |---------| | | | 20150905 20150906 """ rtu = RealTimeUpdate.all(['C1'], datetime.date(2015, 9, 05), datetime.date(2015, 9, 06)) assert len(rtu) == 0 """ contributor C1 VehicleJourney vj1 Circulation date 20150908 20150910 20150912 | | | request interval date |--------------------| | | 20150905 20150908 """ rtu = RealTimeUpdate.all(['C1'], datetime.date(2015, 9, 05), datetime.date(2015, 9, 8)) assert len(rtu) == 1 """ contributor C1 VehicleJourney vj1 Circulation date 20150908 20150910 20150912 | | | request interval date |-------------------------| | | 20150905 20150909 """ rtu = RealTimeUpdate.all(['C1'], datetime.date(2015, 9, 05), datetime.date(2015, 9, 9)) assert len(rtu) == 1 """ contributor C1 VehicleJourney vj1 Circulation date 20150908 20150910 20150912 | | | request interval date |----------------------------------------------------| | 20150905 20150910 """ rtu = RealTimeUpdate.all(['C1'], datetime.date(2015, 9, 05), datetime.date(2015, 9, 10)) assert len(rtu) == 2 """ contributor C1 VehicleJourney vj1 Circulation date 20150908 20150910 20150912 | | | request interval date |----------------------------------------------------------------| | 20150905 20150911 """ rtu = RealTimeUpdate.all(['C1'], datetime.date(2015, 9, 05), datetime.date(2015, 9, 11)) assert len(rtu) == 2 """ contributor C1 VehicleJourney vj1 Circulation date 20150908 20150910 20150912 | | | request interval date |----------------------------------------------------------------------------| 20150905 20150912 """ rtu = RealTimeUpdate.all(['C1'], datetime.date(2015, 9, 05), datetime.date(2015, 9, 12)) assert len(rtu) == 3 """ contributor C1 VehicleJourney vj1 Circulation date 20150908 20150910 20150912 | | | request interval date |--------------------------------------------------------------------------------------| 20150905 20150914 """ rtu = RealTimeUpdate.all(['C1'], datetime.date(2015, 9, 05), datetime.date(2015, 9, 14)) assert len(rtu) == 3 """ contributor C1 VehicleJourney vj1 Circulation date 20150908 20150910 20150912 | | | request interval date |------------------------------------------------------------------| 20150908 20150914 """ rtu = RealTimeUpdate.all(['C1'], datetime.date(2015, 9, 8), datetime.date(2015, 9, 14)) assert len(rtu) == 3 """ contributor C1 VehicleJourney vj1 Circulation date 20150908 20150910 20150912 | | | request interval date |----------------------------------------------------------------| 20150909 20150914 """ rtu = RealTimeUpdate.all(['C1'], datetime.date(2015, 9, 9), datetime.date(2015, 9, 14)) assert len(rtu) == 2 """ contributor C1 VehicleJourney vj1 Circulation date 20150908 20150910 20150912 | | | request interval date |-----------------------------------| 20150910 20150914 """ rtu = RealTimeUpdate.all(['C1'], datetime.date(2015, 9, 10), datetime.date(2015, 9, 14)) assert len(rtu) == 2 """ contributor C1 VehicleJourney vj1 Circulation date 20150908 20150910 20150912 | | | request interval date |--------------------------------| 20150911 20150914 """ rtu = RealTimeUpdate.all(['C1'], datetime.date(2015, 9, 11), datetime.date(2015, 9, 14)) assert len(rtu) == 1 """ contributor C1 VehicleJourney vj1 Circulation date 20150908 20150910 20150912 | | | request interval date |-----------| 20150912 20150914 """ rtu = RealTimeUpdate.all(['C1'], datetime.date(2015, 9, 12), datetime.date(2015, 9, 14)) assert len(rtu) == 1 """ contributor C1 VehicleJourney vj1 Circulation date 20150908 20150910 20150912 | | | request interval date |---------| 20150913 20150914 """ rtu = RealTimeUpdate.all(['C1'], datetime.date(2015, 9, 13), datetime.date(2015, 9, 14)) assert len(rtu) == 0 rtu = RealTimeUpdate.all(['C2'], datetime.date(2015, 9, 6)) assert len(rtu) == 1 rtu = RealTimeUpdate.all(['C2'], datetime.date(2015, 9, 12)) assert len(rtu) == 1 rtu = RealTimeUpdate.all(['C1', 'C2'], datetime.date(2015, 9, 12)) assert len(rtu) == 2