diff --git a/tests/test_service_users.py b/tests/test_service_users.py index e69de29..6f37128 100644 --- a/tests/test_service_users.py +++ b/tests/test_service_users.py @@ -0,0 +1,69 @@ +from app.services import user_service +from app.services.user_service import ( + authenticate_user, + delete_user, + get_user, + register_user, +) + + +def test_register_user(): + image_path = "images/Aaron_Peirsol/Aaron_Peirsol_0001.jpg" + user_id = "aaron_peirsol" + + with open(image_path, "rb") as f: + image_data = f.read() + result = register_user(user_id, image_data) + + assert result["user_id"] == "aaron_peirsol" + assert result["registered_at"] is not None + + +def test_autenticate_registered_user(setup_user_db): + + image_path = "images/Aaron_Peirsol/Aaron_Peirsol_0001.jpg" + + with open(image_path, "rb") as f: + image_data = f.read() + user_id = authenticate_user(image_data) + + assert user_id == "aaron_peirsol" + + +def test_authenticate_unregistered_user(setup_user_db): + + image_path = "images/Natasha_McElhone/Natasha_McElhone_0001.jpg" + with open(image_path, "rb") as f: + image_data = f.read() + + user_id = authenticate_user(image_data) + + assert user_id is None + + +def test_get_registered_user(setup_user_db): + user_id = "aaron_peirsol" + user_info = get_user(user_id) + + assert user_info["user_id"] == user_id + assert "registered_at" in user_info + + +def test_delete_registered_user(setup_user_db): + user_id = "aaron_peirsol" + result = delete_user(user_id) + + assert result is True + user_info = get_user(user_id) + assert user_info is None + + +def test_get_unregistered_user(setup_user_db): + # Given: 등록되지 않은 사용자 ID + unregistered_user_id = "non_existing_user" + + # When: 사용자 정보 조회 서비스를 호출 + result = user_service.get_user(unregistered_user_id) + + # Then: 사용자 정보 조회 서비스가 None을 반환해야 함 + assert result is None