def test_register_new_user_fail(self, validateTokenMock, FakeGet): expected = { "birthdate": "11-11-2011", "country": "Chile", "email": "*****@*****.**", "password": "******", "images": ["No tengo imagen"], "name": "Cosme", "surname": "Fulanito", "type": "passenger", "username": "******" } self.app = app.test_client() response = self.app.post(V1_URL + '/users', headers={"UserToken": "A fake token"}, data=json.dumps(expected), content_type='application/json') print(response) response_parsed = json.loads(response.get_data()) print(response_parsed) assert (response.status_code == 500) assert (response_parsed['code'] == 500)
def test_getall_user_trips_nonexistent_user(self, validateTokenMock, FakeGet): self.app = app.test_client() response = self.app.get(V1_URL + "/users/7/trips", headers={"UserToken": "A fake token"}) response_parsed = json.loads(response.get_data()) assert (response.status_code == 404)
def test_getall_user_trips_error(self, validateTokenMock, FakeGet): self.app = app.test_client() response = self.app.get(V1_URL + "/users/2/trips", headers={"UserToken": "A fake token"}) response_parsed = json.loads(response.get_data()) assert (response.status_code == 500) assert (response_parsed["message"] == "Unknown Error")
def test_delete_car_nonexistent(self, validateTokenMock, FakeDelete): self.app = app.test_client() response = self.app.delete(V1_URL + '/users/2/cars/13', headers={"UserToken": "A fake token"}, content_type='application/json') response_parsed = json.loads(response.get_data()) assert (response.status_code == 404)
def test_delete_user_by_id_nonexistent(self, validateTokenMock, FakeDelete): self.app = app.test_client() response = self.app.delete(V1_URL + '/users/2', headers={'UserToken': "A fake token"}, content_type='application/json') assert (response.status_code == 404)
def test_get_trip_by_id_nonexistent(self, validateTokenMock, FakeGet): self.app = app.test_client() response = self.app.get(V1_URL + "/trips/12555", headers={"UserToken": "A fake token"}) response_parsed = json.loads(response.get_data()) assert (response.status_code == 404) assert (response_parsed['message'] == "Not found")
def test_get_trip_by_id_success(self, validateTokenMock, FakeGet): expected = trips_db[0] self.app = app.test_client() response = self.app.get(V1_URL + "/trips/1", headers={"UserToken": "A fake token"}) response_parsed = json.loads(response.get_data()) assert (response.status_code == 200) assert (response_parsed["trip"] == expected)
def test_get_user_by_id_non_existent(self, validateTokenMock, FakeGet): self.app = app.test_client() response = self.app.get(V1_URL + '/users/7', headers={"UserToken": "A fake token"}) response_parsed = json.loads(response.get_data()) print(response_parsed) assert (response.status_code == 404) assert (response_parsed['code'] == 404)
def test_delete_car_error(self, validateTokenMock, FakeDelete): self.app = app.test_client() response = self.app.delete(V1_URL + '/users/2/cars/14', headers={"UserToken": "A fake token"}, content_type='application/json') response_parsed = json.loads(response.get_data()) assert (response.status_code == 500) assert (response_parsed["message"] == "Unexpected error")
def test_delete_car_unauthorized(self, validateTokenMock, FakeDelete): self.app = app.test_client() response = self.app.delete(V1_URL + '/users/1/cars/12', headers={"UserToken": "A fake token"}, content_type='application/json') response_parsed = json.loads(response.get_data()) assert (response.status_code == 403) assert (response_parsed["message"] == "Forbidden")
def test_getall_user_cars_unauthorized(self): expected = "Bad request - missing token" self.app = app.test_client() response = self.app.get(V1_URL + '/users/1/cars') response_parsed = json.loads(response.get_data()) assert (response.status_code == 400) assert (response_parsed["message"] == expected) assert (response_parsed["code"] == 400)
def test_getall_user_paymethods_authorized(self, validateTokenMock, FakeGet): expected = paymethodsList self.app = app.test_client() response = self.app.get(V1_URL + "/payment", headers={"UserToken" : "A fake token"}) response_parsed = json.loads(response.get_data()) assert response_parsed["paymethods"] == expected assert(response.status_code == 200)
def test_passenger_confirm_trip_error_bad_state(self, validateTokenMock): action = {"action": TripStates.ACTION_PASSENGER_CONFIRM} self.app = app.test_client() response = self.app.post(V1_URL + "/trips/3/action", headers={"UserToken": "A fake token"}, data=json.dumps(action), content_type='application/json') response_parsed = json.loads(response.get_data()) print(response_parsed) assert (response.status_code == 400)
def test_passenger_rates_driver_invalid(self, validateTokenMock): action = {"action": TripStates.ACTION_RATE, "rating": 17} self.app = app.test_client() response = self.app.post(V1_URL + "/trips/13/action", headers={"UserToken": "A fake token"}, data=json.dumps(action), content_type='application/json') response_parsed = json.loads(response.get_data()) print(response_parsed) assert (response.status_code == 400)
def test_passenger_pays_success(self, validateTokenMock, FakePost): action = {"action": TripStates.ACTION_PAY, "paymethod": "card"} self.app = app.test_client() response = self.app.post(V1_URL + "/trips/14/action", headers={"UserToken": "A fake token"}, data=json.dumps(action), content_type='application/json') response_parsed = json.loads(response.get_data()) print(response_parsed) assert (response.status_code == 201)
def test_estimate_trip_unauthorized(self, validateTokenMock): trip = default_db[1]["trips"][0] self.app = app.test_client() response = self.app.post(V1_URL + "/trips/estimation", headers={"UserToken": "A fake token"}, data=json.dumps(trip), content_type='application/json') response_parsed = json.loads(response.get_data()) assert (response.status_code == 403) assert (response_parsed["message"] == "Forbidden")
def test_driver_accept_trip_state_error(self, validateTokenMock): action = {"action": TripStates.ACTION_DRIVER_ACCEPT} self.app = app.test_client() response = self.app.post(V1_URL + "/trips/3/action", headers={"UserToken": "A fake token"}, data=json.dumps(action), content_type='application/json') response_parsed = json.loads(response.get_data()) assert (response.status_code == 400) assert ("Bad request" in response_parsed["message"])
def test_getall_user_cars_authorized(self, validateTokenMock, FakeGet): expected = default_db[0] self.app = app.test_client() response = self.app.get(V1_URL + '/users/1/cars', headers={"UserToken": "A fake token"}) response_parsed = json.loads(response.get_data()) assert (response.status_code == 200) assert (response_parsed['cars'] == expected['cars'][0])
def test_get_passengerrate_error(self, validateTokenMock, FakeGet): self.app = app.test_client() response = self.app.get(V1_URL + '/users/1/rating', headers={"UserToken": "A fake token"}) response_parsed = json.loads(response.get_data()) assert (response.status_code == 400) assert ( response_parsed["message"] == "The requested user is not a driver. Only drivers receive ratings." )
def test_new_trip_error_bad_directions(self, validateTokenMock, FakePost): directions = {} self.app = app.test_client() response = self.app.post(V1_URL + "/trips", headers={"UserToken": "A fake token"}, data=json.dumps(directions), content_type='application/json') response_parsed = json.loads(response.get_data()) assert (response.status_code == 400) assert ("Bad request" in response_parsed["message"])
def test_get_car_by_id_success(self, validateTokenMock, FakeGet): expected = default_db[0]["cars"][0]["properties"][0] self.app = app.test_client() response = self.app.get(V1_URL + '/users/1/cars/12', headers={"UserToken": "A fake token"}) response_parsed = json.loads(response.get_data()) print(response_parsed) assert (response.status_code == 200) assert (response_parsed['car'] == expected)
def test_register_new_car_fail(self, validateTokenMock, FakePost): expected = {"name": "Ferrari", "value": "HBP111"} self.app = app.test_client() response = self.app.post(V1_URL + '/users/2/cars', headers={"UserToken": "A fake token"}, data=json.dumps(expected), content_type='application/json') response_parsed = json.loads(response.get_data()) assert (response.status_code == 500) assert (response_parsed["message"] == "Unexpected error")
def test_register_new_car_success(self, validateTokenMock, FakePost): expected = {"name": "Ferrari", "value": "HBP111"} self.app = app.test_client() response = self.app.post(V1_URL + '/users/1/cars', headers={"UserToken": "A fake token"}, data=json.dumps(expected), content_type='application/json') response_parsed = json.loads(response.get_data()) assert (response.status_code == 201) assert (response_parsed["car"]["properties"][0] == expected)
def test_get_driverrate_success(self, validateTokenMock, FakeGet): expected = {} expected["_id"] = 3 expected["rating"] = {"rate": 0, "rateCount": 0} self.app = app.test_client() response = self.app.get(V1_URL + '/users/3/rating', headers={"UserToken": "A fake token"}) response_parsed = json.loads(response.get_data()) assert (response.status_code == 200) assert (response_parsed['rating'] == expected)
def test_estimate_trip_success(self, validateTokenMock, FakePost): trip = default_db[0]["trips"][0] expected = {"cost": {"currency": "dollar", "value": "200"}} self.app = app.test_client() response = self.app.post(V1_URL + "/trips/estimation", headers={"UserToken": "A fake token"}, data=json.dumps(trip), content_type='application/json') response_parsed = json.loads(response.get_data()) assert (response.status_code == 200) assert (response_parsed["cost"] == expected)
def test_get_car_by_id_error(self, validateTokenMock, FakeGet): expected = default_db[0]["cars"][0]["properties"][0] self.app = app.test_client() response = self.app.get(V1_URL + '/users/3/cars/17', headers={"UserToken": "A fake token"}) response_parsed = json.loads(response.get_data()) print(response_parsed) assert (response.status_code == 500) assert (response_parsed["message"] == "Unexpected error")
def test_get_userlocation_success(self, validateTokenMock, FakeGet): expected = {} expected["_id"] = 10 expected["online"] = True expected["coord"] = {'lat': '0', 'lng': '0'} self.app = app.test_client() response = self.app.get(V1_URL + '/users/10/location', headers={"UserToken": "A fake token"}) response_parsed = json.loads(response.get_data()) assert (response.status_code == 200) assert (response_parsed['user_loc'] == expected)
def test_get_user_by_id_in_shared(self, validateTokenMock, FakeGet): expected = default_db[2] self.app = app.test_client() response = self.app.get(V1_URL + '/users/3', headers={"UserToken": "A fake token"}) response_parsed = json.loads(response.get_data()) print(response_parsed) assert (response.status_code == 200) assert (response_parsed['user'] == expected) assert (response_parsed['code'] == 200)
def test_get_proposed_trips_success(self, validateTokenMock, FakeGet): expected = [ trip for trip in trips_db if trip["state"] == TripStates.TRIP_PROPOSED ] print(trips_db) self.app = app.test_client() response = self.app.get(V1_URL + "/trips?limit=10&filter=proposed", headers={"UserToken": "A fake token"}, content_type='application/json') response_parsed = json.loads(response.get_data()) assert (response.status_code == 200) assert (expected == response_parsed["trips"])
def test_passenger_rates_driver_valid(self, validateTokenMock): action = {"action": TripStates.ACTION_RATE, "rating": 4} self.app = app.test_client() response = self.app.post(V1_URL + "/trips/13/action", headers={"UserToken": "A fake token"}, data=json.dumps(action), content_type='application/json') response_parsed = json.loads(response.get_data()) print(response_parsed) assert (response.status_code == 200) assert ("trip" in response_parsed) trip = response_parsed["trip"] assert (trip["state"] == TripStates.TRIP_FINISHED_RATED)