def test_stop_schedule_with_realtime_only(self): mock_requests = MockRequests({ 'http://XXXX?stop_id=syn_stoppoint1': ( { "departures": [ { "line": "Kisio数字 A", "stop": "syn_stoppoint1", "direction_id": "3341", "direction_name": "Piscine Chambéry", "datetime": "2016-01-02T10:17:17+02:00", "type": "E", }, { "line": "Kisio数字 A", "stop": "syn_stoppoint1", "direction_id": "3341", "direction_name": "Piscine Chambéry", "type": "E", "datetime": "2016-01-02T11:17:17+02:00", }, ] }, 200, ) }) with mock.patch('requests.get', mock_requests.get): query = self.query_template_scs.format(sp='SP_1') response = self.query_region(query) scs = get_not_null(response, 'stop_schedules') assert len(scs) == 1 # 2016-01-02 08:17:00 assert get_schedule(scs, 'SP_1', 'code A') == [ { 'rt': True, 'dt': '20160102T081717' }, { 'rt': True, 'dt': '20160102T091717' }, ] query = self.query_template_dep.format(sp='SP_1') response = self.query_region(query) dep = get_not_null(response, 'departures') assert len(dep) == 2 assert get_departure(dep, 'SP_1', 'code A') == [ { 'rt': True, 'dt': '20160102T081717' }, { 'rt': True, 'dt': '20160102T091717' }, ]
def test_stop_schedule_with_realtime_only(self): mock_requests = MockRequests({ 'http://XXXX/syn_stoppoint1': ( [{ "name": "Lianes 5", "code": "Kisio数字 A", "type": "Bus", "schedules": [ { "vehicle_lattitude": "44.792112483318", "vehicle_longitude": "-0.56718390706918", "waittime_text": "11 minutes", "trip_id": "268436451", "schedule_id": "268476273", "destination_id": "3341", "destination_name": "Piscine Chambéry", "departure": "2016-01-02 08:17:17", "departure_commande": "2016-01-02 08:17:17", "departure_theorique": "2016-01-02 08:17:17", "arrival": "2016-01-02 08:16:00", "arrival_commande": "2016-01-02 08:16:00", "arrival_theorique": "2016-01-02 08:16:00", "comment": "", "realtime": "1", "waittime": "00:10:53", "updated_at": "2016-01-02 08:16:00", "vehicle_id": "2662", "vehicle_position_updated_at": "2016-01-02 08:16:00", "origin": "bdsi", }, { "vehicle_lattitude": "44.814043370749", "vehicle_longitude": "-0.57294492449656", "waittime_text": "19 minutes", "trip_id": "268436310", "schedule_id": "268468351", "destination_id": "3341", "destination_name": "Piscine Chambéry", "departure": "2016-01-02 09:17:17", "departure_commande": "2016-01-02 09:17:17", "departure_theorique": "2016-01-02 09:17:17", "arrival": "2016-01-02 14:45:35", "arrival_commande": "2016-01-02 09:16:00", "arrival_theorique": "2016-01-02 09:16:00", "comment": "", "realtime": "1", "waittime": "00:19:13", "updated_at": "2016-01-02 09:16:00", "vehicle_id": "2660", "vehicle_position_updated_at": "2016-01-02 09:16:00", "origin": "bdsi", }, ], }], 200, ) }) with mock.patch('requests.get', mock_requests.get): query = self.query_template_scs.format(sp='SP_1') response = self.query_region(query) scs = get_not_null(response, 'stop_schedules') assert len(scs) == 1 # 2016-01-02 08:17:00 assert get_schedule(scs, 'SP_1', 'code A') == [ { 'rt': True, 'dt': '20160102T081717' }, { 'rt': True, 'dt': '20160102T091717' }, ] query = self.query_template_dep.format(sp='SP_1') response = self.query_region(query) dep = get_not_null(response, 'departures') assert len(dep) == 2 assert get_departure(dep, 'SP_1', 'code A') == [ { 'rt': True, 'dt': '20160102T081717' }, { 'rt': True, 'dt': '20160102T091717' }, ]