コード例 #1
0
def add_profile_pic(*,
                    image: Image = Depends(upload_image),
                    db: Session = Depends(database.get_db),
                    current_user: User = Depends(
                        auth.get_current_active_user)):
    user = user_repo.get(db, id=current_user.id)
    user_repo.add_profile_pic(db, db_obj=user, image=image)
    return {"url": image.url}
コード例 #2
0
ファイル: test_user.py プロジェクト: robovoid123/EasyAuction
def test_get_user(db: Session) -> None:
    password = random_lower_string()
    username = random_email()
    user_in = UserCreate(email=username, password=password, is_superuser=True)
    user = user_repo.create(db, obj_in=user_in)
    user_2 = user_repo.get(db, id=user.id)
    assert user_2
    assert user.email == user_2.email
    assert jsonable_encoder(user) == jsonable_encoder(user_2)
コード例 #3
0
ファイル: test_user.py プロジェクト: robovoid123/EasyAuction
def test_update_user(db: Session) -> None:
    password = random_lower_string()
    email = random_email()
    user_in = UserCreate(email=email, password=password, is_superuser=True)
    user = user_repo.create(db, obj_in=user_in)
    new_password = random_lower_string()
    user_in_update = UserUpdate(password=new_password, is_superuser=True)
    user_repo.update(db, db_obj=user, obj_in=user_in_update)
    user_2 = user_repo.get(db, id=user.id)
    assert user_2
    assert user.email == user_2.email
    assert verify_password(new_password, user_2.hashed_password)
コード例 #4
0
ファイル: auth.py プロジェクト: robovoid123/EasyAuction
def get_current_user(db: Session = Depends(get_db),
                     token: str = Depends(reusable_oauth2)) -> User:
    try:
        payload = jwt.decode(token,
                             settings.SECRET_KEY,
                             algorithms=[security.ALGORITHM])
        token_data = TokenPayload(**payload)
    except (jwt.JWTError, ValidationError):
        raise HTTPException(
            status_code=status.HTTP_403_FORBIDDEN,
            detail="Could not validate credentials",
        )
    user = user_repo.get(db, id=token_data.sub)
    if not user:
        raise HTTPException(status_code=404, detail="User not found")
    return user
コード例 #5
0
def get_user(usr_id: int, db: Session = Depends(database.get_db)):
    user = user_repo.get(db, id=usr_id)
    if not user:
        raise HTTPException(status_code=status.HTTP_404_NOT_FOUND,
                            detail="user not found")
    return user