def test_search_trip_valid(self): ''' We move Driver + 0.00010 North 20 times, until he reaches rider location. Rider is +0.002000 North initially. Before this method: Driver Position: '46.500000 11.340000' Rider Position: '46.502000 11.340000' After this method: Driver Position: '46.502000 11.340000' Rider Position: '46.502000 11.340000' ''' for i in range (1,21): self.driver.position_lat += 0.000100 self.driver_position = utils.georss_point_from_coords(self.driver.position_lat,self.driver.position_lon) self.driver.location = classes.Location(georss_point=self.driver_position) response = self.driver.update_position(location=self.driver.location) assert response['code'] == response_codes.CREATED or response['code'] == response_codes.ALL_OK response = self.rider.search_ride(self.rider.location,self.rider.destination) assert response['code'] == response_codes.ALL_OK self.rider.trip = response['value']['trips'][0] driver_position = utils.coords_from_georss_point(self.driver.get_position()['value']['georss_point']) rider_position = utils.coords_from_georss_point(self.rider.get_position()['value']['georss_point']) assert driver_position == rider_position
def test_search_trip_driver_moving_away_from_rider(self): ''' We now move the Driver to South, making it moving away from rider. Therefore, rider should not get his trip in a search. Before this method: Driver Position: '46.503000 11.340000' Rider Position: '46.502000 11.340000' After this method: Driver Position: '46.501000 11.340000' Rider Position: '46.502000 11.340000' ''' for i in range (1,21): self.driver.position_lat -= 0.0001 self.driver_position = utils.georss_point_from_coords(self.driver.position_lat,self.driver.position_lon) self.driver.location = classes.Location(georss_point=self.driver_position) response = self.driver.update_position(location=self.driver.location) assert response['code'] == response_codes.CREATED or response['code'] == response_codes.ALL_OK driver_position = utils.coords_from_georss_point(self.driver.get_position()['value']['georss_point']) response = self.rider.search_ride(self.rider.location,self.rider.destination) assert response['code'] == response_codes.ALL_OK with py.test.raises(KeyError): assert response['trips'] == True