Example #1
0
    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)
Example #2
0
 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)
Example #3
0
 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")
Example #4
0
 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)
Example #5
0
 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)
Example #6
0
 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")
Example #7
0
 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)
Example #8
0
    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)
Example #9
0
    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")
Example #10
0
    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")
Example #11
0
    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)
Example #12
0
	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)
Example #13
0
 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)
Example #14
0
 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)
Example #15
0
 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)
Example #16
0
 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")
Example #17
0
 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"])
Example #18
0
    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])
Example #19
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."
     )
Example #20
0
 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"])
Example #21
0
    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)
Example #22
0
    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")
Example #23
0
    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)
Example #24
0
    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)
Example #25
0
 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)
Example #26
0
    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")
Example #27
0
    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)
Example #28
0
    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)
Example #29
0
 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"])
Example #30
0
 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)