def test_update(db: Session) -> RoundModel: # creates one car and one track in table car = create_random_car(db) track = create_random_track(db) name = random_lower_string() description = random_lower_string() reason = "Test" ref_date = "2020-08-01" track_id = track.id car_id = car.id item_in = RoundCreate(name=name, description=description, reason=reason, ref_date=ref_date, track_id=track_id, car_id=car_id) item = create(db_session=db, obj_in=item_in) item_update = RoundUpdate(name=random_lower_string(), description=random_lower_string(), reason=reason, ref_date=ref_date, track_id=track_id, car_id=car_id) updated_round = update(db_session=db, round_id=item.id, obj_in=item_update) assert updated_round.name == item_update.name assert updated_round.description == item_update.description
def test_create_duplicate_item(db: Session) -> RoundModel: # creates one car and one track in table car = create_random_car(db) track = create_random_track(db) name = random_lower_string() description = random_lower_string() reason = "Test" ref_date = "2020-08-01" track_id = track.id car_id = car.id item_in = RoundCreate(name=name, description=description, reason=reason, ref_date=ref_date, track_id=track_id, car_id=car_id) item = create(db_session=db, obj_in=item_in) assert item.name == name assert item.description == description assert item.reason == reason assert item.track_id == track_id assert item.car_id == car_id assert item.id is not None with pytest.raises(ExistenceException): create(db_session=db, obj_in=item_in)
def test_read_one(db: Session) -> RoundModel: # creates one car and one track in table car = create_random_car(db) track = create_random_track(db) name = random_lower_string() description = random_lower_string() reason = "Test" ref_date = "2020-08-01" track_id = track.id car_id = car.id item_in = RoundCreate(name=name, description=description, reason=reason, ref_date=ref_date, track_id=track_id, car_id=car_id) item = create(db_session=db, obj_in=item_in) item_id = item.id read_item = read_one(db_session=db, round_id=item_id) assert read_item.name == name assert read_item.description == description assert read_item.reason == reason assert read_item.track_id == track_id assert read_item.car_id == car_id
def test_update_invalid_one(db: Session) -> CarModel: item_id = 1239083330988 item_update = CarUpdate(name=random_lower_string(), description=random_lower_string()) with pytest.raises(NonExistenceException): update(db=db, car_id=item_id, car_info=item_update)
def test_update_invalid_track(): update_data = { "name": random_lower_string(), "description": random_lower_string() } update_response = client.put(f"/api/track/{0}", json=update_data) assert update_response.status_code == 303
def test_update_invalid_car(): update_data = { "name": random_lower_string(), "description": random_lower_string(), "creation_date": "2020-06-05" } update_response = client.put(f"/api/car/{0}", json=update_data) assert update_response.status_code == 404
def test_delete_track(): insert_data = { "name": random_lower_string(), "description": random_lower_string() } insert_response = client.post("/api/track/", json=insert_data) track_name = insert_response.json()["name"] delete_response = client.delete(f"/api/track/{track_name}") assert delete_response.status_code == 200 assert delete_response.json()["name"] == track_name
def test_read_one(db: Session) -> TrackModel: name = random_lower_string() description = random_lower_string() item_in = TrackCreate(name=name, description=description) item = create(db_session=db, obj_in=item_in) item_name = item.name read_item = read_one_by_name(db_session=db, Track_name=item_name) assert read_item.description == description
def test_create_item(db: Session) -> TrackModel: name = random_lower_string() description = random_lower_string() item_in = TrackCreate(name=name, description=description) item = create(db_session=db, obj_in=item_in) assert item.name == name assert item.description == description assert item.id is not None
def test_create_duplicate_track(): data = { "name": random_lower_string(), "description": random_lower_string() } first_response = client.post("/api/track/", json=data) assert first_response.status_code == 200 second_response = client.post("/api/track/", json=data) assert second_response.status_code == 303
def test_create_duplicate_car(): data = {"name": random_lower_string(), "description": random_lower_string(), "creation_date": "2020-06-04"} first_response = client.post("/api/car/", json=data) assert first_response.status_code == 200 second_response = client.post("/api/car/", json=data) assert second_response.status_code == 303
def test_delete(db: Session) -> TrackModel: name = random_lower_string() description = random_lower_string() item_in = TrackCreate(name=name, description=description) item = create(db_session=db, obj_in=item_in) item_name = item.name delete_item = delete(db_session=db, track_name=item_name) assert delete_item.name == name
def test_create_car(): data = {"name": random_lower_string(), "description": random_lower_string(), "creation_date": "2020-06-04"} car_response = client.post("/api/car/", json=data) assert car_response.status_code == 200 content = car_response.json() assert content["name"] == data["name"] assert content["description"] == data["description"] assert content["creation_date"] == data["creation_date"] assert "id" in content
def test_update(db: Session) -> TrackModel: name = random_lower_string() description = random_lower_string() item_in = TrackCreate(name=name, description=description) create(db_session=db, obj_in=item_in) item_update = TrackUpdate(name=random_lower_string(), description=random_lower_string()) updated_track = update(db_session=db, track_name=name, obj_in=item_update) assert updated_track.name == item_update.name assert updated_track.description == item_update.description
def test_create_track(): data = { "name": random_lower_string(), "description": random_lower_string() } response = client.post("/api/track/", json=data) assert response.status_code == 200 content = response.json() assert content["name"] == data["name"] assert content["description"] == data["description"] assert "id" in content
def test_create_duplicate_item(db: Session) -> TrackModel: name = random_lower_string() description = random_lower_string() item_in = TrackCreate(name=name, description=description) item = create(db_session=db, obj_in=item_in) assert item.name == name assert item.description == description assert item.id is not None with pytest.raises(ExistenceException): create(db_session=db, obj_in=item_in)
def test_create_item(db: Session) -> CarModel: name = random_lower_string() description = random_lower_string() creation_date = "2020-06-04" item_in = CarCreate(name=name, description=description, creation_date=creation_date) item = create(db=db, car_in=item_in) assert item.name == name assert item.description == description assert item.id is not None
def test_delete_car(): data = {"name": random_lower_string(), "description": random_lower_string(), "creation_date": "2020-06-04" } car_response = client.post("/api/car/", json=data) car_name = car_response.json()["name"] # read_response = client.get(f"/api/car/{car_name}") delete_response = client.delete(f"/api/car/{car_name}") assert delete_response.status_code == 200 assert delete_response.json()["name"] == car_name
def test_read_car_by_name(): insert_data = {"name": random_lower_string(), "description": random_lower_string(), "creation_date": "2020-06-02"} car_response = client.post("/api/car/", json=insert_data) assert car_response.status_code == 200 read_name = car_response.json()["name"] read_response = client.get(f"/api/car/{read_name}") response_data = car_response.json() assert read_response.status_code == 200 assert insert_data["description"] == response_data["description"] assert insert_data["creation_date"] == response_data["creation_date"]
def test_delete(db: Session) -> CarModel: name = random_lower_string() description = random_lower_string() creation_date = "2020-06-04" item_in = CarCreate(name=name, description=description, creation_date=creation_date) item = create(db=db, car_in=item_in) item_name = item.name delete_item = delete(db=db, name=item_name) assert delete_item.name == name
def test_read_one(db: Session) -> CarModel: name = random_lower_string() description = random_lower_string() creation_date = "2020-06-04" item_in = CarCreate(name=name, description=description, creation_date=creation_date) item = create(db=db, car_in=item_in) item_name = item.name read_item = read_one(db_session=db, name=item_name) assert read_item.description == description assert read_item.creation_date.strftime('%Y-%m-%d') == creation_date
def test_update_car(): insert_data = {"name": random_lower_string(), "description": random_lower_string(), "creation_date": "2020-06-04"} insert_response = client.post("/api/car/", json=insert_data) update_id = insert_response.json()["id"] assert insert_response.status_code == 200 update_data = { "name": random_lower_string(), "description": random_lower_string(), "creation_date": "2020-06-05" } update_response = client.put(f"/api/car/{update_id}", json=update_data) assert update_response.status_code == 200 assert update_response.json()["name"] == update_data["name"]
def test_read_track(): insert_data = { "name": random_lower_string(), "description": random_lower_string() } insert_response = client.post("/api/track/", json=insert_data) assert insert_response.status_code == 200 read_name = insert_response.json()["name"] read_response = client.get(f"/api/track/{read_name}") response_data = insert_response.json() assert read_response.status_code == 200 assert insert_data["name"] == response_data["name"] assert insert_data["description"] == response_data["description"]
def test_update_invalid_round(): update_data = { "description": random_lower_string(), "ref_date": "2020-10-20" } update_response = client.put(f"/api/round/{0}", json=update_data) assert update_response.status_code == 303
def test_update(db: Session) -> CarModel: name = random_lower_string() description = random_lower_string() creation_date = "2020-06-04" item_in = CarCreate(name=name, description=description, creation_date=creation_date) item = create(db=db, car_in=item_in) item_id = item.id item_update = CarUpdate(name=random_lower_string(), description=random_lower_string()) updated_car = update(db=db, car_id=item_id, car_info=item_update) assert updated_car.name == item_update.name assert updated_car.description == item_update.description
def test_update_round(): car_response = client.post("/api/car/", json={ "name": random_lower_string(), "description": random_lower_string(), "creation_date": "2020-06-02" }) car_id = car_response.json()["id"] track_response = client.post("/api/track/", json={ "name": random_lower_string(), "description": random_lower_string() }) track_id = track_response.json()["id"] insert_data = { "name": random_lower_string(), "description": random_lower_string(), "reason": "Test", "track_id": track_id, "car_id": car_id } insert_response = client.post("/api/round/", json=insert_data) assert insert_response.status_code == 200 update_id = insert_response.json()["id"] update_data = { "description": random_lower_string(), "ref_date": "2020-10-20" } update_response = client.put(f"/api/round/{update_id}", json=update_data) assert update_response.status_code == 200
def test_update_track(): insert_data = { "name": random_lower_string(), "description": random_lower_string() } insert_response = client.post("/api/track/", json=insert_data) assert insert_response.status_code == 200 update_name = insert_response.json()["name"] update_data = { "name": random_lower_string(), "description": random_lower_string() } update_response = client.put(f"/api/track/{update_name}", json=update_data) assert update_response.status_code == 200 assert update_response.json()["name"] == update_data["name"]
def test_read_round_by_date(): car_response = client.post("/api/car/", json={ "name": random_lower_string(), "description": random_lower_string(), "creation_date": "2020-06-02" }) car_id = car_response.json()["id"] track_response = client.post("/api/track/", json={ "name": random_lower_string(), "description": random_lower_string() }) track_id = track_response.json()["id"] insert_data = { "name": random_lower_string(), "description": random_lower_string(), "reason": "Competition", "track_id": track_id, "car_id": car_id } insert_response = client.post("/api/round/", json=insert_data) assert insert_response.status_code == 200 round_date = str(insert_response.json()["ref_date"]) read_response = client.get(f"/api/round/date/{round_date}") response_data = insert_response.json() assert read_response.status_code == 200 assert insert_data["name"] == response_data["name"] assert insert_data["reason"] == response_data["reason"] assert insert_data["track_id"] == response_data["track_id"] assert insert_data["car_id"] == response_data["car_id"]
def test_create_duplicate_round(): car_response = client.post("/api/car/", json={ "name": random_lower_string(), "description": random_lower_string(), "creation_date": "2020-06-02" }) car_id = car_response.json()["id"] track_response = client.post("/api/track/", json={ "name": random_lower_string(), "description": random_lower_string() }) track_id = track_response.json()["id"] data = { "name": random_lower_string(), "description": random_lower_string(), "reason": "Test", "track_id": track_id, "car_id": car_id } first_response = client.post("/api/round/", json=data) assert first_response.status_code == 200 second_response = client.post("/api/round/", json=data) assert second_response.status_code == 303
def test_delete_round(): car_response = client.post("/api/car/", json={ "name": random_lower_string(), "description": random_lower_string(), "creation_date": "2020-06-02" }) car_id = car_response.json()["id"] track_response = client.post("/api/track/", json={ "name": random_lower_string(), "description": random_lower_string() }) track_id = track_response.json()["id"] data = { "name": random_lower_string(), "description": random_lower_string(), "reason": "Test", "track_id": track_id, "car_id": car_id } response = client.post("/api/round/", json=data) round_id = response.json()["id"] delete_response = client.delete(f"/api/round/{round_id}") assert delete_response.status_code == 200 assert delete_response.json()["id"] == round_id