Example #1
0
def test_get_db(monkeypatch):
    monkeypatch.setattr(db, 'SessionLocal', TestSessionLocal)
    Base.metadata.create_all(bind=engine, checkfirst=True)

    session: Session = next(db.get_db())
    team_schema = schemas.TeamBase(team_name='QA')
    team_from_create = crud.create(session, team_schema, models.Team)
    team_from_read = crud.read(session, 1, models.Team)
    assert isinstance(team_from_create, models.Team)
    assert isinstance(team_from_read, models.Team)
    assert team_from_create.team_name == team_from_read.team_name

    Base.metadata.drop_all(bind=engine)
Example #2
0
def test_create(
        Schema: crud.Schema,
        Model: crud.DatabaseModel,
        schema_vals: dict,
        attributes: list[str],
        field: str,
        value: str,
        monkeypatch,
        test_db_seeded: Session):

    def mock_get_password_hash(*args):
        return 'fake_hashed_password'

    monkeypatch.setattr(models.User, 'get_password_hash', mock_get_password_hash)

    schema = Schema(**schema_vals)
    orm_model = crud.create(test_db_seeded, schema, Model)
    assert getattr(orm_model, field) == value
    assert all(getattr(orm_model, field, False) for field in attributes)
Example #3
0
def create_column(column: schemas.ColumnBase, db: Session = Depends(get_db)):
    return crud.create(db, column, models.Column)
Example #4
0
def create_user(user: schemas.UserCreate, db: Session = Depends(get_db)):
    db_user = models.User.get_user_by_email(db, user.email)
    if db_user:
        raise HTTPException(status_code=status.HTTP_400_BAD_REQUEST,
                            detail="Email already registered")
    return crud.create(db, user, models.User)
Example #5
0
def create_project(project: schemas.ProjectBase,
                   db: Session = Depends(get_db)):
    return crud.create(db, project, models.Project)
Example #6
0
def create_team(team: schemas.TeamBase, db: Session = Depends(get_db)):
    return crud.create(db, team, models.Team)