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