API ν΅ν© ν
μ€νΈ λͺ©λ‘
ν
μ€νΈ λ©μλ: 230κ°
ν
μ€νΈ ν΄λμ€: 10κ°
ν
μ€νΈ λ©μλ: 90κ°
CancelFollowRequestApiTest
| ν
μ€νΈ λ©μλ |
μλλ¦¬μ€ |
cancelFollowRequest_shouldSuccess_01 |
νλ‘μ° μμ² μ·¨μ API ν
μ€νΈ |
cancelFollowRequest_shouldFaile_01 |
μ€ν¨ |
cancelFollowRequest_shouldFaile_02 |
2, μ‘΄μ¬νμ§ μλ νλ‘μ° κ΄κ³μ λν΄μ μμ² μ·¨λ‘λ₯Ό ν κ²½μ° μ€ν¨ κ²μ¦ |
cancelFollowRequest_shouldFail_03 |
3. μ΄λ―Έ μ·¨μ μ²λ¦¬λ νλ‘μ° μμ²μ λν΄μ μ·¨μ μμ²μ ν κ²½μ° μ€ν¨ κ²μ¦ |
| ν
μ€νΈ λ©μλ |
μλλ¦¬μ€ |
changePasswordApiTest_shouldSuccess |
μ¬μ©μ λΉλ°λ²νΈ λ³κ²½ κ΄λ ¨ API ν
μ€νΈ |
changePasswordApiTest_shouldReturn400BadRequest_whenChangePasswordWithout2FA |
μ€ν¨ |
| ν
μ€νΈ λ©μλ |
μλλ¦¬μ€ |
setUserProfile_shouldCreateOrUpdateProfile_whenAuthenticatedUserRequests |
μ¬μ©μ νλ‘ν μμ± ν
μ€νΈ |
setUserProfile_shouldReturn409Conflict_whenUserProfileExists |
μ€ν¨ |
setUserProfile_shouldReturn409Conflict_whenNicknameAlreadyExists |
2. μ€λ³΅λ λλ€μμΌλ‘ μμ μμ²μ 보λμ κ²½μ° 409 Conflict |
login_shouldReturn403_whenUserProfileNotSet |
μ¬μ©μ νλ‘νμ μ€μ νμ§ μμ μνμμ μΈμ¦μ νμλ‘ν κ²½λ‘μ μ μ ν κ²½μ° 403 Forbidden |
| ν
μ€νΈ λ©μλ |
μλλ¦¬μ€ |
createPost_shouldCreatedContent_whenCreatePostWithValidInput |
κ²μκΈ μμ± ν
μ€νΈ |
createPost_shouldReturnBadRequest_whenContentIsBlank |
μ€ν¨ |
createPost_shouldReturnBadRequest_whenContentExceedsMaxLength |
2. κ²μκΈ λ΄μ©μ΄ μ΅λ κΈΈμ΄λ₯Ό μ΄κ³Όν κ²½μ° 400 BadRequest |
CreatePostCommentApiTest
| ν
μ€νΈ λ©μλ |
μλλ¦¬μ€ |
createPostComment_shouldSucceed_whenPostIsActive |
κ²μκΈ λκΈ μμ± ν
μ€νΈ |
createPostComment_shouldReturnBadRequest_whenPostIsDeleted |
μ€ν¨ |
createPostComment_shouldReturnBadRequest_whenPostIsBlocked |
2. BLOCKED μνμ κ²μκΈμ λκΈ μμ± μμ²μ νλ κ²½μ° 400 Bad Request |
createPostComment_shouldReturnBadRequest_whenPostIsArchived |
3. ARCHIVE μνμ κ²μκΈμ λκΈ μμ± μμ²μ νλ κ²½μ° 400 Bad Request |
createPostComment_shouldReturnBadRequest_whenContentIsEmpty |
4. λΉμ΄μλ contentλ‘ μμ²μ λ³΄λΌ κ²½μ° 400 Bad Request |
createPostComment_shouldReturnBadRequest_whenContentExceedsMaxLength |
5. λκΈμ΄ μ΅λ κΈΈμ΄λ₯Ό μ΄κ³Όν κ²½μ° 400 Bad Request |
CreatePostCommentLikeApiTest
| ν
μ€νΈ λ©μλ |
μλλ¦¬μ€ |
likePostComment_shouldReturnCreated_whenUserLikesActiveComment |
κ²μκΈ λκΈ μ’μμ ν
μ€νΈ |
likePostComment_shouldAccumulateLikeCount_whenMultipleUserLike |
2. μ¬λ¬ μ¬μ©μκ° λκΈμ μ’μμλ₯Ό λλ μ κ²½μ° μλ΅ κ²μ¦ |
likePostComment_shouldBeIdempotent_whenUserLikesSameCommentMultipleTimes |
3. λμΌν μ¬μ©μκ° μ¬λ¬λ² μμ²μ 보λ΄λ λ©±λ±νλμ§ κ²μ¦ |
likePostComment_shouldReturnBadRequest_whenCommentIsDeleted |
μ€ν¨ |
likePostComment_shouldReturnBadRequest_whenCommentIsBlocked |
2. BLOCKED μνμ λκΈμ μ’μμ μμ² μ 400 BadRequest |
| ν
μ€νΈ λ©μλ |
μλλ¦¬μ€ |
createPostWithImages_shouldSucceed_whenUploadOneImage |
μ±κ³΅ |
DeactivateMyAccountApiTest
| ν
μ€νΈ λ©μλ |
μλλ¦¬μ€ |
deactivateMyAccount_shouldSuccess_whenUserIdExists |
λ΄ κ³μ λΉνμ±ν ν
μ€νΈ |
deactivateMyAccount_shouldReturn403Forbidden_whenUserRequestAuthorizedEndPointAfterWithdraw |
μ€ν¨ |
deactivateMyAccount_shouldReturn400BadRequest_whenAccessAuthorizedPathAfterUserDeactivate |
2. κ³μ λΉνμ±ν ν μΈμ¦μ νμλ‘ν κ²½λ‘λ‘ μ κ·Όμ΄ λΆκ°λ₯νμ§ κ²μ¦ |
deactivateMyAccount_shouldReturn400BadRequest_whenDeactivateWithout2FA |
3. μ΄μ€μΈμ¦ μμ΄ λΉνμ±νλ₯Ό μμ² ν κ²½μ° λΆκ°λ₯νμ§ κ²μ¦ |
deactivateMyAccount_shouldReturn_whenReissueAccessTokenAfterUserDeactivate |
4. κ³μ λΉνμ±ν ν ν ν° μ¬λ°κΈ λΆκ°λ₯νμ§ κ²μ¦ |
| ν
μ€νΈ λ©μλ |
μλλ¦¬μ€ |
deletePostWithImage_shouldSucceed_whenHasImage |
μ±κ³΅ |
deletePostWithImage_shouldSucceed_whenHasNotImage |
2. μ΄λ―Έμ§κ° μλ κ²μκΈ μμ μμ² μ DELETED μν κ²μ¦ |
deletePostWithImage_shouldSucceed_whenHasAllActivities |
3. λͺ¨λ νλμ΄ μλ κ²μκΈμμ λν μμ μμ² μ λ°μ΄ν° κ²μ¦ |
deletePostWithImage_shouldReturnNotFound_whenPostIdNotFound |
1. μ‘΄μ¬νμ§ μλ postIdλ‘ μμ μμ² μ 404 Not Found |
deletePostWithImage_shouldReturnBadRequest_whenPostAlreadyDeleted |
2. μ΄λ―Έ μμ λ κ²μκΈμ λν΄ μμ μμ² μ 400 Bad Request |
deletePostWithImage_shouldReturnBadRequest_whenPostBlocked |
3. μ°¨λ¨λ κ²μκΈμ μμ μμ² μ 400 Bad Request |
deletePostWithImage_shouldReturnForBidden_whenPostWriterNotEqualsRequester |
4. κ²μκΈ μμ±μμ μμ μμ²μκ° μΌμΉ νμ§ μλ κ²½μ° 403 Forbidden |
DeletePostCommentLikeApiTest
| ν
μ€νΈ λ©μλ |
μλλ¦¬μ€ |
cancelPostCommentLike_shouldCancelLikeAndDecreaseLikeCountWhenAlreadyLiked |
κ²μκΈ λκΈ μ’μμ μ·¨μ ν
μ€νΈ |
cancelPostCommentLike_shouldBeIdempotentWhenCancelLikeMultipleTimes |
2. μ¬μ©μκ° μ¬λ¬λ² μ’μμ μ·¨μ μμ²μ 보λ΄λ λ©±λ±νμ§ κ²μ¦ |
cancelPostCommentLike_shouldNotFailWhenUserDidNotLikeBefore |
3. μ¬μ©μκ° μ’μμλ₯Ό λλ₯΄μ§ μμ μνμμ μ·¨μ μμ² μ λ©±λ±νμ§ κ²μ¦ |
| ν
μ€νΈ λ©μλ |
μλλ¦¬μ€ |
cancelPostLike_shouldReturnCreated_whenUserLikedPost |
κ²μκΈ μ’μμ μ·¨μ ν
μ€νΈ |
cancelPostLike_shouldBeIdempotent_whenUserMultipleRequest |
2. μ¬μ©μκ° μ’μμλ₯Ό λλ₯Έ κ²μκΈμ μ’μμ μ·¨μ μμ²μ μ¬λ¬λ² 보λ΄λ λ©±λ±νλμ§ κ²μ¦ |
cancelPostLike_shouldIdempotent_whenUserLikedPostMultipleRequest |
3. μ¬μ©μκ° μ’μμλ₯Ό λλ₯΄μ§ μμ κ²μκΈμ μ’μμ μ·¨μ μμ²μ 보λ΄λ©΄ λ©±λ±νλμ§ κ²μ¦ |
cancelPostLike_shouldReturnBadRequest_whenPostDeleted |
μ€ν¨ |
cancelPostLike_shouldReturnBadRequest_whenPostBlocked |
2. BLOCKED μνμ κ²μκΈμ μ’μμ μ·¨μ μμ²μ 보λ΄λ©΄ BadRequest |
cancelPostLike_shouldReturnBadRequest_whenPostArchive |
3. ARCHIVE μνμ κ²μκΈμ μ’μμ μ·¨μ μμ²μ 보λ΄λ©΄ BadRequest |
| ν
μ€νΈ λ©μλ |
μλλ¦¬μ€ |
followUser_shouldSuccess_01 |
μ¬μ©μ νλ‘μ° μμ² κ΄λ ¨ API ν
μ€νΈ |
followUser_shouldSuccess_02 |
2. λΉκ³΅κ° κ³μ μ νλ‘μ° μμ²νλ κ²½μ° κ²μ¦ |
followUser_shouldFail_01 |
μ€ν¨ |
followUser_shouldFail_02 |
2. νν΄ μ²λ¦¬λ μ¬μ©μλ₯Ό νλ‘μ° μμ²νλ κ²½μ° μ€ν¨ κ²μ¦ |
followUser_shouldFail_03 |
3. λΉνμ±ν μ²λ¦¬ λ μ¬μ©μλ₯Ό νλ‘μ° μμ²νλ κ²½μ° μ€ν¨ κ²μ¦ |
followUser_shouldFail_04 |
4. μμ μκ² νλ‘μ° μμ²μ νλ κ²½μ° μ€ν¨ κ²μ¦ |
| ν
μ€νΈ λ©μλ |
μλλ¦¬μ€ |
getFollowRequests_shouldSuccess_01 |
νλ‘μ° μμ² λͺ©λ‘ μ‘°ν API ν
μ€νΈ |
getFollowRequests_shouldSuccess_02 |
2. νλ‘μ° μμ² λͺ©λ‘ μ 체 μ‘°ν κ²μ¦ |
getFollowRequests_shouldSuccess_03 |
3. λΉκ³΅κ° κ³μ μ νλ‘μ° μμ² μ νλ‘μ° μμ² λͺ©λ‘μ μΆκ° λλμ§ κ²μ¦ |
getFollowRequests_shouldSuccess_04 |
4. κ³΅κ° κ³μ μ νλ‘μ° μμ² μ νλ‘μ° μμ² λͺ©λ‘μ μΆκ° λμ§ μλμ§ κ²μ¦ |
getFollowRequests_shouldSuccess_05 |
5. νλ‘μ° μμ² μ·¨μ μ νλ‘μ° μμ² λͺ©λ‘μ λΆν¬ν¨λμ΄ μλμ§ κ²μ¦ |
| ν
μ€νΈ λ©μλ |
μλλ¦¬μ€ |
getUserFollowStats_shouldSuccess_01 |
μ¬μ©μ νλ‘μ, νλ‘μ μ μ‘°ν API ν
μ€νΈ |
getUserFollowStats_shouldSuccess_02 |
2. μ μμ μΈ νλ‘μ, νλ‘μ μ μ‘°ν μμ² μλ΅ κ²μ¦ |
getUserFollowStats_shouldSuccess_03 |
3. νλ‘μ λ° νλ‘μ μ¬μ©μ νν΄ ν μ‘°ν μ κ°κ° μκ° κ°μλλμ§ κ²μ¦ |
getUserFollowStats_shouldSuccess_04 |
4. νλ‘μ λ° νλ‘μ μ¬μ©μ λΉνμ±ν ν μ‘°ν μ κ°κ° μκ° κ°μλλμ§ κ²μ¦ |
getUserFollowStats_shouldSuccess_05 |
5. PENDING μνμ νλ‘μ°κ° ν¬ν¨ λμ§ μλμ§ κ²μ¦ |
getUserFollowStats_shouldFail_01 |
μ€ν¨ |
getUserFollowStats_shouldFail_02 |
2. νν΄ μ²λ¦¬λ μ¬μ©μμ λν μμ² μλ΅ κ²μ¦ |
getUserFollowStats_shouldFail_03 |
3. λΉνμ±ν μ²λ¦¬λ μ¬μ©μμ λν μμ² μλ΅ κ²μ¦ |
| ν
μ€νΈ λ©μλ |
μλλ¦¬μ€ |
getFollowers_shouldSuccess_01 |
νλ‘μ μ‘°ν μμ² κ΄λ ¨ API Test |
getFollowers_shouldSuccess_02 |
2. νλ‘μ° μμ² ν ν΄λΉ μ¬μ©μκ° νλ‘μ λͺ©λ‘μ ν¬ν¨λλμ§ κ²μ¦ |
getFollowers_shouldSuccess_03 |
3. νλ‘μ° μμ² μλ½ λκΈ°μ€μΈ μ¬μ©μκ° νλ‘μ λͺ©λ‘μ ν¬ν¨λλμ§ κ²μ¦ |
getFollowers_shouldSuccess_04 |
4. μΈνλ‘μ° ν μλλ°©μ νλ‘μ λͺ©λ‘μμ μ κ±°λλμ§ κ²μ¦ |
getFollowers_shouldSuccess_05 |
5. νλ‘μ μμ ν μλλ°©μ΄ νλ‘μ λͺ©λ‘μμ μ κ±°λλμ§ κ²μ¦ |
getFollowers_shouldSuccess_06 |
6.νλ‘μκ° μλ μ¬μ©μμ νλ‘μ λͺ©λ‘ μ μ μ‘°ν κ²μ¦ |
getFollowers_shouldSuccess_07 |
7. νλ‘μ λͺ©λ‘μμ λΉνμ±ν λ μ¬μ©μκ° ν¬ν¨λλμ§ κ²μ¦ |
getFollowers_shouldSuccess_08 |
8. νλ‘μ λͺ©λ‘μμ νν΄μ²λ¦¬ λ μ¬μ©μκ° ν¬ν¨λλμ§ κ²μ¦ |
getFollowers_shouldSuccess_09 |
9. λ€λ₯Έ μ¬μ©μμ νλ‘μ λͺ©λ‘ μ 체 μ‘°ν κ²μ¦ |
getFollowers_shouldSuccess_10 |
10. λΉκ³΅κ° κ³μ μ΄λ©΄μ νλ‘μ° μνμΈ μ¬μ©μμ νλ‘μ λͺ©λ‘ μ μ μ‘°ν κ²μ¦ |
getFollowers_shouldFail_01 |
μ€ν¨ |
| ν
μ€νΈ λ©μλ |
μλλ¦¬μ€ |
getFollowings_shouldSuccess_01 |
νλ‘μ μ‘°ν μμ² κ΄λ ¨ API Test |
getFollowings_shouldSuccess_02 |
2. νλ‘μ° μμ² ν ν΄λΉ μ¬μ©μκ° νλ‘μ λͺ©λ‘μ ν¬ν¨λλμ§ κ²μ¦ |
getFollowings_shouldSuccess_03 |
3. νλ‘μ° μμ² μλ½ λκΈ°μ€μΈ μ¬μ©μκ° νλ‘μ λͺ©λ‘μ ν¬ν¨λλμ§ μλμ§ κ²μ¦ |
getFollowings_shouldSuccess_04 |
4. μΈνλ‘μ° ν νλ‘μ λͺ©λ‘μμ μ κ±°λλμ§ κ²μ¦ |
getFollowings_shouldSuccess_05 |
5. νλ‘μ μμ ν μλλ°©μ νλ‘μ λͺ©λ‘μμ μ κ±°λλμ§ κ²μ¦ |
getFollowings_shouldSuccess_06 |
6.νλ‘μ νλ μ¬μ©μκ° μλ μ¬μ©μμ νλ‘μ λͺ©λ‘ μ μ μ‘°ν κ²μ¦ |
getFollowings_shouldSuccess_07 |
7. νλ‘μ λͺ©λ‘μμ λΉνμ±ν λ μ¬μ©μκ° ν¬ν¨λλμ§ κ²μ¦ |
getFollowings_shouldSuccess_08 |
8. νλ‘μ λͺ©λ‘μμ νν΄μ²λ¦¬ λ μ¬μ©μκ° ν¬ν¨λλμ§ κ²μ¦ |
getFollowings_shouldSuccess_09 |
9. κ³΅κ° κ³μ μΈ λ€λ₯Έ μ¬μ©μμ νλ‘μ λͺ©λ‘ μ 체 μ‘°ν κ²μ¦ |
getFollowings_shouldSuccess_10 |
10. λΉκ³΅κ° κ³μ μ΄λ©΄μ νλ‘μ° μνμΈ μ¬μ©μμ νλ‘μ λͺ©λ‘ μ μ μ‘°ν κ²μ¦ |
getFollowings_shouldFail_01 |
μ€ν¨ |
| ν
μ€νΈ λ©μλ |
μλλ¦¬μ€ |
getMyProfileDetails_shouldSuccess |
λ΄ νλ‘ν μ‘°ν κ΄λ ¨ API ν
μ€νΈ |
| ν
μ€νΈ λ©μλ |
μλλ¦¬μ€ |
getPost_shouldReturnOk_whenGetExistingPost |
κ²μκΈ μ‘°ν ν
μ€νΈ |
getPost_shouldReturnSameContentAndId_whenGetPostAfterCreation |
2. κ²μκΈ μμ± ν μ‘°ν μ μμ±ν λ΄μ©κ³Ό postIdκ° λμΌνμ§ κ²μ¦ |
getPost_shouldReturnSameContentAndId_whenGetPostAfterUpdate |
3. κ²μκΈ μμ± ν μμ μ, μ‘°ννλ©΄ μμ λ λ΄μ©μ΄ μ‘°νλλμ§ κ²μ¦ |
getPost_shouldReturnNotFound_whenGetNotExistingPost |
μ€ν¨ |
getPostList_shouldReturnOk_whenGetExistingPost |
κ²μκΈ λͺ©λ‘ μ‘°ν ν
μ€νΈ |
getPostList_shouldIterateAllPages_usingCursorPagination |
2. 컀μ κΈ°λ° νμ΄μ§μΌλ‘ μ 체 κ²μκΈ λ§μ§λ§ νμ΄μ§κΉμ§ μννλ©° μ‘°ν |
getPostEngagement_shouldNotFound_whenPostNotExists |
μ€ν¨ |
GetPostCommentApiTest
| ν
μ€νΈ λ©μλ |
μλλ¦¬μ€ |
getPostCommentList_shouldReturnNextCursor_whenFirstPageRequested |
κ²μκΈ λκΈ λͺ©λ‘ 컀μ κΈ°λ° μ‘°ν |
getPostCommentList_shouldReturnAllComments |
2. κ²μκΈ λκΈ λͺ©λ‘ μ 체 μ‘°ν κ²μ¦ |
getPostCommentList_shouldReflectLikedField_whenLikeRequest |
3. κ²μκΈ λκΈ μ’μμ μμ² ν λκΈ λͺ©λ‘ μ‘°ν μ ν΄λΉ λκΈμ liked νλκ° trueλ‘ λ³νλμ§ κ²μ¦ |
getPostCommentList_shouldReturnBadRequest_whenPostIsDeleted |
μ€ν¨ |
getPostCommentList_shouldReturnBadRequest_whenPostIsArchive |
2. ARCHIVE μνμ κ²μκΈ λκΈ λͺ©λ‘ μ‘°ν μ 400 Bad Request |
getPostCommentList_shouldReturnBadRequest_whenPostIsBlocked |
3. BLOCKED μνμ κ²μκΈ λκΈ λͺ©λ‘ μ‘°ν μ 400 Bad Request |
getPostCommentList_shouldReturnBadRequest_whenPostNotExists |
4. μ‘΄μ¬νμ§ μλ κ²μκΈμ λκΈ λͺ©λ‘ μμ² μ 400 Not Found |
GetPostCommentLikeApiTest
| ν
μ€νΈ λ©μλ |
μλλ¦¬μ€ |
getPostCommentLikers_shouldReturnFirstPage |
κ²μκΈ λκΈ μ’μμ λͺ©λ‘ μ‘°ν ν
μ€νΈ |
getPostLikers_shouldReturnEmptyList_whenPostCommentHasNotLikes |
2. μ’μμκ° μλ λκΈμ μμ² μ λΉ λ¦¬μ€νΈκ° λ°νλλμ§ κ²μ¦ |
getPostLikers_shouldIteratorAllPages_whenUsingCursorPagination |
3. μ 체 μ’μμ λͺ©λ‘ μ‘°ν μ λ§μ§λ§ νμ΄μ§κΉμ§ μν μ‘°ν λλμ§ κ²μ¦ |
getPostLikers_shouldReturnNotFound_whenPostCommentLNotExists |
μ€ν¨ |
getPostLikers_shouldReturnBadRequest_whenPostCommentIsDeleted |
2. DELETED μνμ λκΈμ λν μμ² μ 400 BadRequest |
| ν
μ€νΈ λ©μλ |
μλλ¦¬μ€ |
getPostLikers_shouldReturnLikers_whenPostHasLikers |
κ²μκΈ μ’μμ λͺ©λ‘ μ‘°ν ν
μ€νΈ |
getPostLikers_shouldReturnEmptyList_whenPostHasNotLikes |
2. μ’μμκ° μλ κ²μκΈμ μμ² μ λΉ λ¦¬μ€νΈκ° λ°νλλμ§ κ²μ¦ |
getPostLikers_shouldReturnNotFound_whenPostNotFound |
μ€ν¨ |
getPostEngagement_shouldReturnCorrectLikeCount_whenPostHasLikes |
κ²μκΈ μ’μμ μμ½ μ‘°ν ν
μ€νΈ |
| ν
μ€νΈ λ©μλ |
μλλ¦¬μ€ |
getUserProfile_shouldSuccess_01 |
μ±κ³΅ |
getUserProfile_shouldSuccess_02 |
2. κ³΅κ° κ³μ μ νλ‘μ°ν μνμμ APPROVED μνλ‘ νλ‘ν μ‘°ν κ°λ₯ |
getUserProfile_shouldSuccess_03 |
3. λΉκ³΅κ° κ³μ μ νλ‘μ° μΉμΈλ°μ μνμμ APPROVED μνλ‘ νλ‘ν μ‘°ν κ°λ₯ |
getUserProfile_shouldSuccess_04 |
4. λ³ΈμΈ νλ‘ν μ‘°ν μ SELF μνλ‘ μ‘°ν κ°λ₯ |
getUserProfile_shouldSuccess_05 |
5. λΉκ³΅κ° κ³μ μ νλ‘μ°νμ§ μμ μνμμ NONE μνλ‘ κΈ°λ³Έ νλ‘ν μ‘°ν κ°λ₯ |
getUserProfile_shouldSuccess_06 |
6. λΉκ³΅κ° κ³μ μ νλ‘μ° μμ² λκΈ°μ€μΈ μνμμ PENDING μνλ‘ κΈ°λ³Έ νλ‘ν μ‘°ν κ°λ₯ |
getUserProfile_shouldFail_01 |
μ€ν¨ |
getUserProfile_shouldFail_03 |
2. μ¬μ©μλ μ‘΄μ¬νμ§λ§ profileμ΄ μλ κ²½μ° 404 Not Found |
getUserProfile_shouldFail_04 |
3. νν΄ μ²λ¦¬λ μ¬μ©μμ νλ‘νμ μ‘°νν κ²½μ° 403 Forbidden |
getUserProfile_shouldFail_05 |
4. λΉνμ±ν λ μ¬μ©μλ₯Ό μ‘°ννλ κ²½μ° 403 Forbidden |
HandleFollowRequestApiTest
| ν
μ€νΈ λ©μλ |
μλλ¦¬μ€ |
approveFollowRequest_shouldSuccess_01 |
νλ‘μ° μμ² μλ½ λ° κ±°μ API ν
μ€νΈ |
approveFollowRequest_shouldFail_01 |
μ€ν¨ |
approveFollowRequest_shouldFail_02 |
2. λ΄κ° λ°μ νλ‘μ° μμ²μ΄ μλ κ²½μ° μ€ν¨ κ²μ¦ |
approveFollowRequest_shouldFail_03 |
3. μ΄λ―Έ μλ½ν νλ‘μ° μμ²μ λν μλ½ μμ² μ μ€ν¨ κ²μ¦ |
rejectFollowRequest_shouldSuccess_01 |
νλ‘μ° μμ² κ±°μ ν
μ€νΈ |
rejectFollowRequest_shouldFail_01 |
μ€ν¨ |
rejectFollowRequest_shouldFail_02 |
2. λ΄κ° λ°μ νλ‘μ° μμ²μ΄ μλ κ²½μ° μ€ν¨ κ²μ¦ |
rejectFollowRequest_shouldFail_03 |
3. μ΄λ―Έ κ±°μ ν νλ‘μ° μμ²μ λν μμ² μ μ€ν¨ κ²μ¦ |
| ν
μ€νΈ λ©μλ |
μλλ¦¬μ€ |
increaseViewCount_shouldIncrease_whenUserGetPost |
κ²μκΈ μ‘°ν μ μ¦κ° ν
μ€νΈ |
increaseViewCount_shouldIdempotent_whenUserMultipleRequest |
2. μ¬μ©μκ° κ²μκΈμ μ¬λ¬λ² μ‘°ν μ λ©±λ±νμ§ κ²μ¦ |
increaseViewCount_shouldIncreaseViewCount_whenUserRequestAfterFewTimes |
3. μ¬μ©μκ° κ²μκΈμ μ‘°ν ν μκ°μ΄ μ§λ ν λ€μ μ‘°ν μ μ‘°ν μκ° μ¦κ°νλμ§ κ²μ¦ |
increaseViewCount_shouldIncreaseViewCount_whenMultipleUserRequest |
4. μ¬λ¬ μ¬μ©μκ° κ²μκΈ μ‘°ν μ μ‘°ν μκ° μ¦κ°νλμ§ κ²μ¦ |
| ν
μ€νΈ λ©μλ |
μλλ¦¬μ€ |
userProfileCompleteTest_shouldSuccess_whenUserSetProfile |
Jwt μΈμ¦ κ΄λ ¨ API ν
μ€νΈ |
userProfileCompleteTest_shouldSuccess_whenUserSetProfile |
μ€ν¨ |
| ν
μ€νΈ λ©μλ |
μλλ¦¬μ€ |
likePost_shouldReturnCreated_whenUserLikesActivePost |
κ²μκΈ μ’μμ ν
μ€νΈ |
likePost_shouldBeIdempotent_whenUserLikesSamePostMultipleTimes |
2. λμΌ μ¬μ©μκ° μ€λ³΅ μ’μμ μμ² μ λ©±λ±νκ² μ²λ¦¬λλμ§ κ²μ¦ |
likePost_shouldAccumulateLikeCount_whenMultipleUserLike |
2. μ¬λ¬ μ¬μ©μκ° κ²μκΈμ μ’μμλ₯Ό λλ₯Ό κ²½μ° likeCount λμ λλμ§ κ²μ¦ |
likePost_shouldReturnBadRequest_whenPostDeleted |
μ€ν¨ |
likePost_shouldReturnBadRequest_whenPostBlocked |
2. BLOCKED μνμ κ²μκΈμ μ’μμ μμ² μ 400 Bad Reqeust |
likePost_shouldReturnBadRequest_whenPostArchive |
3. ARCHIVE μνμ κ²μκΈμ μ’μμ μμ² μ 400 Bad Reqeust |
| ν
μ€νΈ λ©μλ |
μλλ¦¬μ€ |
upsertLoginAttempt_shouldReturnTrue_whenLoginAttemptLessThanFive |
loginAttemptκ° μ‘΄μ¬νμ§ μμ κ²½μ° - true λ¦¬ν΄ |
upsertLoginAttempt_shouldReturnTrue_whenLoginAttemptReachThanFive |
loginAttemptκ° 5μ΄μμΌ κ²½μ° - false λ¦¬ν΄ |
upsertLoginAttempt_shouldReturnThree_whenLoginAttemptReachCallThree |
userIdμ ν΄λΉνλ κ°μ΄ μ‘΄μ¬νμ§ μλ μν©μμ 3λ² νΈμΆλ ν μ‘°ν μ 3μ΄ λμμΌ νλ€ |
upsertLoginAttempt_shouldReturnFive_andFalse_whenLoginAttemptReachCallSix |
6λ² νΈμΆλ ν μ‘°ν μ 5κ° λμμΌ νκ³ falseκ° return λμ΄μΌ νλ€ |
incrementLoginAttempt_shouldReturnOne_whenLoginAttemptNotExists |
loginAttemptκ° μ‘΄μ¬νμ§ μλ κ²½μ°, μ€νμ 1μ΄ λν΄μ ΈμΌ ν¨ |
incrementLoginAttempt_shouldReturnFive_whenLoginAttemptIsFive |
loginAttemptκ° 5μΈ κ²½μ°, λ μ΄μ μ
λ°μ΄νΈ λμ§ μκ³ 5λ‘ μ μ§λμ΄μΌ ν¨ |
deleteLoginAttempt_shouldReturnNull |
login attemptλ₯Ό μ½μ
ν ν μ€ν, μ΄ν μ‘°νμ nullμ΄ λμμΌνλ€ |
| ν
μ€νΈ λ©μλ |
μλλ¦¬μ€ |
accessProtectedResource_shouldSucceed_whenLoggedIn |
λ‘κ·ΈμΈ μλλ¦¬μ€ ν
μ€νΈ |
accessProtectedResource_sholudReturnUnAuthorized_whenAccessTokenNotExists |
μ±κ³΅-2. λ‘κ·ΈμΈ ν λ§λ£λ accessTokenμΌλ‘ μ μ'/' -> TLY3000 -> μ¬μ μ |
accessProtectedResource_shouldSucceed_afterAccessTokenExpired_whenReissueAccessToken |
μ±κ³΅-3. λ‘κ·ΈμΈ ν λ§λ£λ accessTokenμΌλ‘ μ μ'/' -> TLY3000 -> μ¬λ°κΈ ν μ¬ μ μ |
verifyLoginTokens_shouldBeUnique_whenForEachLogin |
μ±κ³΅-4. μ¬λ¬ λ² λ‘κ·ΈμΈ μ λ§€λ² μλ‘μ΄ accessToken, refreshToken λ°κΈ |
checkLoginAttempt_shouldAllowLogin_whenTtlExpires |
μ±κ³΅-5. λ‘κ·ΈμΈ μ ν ν μκ°μ΄ μ§λλ©΄ μ΄κΈ°ν, μ΄ν λ‘κ·ΈμΈ μλ |
checkLoginAttempt_shouldFail_whenExceededMaxAttempts |
μ€ν¨-1. μλͺ»λ λΉλ°λ²νΈλ‘ 5ν μ΄μ λ‘κ·ΈμΈ μλ ν κ²½μ° |
checkLoginAttempt_shouldResetAndBlock_whenSuccessAndExceeded |
μ€ν¨-2. μ μ λ‘κ·ΈμΈμ μλ νμκ° μ΄κΈ°νλκ³ μ΄ν μλͺ»λ λΉλ°λ²νΈλ‘ 5ν μ΄κ³Όμ λ‘κ·ΈμΈ μ ν |
| ν
μ€νΈ λ©μλ |
μλλ¦¬μ€ |
login_shouldSucceed_whenUserExistsAndCorrectPassword |
μ±κ³΅ |
login_shouldFail_whenUserNotExists |
μ€ν¨ |
login_shouldFail_whenPasswordNotCorrect |
2. λΉλ°λ²νΈκ° μΌμΉνμ§ μλ κ²½μ° |
login_shouldFail_whenEmailNotVerified |
3. μ΄λ©μΌ μΈμ¦μ΄ λμ§ μμ κ²½μ° |
| ν
μ€νΈ λ©μλ |
μλλ¦¬μ€ |
accessProtectedResource_shouldFail_afterLogout |
λ‘κ·Έμμ μλλ¦¬μ€ ν
μ€νΈ |
| ν
μ€νΈ λ©μλ |
μλλ¦¬μ€ |
logout_shouldSucceed_whenLoginSucceed |
μ±κ³΅ |
logout_shouldFailed_whenLoginSucceed_andTokenInvalid |
μ€ν¨ |
logout_shouldFailed_whenLoginSucceed_andTokenExpired |
μ€ν¨-2. λ§λ£λ accessTokenμΌλ‘ μμ² |
verifyPassword_shouldReturnVerificationToken_whenValidPassword |
μ΄μ€ μΈμ¦ ν
μ€νΈ |
passwordVerificationToken_shouldFailed_whenInValidPassword |
μ€ν¨-1. λΉλ°λ²νΈκ° μΌμΉνμ§ μλ κ²½μ° |
PasswordVerificationScenarioTest
| ν
μ€νΈ λ©μλ |
μλλ¦¬μ€ |
accessProtectedResource_shouldSucceed_afterPasswordVerification |
μ¬μ©μ μ΄μ€ μΈμ¦ μλΌλμ€ ν
μ€νΈ |
accessProtectedResource_shouldFail_afterXVerificationTokenExpired |
μ€ν¨-1. X-Verification-token λ§λ£ν μ μ |
| ν
μ€νΈ λ©μλ |
μλλ¦¬μ€ |
searchPost_shouldReturnSingleResult_whenSearchWithUniqueKeyword |
μ±κ³΅ |
searchPost_shouldReturnMultipleResults_whenSearchWithCommonKeyword |
2. keyword κ²μ ν κ²μ κ²°κ³Ό 리μ€νΈ κ²μ¦ |
searchPost_shouldReturnEmptyList_whenSearchWithNonExistentKeyword |
3. μ‘΄μ¬νμ§ μλ λ°μ΄ν°μ λν κ²μ κ²°κ³Ό κ²μ¦ |
searchPost_shouldIncludePublicUserPost_whenNotFollowing |
4. νλ‘μ° μνκ° μλλ©΄μ κ³΅κ° κ³μ μ μ¬μ©μκ° μ¬λ¦° κ²μκΈμ΄ κ²μλλμ§ κ²μ¦ |
searchPost_shouldIncludePrivateUserPost_whenFollowing |
5. νλ‘μ° μνμ΄λ©΄μ λΉκ³΅κ° κ³μ μΈ μ¬μ©μκ° μ¬λ¦° κ²μκΈμ΄ κ²μλλμ§ κ²μ¦ |
searchPost_shouldIncludeMyPost_whenSearchingOwnContent |
6. λ΄κ° μ¬λ¦° κ²μκΈμ΄ κ²μλλμ§ κ²μ¦ |
searchPost_shouldReturnSortedByRecent_whenSortTypeIsRecent |
7. sortType = RECENTμΈ κ²½μ° μλ΅ κ²μ¦ |
searchPost_shouldReturnSortedByPopular_whenSortTypeIsPopular |
8. sortType = POPULARμΈ κ²½μ° μλ΅ κ²μ¦ |
searchPost_shouldIterateAllPages_usingCursorPagination |
9. 컀μ κΈ°λ° νμ΄μ§μΌλ‘ μ 체 κ²μ κ²°κ³Όλ₯Ό λ§μ§λ§ νμ΄μ§κΉμ§ μννλ©° μ‘°ν |
searchPost_shouldReturnAllPosts_whenKeywordIsNull |
μ€ν¨ |
searchPost_shouldNotIncludePrivateUserPost_whenNotFollowing |
2. νλ‘μ° μνκ° μλλ©΄μ λΉκ³΅κ° κ³μ μ μ¬μ©μκ° μ¬λ¦° κ²μκΈμ΄ κ²μλμ§ μλμ§ κ²μ¦ |
searchPost_shouldReturnError_whenSortTypeIsInvalid |
3. μ ν¨νμ§ μμ sortType(RELEVANCE) μ¬μ© μ μ μ ν μλ¬ λ°ν |
| ν
μ€νΈ λ©μλ |
μλλ¦¬μ€ |
removeFollower_shouldSuccess_01 |
νλ‘μ μμ API ν
μ€νΈ |
removeFollower_shouldFail_01 |
μ€ν¨ |
removeFollower_shouldSuccess_01 |
2. PENDING μνμ μ¬μ©μλ₯Ό νλ‘μ μμ μμ² μ μ€ν¨ κ²μ¦ |
| ν
μ€νΈ λ©μλ |
μλλ¦¬μ€ |
test |
- |
| ν
μ€νΈ λ©μλ |
μλλ¦¬μ€ |
unfollowUser_shouldSuccess_01 |
μ¬μ©μ μΈνλ‘μ° API ν
μ€νΈ |
unfollowUser_shouldFail_01 |
μ€ν¨ |
unfollowUser_shouldSuccess_01 |
2. PENDING μνμ μ¬μ©μλ₯Ό μΈνλ‘μ° μμ² μ μ€ν¨ κ²μ¦ |
| ν
μ€νΈ λ©μλ |
μλλ¦¬μ€ |
updateMyProfile_shouldDeleteExistingProfileImage_whenProfileImageIdIsNull |
μ±κ³΅ |
updateMyProfile_shouldUpdateProfileImage_whenProfileImageIdIsDifferent |
2. κΈ°μ‘΄ νλ‘ν μ΄λ―Έμ§κ° μ‘΄μ¬νκ³ μλ‘μ΄ νλ‘ν μ΄λ―Έμ§λ₯Ό μ€μ νλ κ²½μ° κ²μ¦ |
updateMyProfile_shouldKeepExistingProfileImage_whenImageIdIsSame |
3. κΈ°μ‘΄ νλ‘ν μ΄λ―Έμ§κ° μ‘΄μ¬νκ³ κΈ°μ‘΄ νλ‘ν μ΄λ―Έμ§λ₯Ό μ μ§νλ κ²½μ° κ²μ¦ |
updateMyProfile_shouldSetNewProfileImage_whenNoExistingProfileImageAndProfileImageIdIsGiven |
4. κΈ°μ‘΄ νλ‘ν μ΄λ―Έμ§κ° μ‘΄μ¬νμ§ μκ³ μλ‘μ΄ νλ‘ν μ΄λ―Έμ§λ₯Ό μ€μ νλ κ²½μ° κ²μ¦ |
updateMyProfile_shouldDoNotingToProfileImage_whenNoExistingImageAndImageIdIsNull |
5. κΈ°μ‘΄ νλ‘ν μ΄λ―Έμ§κ° μ‘΄μ¬νμ§ μκ³ μ νλ‘νμ μ€μ νμ§ μλ κ²½μ° κ²μ¦ |
updateUserProfile_shouldReturn409Conflict_whenRequestNicknameAlreadyExists |
μ€ν¨ |
updateMyProfile_shouldFail_whenProfileImageIdIsInvalid |
2. μ‘΄μ¬νμ§ μλ profileImageIdλ‘ μ
λ°μ΄νΈ μμ² μ 404 Not Found |
updateMyProfile_shouldReturn404NotFound_whenProfileImageIdStatusIsDeleted |
3. DELETED μνμ profileImageIdλ‘ μ
λ°μ΄νΈ μμ² μ 404 Not Found |
| ν
μ€νΈ λ©μλ |
μλλ¦¬μ€ |
updatePost_shouldUpdatePostSuccessfully_whenWriterRequestsUpdate |
κ²μκΈ μ
λ°μ΄νΈ ν
μ€νΈ |
updatePost_shouldReturnForbidden_whenNonWriterTriesToUpdatePost |
μ€ν¨ |
updatePost_shouldReturnNotFound_whenRequestNotExistsPostId |
2. μμ±μκ° μ‘΄μ¬νμ§ μλ postIdλ‘ μμ μμ² ν κ²½μ° |
updatePost_shouldReturnBadRequest_whenContentIsBlank |
3. μμ±μκ° λΉμ΄μλ contentλ‘ μμ² ν κ²½μ° |
updatePost_shouldReturnBadRequest_whenContentExceedsMaxLength |
4. κ²μκΈ μμ λ΄μ©μ΄ μ΅λ κΈΈμ΄λ₯Ό μ΄κ³Όν κ²½μ° 400 BadRequest |
UpdatePostCommentApiTest
| ν
μ€νΈ λ©μλ |
μλλ¦¬μ€ |
deletePostComment_shouldReturn204_whenCommentIsActive |
κ²μκΈ λκΈ μμ ν
μ€νΈ |
deletePostComment_shouldReturnBadRequest_whenPostIsBlocked |
μ€ν¨ |
deletePostComment_shouldReturnForbidden_whenCommentWriterNotEqualsUser |
2. λκΈ μμ±μκ° μλ μ¬μ©μκ° μμ μμ² μ 403 Forbidden |
deletePostComment_shouldReturn400_whenCommentIsDeleted |
3. μ΄λ―Έ μμ λ λκΈ μμ μμ² μ 400 Bad Request |
| ν
μ€νΈ λ©μλ |
μλλ¦¬μ€ |
deletePost_shouldExcludePostFromPostList_afterSuccessfulDeletion |
κ²μκΈ μμ ν
μ€νΈ |
deletePost_shouldReturnBadRequest_whenAlreadyDeleted |
μ€ν¨ |
deletePost_shouldReturnForbidden_whenNonOwnerRequest |
2. κ²μκΈ μμ±μκ° μλ μ¬μ©μκ° μμ μμ² μ 403 Forbidden |
UploadPostImageValidateApiTest
| ν
μ€νΈ λ©μλ |
μλλ¦¬μ€ |
uploadImage_shouldSucceed_whenValidImageUpload |
μ±κ³΅ |
uploadImage_shouldSucceed_whenUploadMaxCount |
2. μ μμ μΈ μ΄λ―Έμ§λ₯Ό μ΅λ νμ© μ λ§νΌ μ
λ‘λ μ μλ΅ κ²μ¦ |
uploadImage_shouldReturnBadRequest_whenImageIsEmpty |
μ€ν¨ |
uploadImage_shouldReturnBadRequest_whenImageIsNull |
2. μ΄λ―Έμ§κ° nullμΈ μνμμ μμ²μ 400 Bad Request |
uploadImage_shouldReturnBadRequest_whenUploadOverMaxCount |
3. μ΅λ νμ© μλ₯Ό μ΄κ³Όνλ μ΄λ―Έμ§ μμ² μ 400 Bad Request |
uploadImage_shouldReturnBadRequest_whenUploadOverMaxSize |
4. μ΅λ νμ© μ©λ μ΄μμ΄ μ΄λ―Έμ§ μμ² μ 400 Bad Request |
uploadImage_shouldReturnBadRequest_whenUploadFileExtensionNotSupported |
5. μ§μνμ§ μλ νμ₯μμ νμΌμ μμ² μ 400 Bad Request |
UploadProfileImageApiTest
| ν
μ€νΈ λ©μλ |
μλλ¦¬μ€ |
uploadMyProfileImage_shouldSuccess |
μ±κ³΅ |
| ν
μ€νΈ λ©μλ |
μλλ¦¬μ€ |
verifyPassword_shouldReturnVerificationToken_whenValidPassword |
μ±κ³΅ |
passwordVerificationToken_shouldFailed_whenInValidPassword |
μ€ν¨ |
| ν
μ€νΈ λ©μλ |
μλλ¦¬μ€ |
searchUser_shouldReturnSingleResult_whenSearchWithUniqueKeyword |
μ±κ³΅ |
searchUser_shouldReturnMultipleResults_whenSearchWithCommonKeyword |
2. keyword κ²μ ν κ²μ κ²°κ³Ό 리μ€νΈ κ²μ¦ |
searchUser_shouldReturnEmptyList_whenSearchWithNonExistentKeyword |
3. μ‘΄μ¬νμ§ μλ λλ€μμ λν κ²μ κ²°κ³Ό κ²μ¦ |
searchUser_shouldReturnApprovedStatus_whenSearchingFollowingUser |
4. νλ‘μνλ μ¬μ©μ κ²μ μ μλ΅μ followStatusκ° APPROVEDμΈμ§ κ²μ¦ |
searchUser_shouldReturnNoneStatus_whenSearchingNotFollowingUser |
5. νλ‘μνμ§ μλ μ¬μ©μ κ²μ μ μλ΅μ followStatusκ° NONEμΈμ§ κ²μ¦ |
searchUser_shouldReturnSelfStatus_whenSearchingMyProfile |
6. λ΄ νλ‘ν κ²μ μ μλ΅μ followStatusκ° SELFμΈμ§ κ²μ¦ |
searchUser_shouldIterateAllPages_usingCursorPagination |
7. 컀μ κΈ°λ° νμ΄μ§μΌλ‘ μ 체 κ²μ κ²°κ³Όλ₯Ό λ§μ§λ§ νμ΄μ§κΉμ§ μννλ©° μ‘°ν |
searchUser_shouldReturnAllUsers_whenKeywordIsNull |
μ€ν¨ |
| ν
μ€νΈ λ©μλ |
μλλ¦¬μ€ |
checkNickname_shouldSuccess_whenNicknameIsUnique |
μ±κ³΅ |
checkNickname_should409Conflict_whenNicknameAlreadyExists |
μ€ν¨ |
| ν
μ€νΈ λ©μλ |
μλλ¦¬μ€ |
withdrawUser_shouldSuccess_whenUserIdExists |
λ΄ κ³μ νν΄ ν
μ€νΈ |
withdrawUser_shouldReturn400BadRequest_whenUserWithdraw |
μ€ν¨ |
withdrawUser_shouldReturn400BadRequest_whenXVerifyTokenMissing |
2. μ΄μ€μΈμ¦ μμ΄ νμ νν΄ μμ² μ 400 BadRequest |
withdrawUser_shouldReturn400BadRequest_whenReissueAccessTokenAfterWithdraw |
3. νμ νν΄ ν ν ν° μ¬λ°κΈμ΄ λΆκ°λ₯νμ§ κ²μ¦ |
DeleteAllNotificationsApiTest
| ν
μ€νΈ λ©μλ |
μλλ¦¬μ€ |
deleteAllNotifications_WithMultipleNotifications_ShouldReturnSuccess |
1. μ¬λ¬ μλ¦Ό μ 체 μμ - μ±κ³΅ |
deleteAllNotifications_WithNoNotifications_ShouldReturnSuccess |
2. μλ¦Όμ΄ μλ μνμμ μ 체 μμ - μ±κ³΅ (Idempotent) |
deleteAllNotifications_ShouldNotDeleteOtherUsersNotifications |
3. λ€λ₯Έ μ¬μ©μμ μλ¦Όμ μμ λμ§ μμ - μ±κ³΅ |
deleteAllNotifications_WithoutAuthentication_ShouldReturnBadRequest |
4. μΈμ¦ μμ΄ μ 체 μλ¦Ό μμ - 400 Bad Request |
deleteAllNotifications_WithExpiredToken_ShouldReturnUnauthorized |
5. λ§λ£λ ν ν°μΌλ‘ μ 체 μλ¦Ό μμ - 401 Unauthorized |
deleteAllNotifications_WithPartialNotifications_ShouldDeleteAll |
6. λΆλΆμ μΌλ‘ μλ¦Όμ΄ μλ μνμμ μ 체 μμ - μ±κ³΅ |
deleteAllNotifications_AfterAlreadyDeleted_ShouldReturnSuccess |
7. μ 체 μμ ν λ€μ μ 체 μμ - μ±κ³΅ (Idempotent) |
deleteAllNotifications_WithLargeAmountOfNotifications_ShouldReturnSuccess |
8. λλμ μλ¦Ό μ 체 μμ - μ±κ³΅ |
deleteAllNotifications_WithMixedNotificationTypes_ShouldDeleteAll |
9. νΌν©λ μλ¦Ό νμ
μ μ 체 μμ - μ±κ³΅ |
deleteAllNotifications_PerformanceAndStabilityTest |
10. μ 체 μμ μ±λ₯ λ° μμ μ± κ²μ¦ |
DeleteNotificationApiTest
| ν
μ€νΈ λ©μλ |
μλλ¦¬μ€ |
deleteNotification_ExistingNotification_ShouldReturnSuccess |
1. μ‘΄μ¬νλ μλ¦Ό μμ - μ±κ³΅ |
deleteNotification_NonExistentNotification_ShouldReturnNotFound |
2. μ‘΄μ¬νμ§ μλ μλ¦Ό μμ - 404 Not Found |
deleteNotification_OtherUserNotification_ShouldReturnNotFound |
3. λ€λ₯Έ μ¬μ©μμ μλ¦Ό μμ - 404 NotFound |
deleteNotification_WithoutAuthentication_ShouldReturnBadRequest |
4. μΈμ¦ μμ΄ μλ¦Ό μμ - 400 Bad Request |
deleteNotification_WithExpiredToken_ShouldReturnUnauthorized |
5. λ§λ£λ ν ν°μΌλ‘ μλ¦Ό μμ - 401 Unauthorized |
deleteNotification_WithSpecialCharacterEventId_ShouldReturnNotFound |
6. νΉμ λ¬Έμκ° ν¬ν¨λ eventIdλ‘ μλ¦Ό μμ - 404 Not Found |
deleteNotification_MultipleNotificationsExist_ShouldDeleteOnlyTargetOne |
7. μ¬λ¬ μλ¦Ό μ€ νΉμ μλ¦Όλ§ μμ - μ±κ³΅ |
deleteNotification_AlreadyDeletedNotification_ShouldReturnNotFound |
8. μ΄λ―Έ μμ λ μλ¦Ό μ¬μμ μλ - 404 Not Found |
deleteNotification_AuthorizedUser_ShouldCompletelyRemoveData |
9. κΆνμ΄ μλ μ¬μ©μμ μλ¦Ό μμ ν λ°μ΄ν° μμ μ κ±° κ²μ¦ |
| ν
μ€νΈ λ©μλ |
μλλ¦¬μ€ |
getNotificationDetail_ExistingNotification_ShouldReturnSuccess |
1. μ‘΄μ¬νλ μλ¦Ό μ‘°ν - μ±κ³΅ |
getNotificationDetail_NonExistentNotification_ShouldReturnNotFound |
2. μ‘΄μ¬νμ§ μλ μλ¦Ό μ‘°ν - 404 Not Found |
getNotificationDetail_OtherUserNotification_ShouldReturnForbidden |
3. λ€λ₯Έ μ¬μ©μμ μλ¦Ό μ‘°ν - 403 Forbidden |
getNotificationDetail_WithoutAuthentication_ShouldReturnBadRequest |
4. μΈμ¦ μμ΄ μλ¦Ό μ‘°ν - 400 Bad Request |
getNotificationDetail_WithExpiredToken_ShouldReturnUnauthorized |
5. λ§λ£λ ν ν°μΌλ‘ μλ¦Ό μ‘°ν - 401 Unauthorized |
getNotificationDetail_WithSpecialCharacterEventId_ShouldReturnNotFound |
6. νΉμ λ¬Έμκ° ν¬ν¨λ eventIdλ‘ μλ¦Ό μ‘°ν - 404 Not Found |
getNotificationDetail_MultipleNotificationsExist_ShouldReturnCorrectOne |
7. μ¬λ¬ μλ¦Ό μ€ νΉμ μλ¦Ό μ‘°ν - μ±κ³΅ |
getNotificationDetail_DifferentNotificationTypes_ShouldReturnSuccess |
8. λ€μν μλ¦Ό νμ
μ‘°ν - μ±κ³΅ |
getNotificationDetail_WithMetadata_ShouldReturnCorrectMetadata |
9. μ μμ μΈ λ©νλ°μ΄ν° μ‘°ν - μ±κ³΅ |
getNotificationDetail_WithDifferentActorProfile_ShouldReturnCorrectProfile |
10. λ€μν ActorProfile μ λ³΄κ° ν¬ν¨λ μλ¦Ό μ‘°ν - μ±κ³΅ |
getNotificationDetail_WithNullActorProfile_ShouldHandleGracefully |
11. null ActorProfileλ‘ μλ¦Ό μ‘°ν - ActorProfile νλ κ²μ¦ |
GetNotificationsByCursorApiTest
| ν
μ€νΈ λ©μλ |
μλλ¦¬μ€ |
getNotifications_WithoutParams_ShouldReturnSuccess |
1. κΈ°λ³Έ μλ¦Ό λͺ©λ‘ μ‘°ν (νλΌλ―Έν° μμ) - μ±κ³΅ |
getNotifications_WithLimit_ShouldReturnLimitedResults |
2. limit νλΌλ―Έν°λ‘ μλ¦Ό λͺ©λ‘ μ‘°ν - μ±κ³΅ |
getNotifications_WithCursor_ShouldReturnNextPage |
3. 컀μ κΈ°λ° νμ΄μ§λ€μ΄μ
μ‘°ν - μ±κ³΅ |
getNotifications_ShouldNotReturnOtherUsersNotifications |
4. λ€λ₯Έ μ¬μ©μμ μλ¦Όμ μ‘°νλμ§ μμ - μ±κ³΅ |
getNotifications_WithNoNotifications_ShouldReturnEmptyList |
5. λΉ κ²°κ³Ό μ‘°ν - μ±κ³΅ |
getNotifications_WithoutAuthentication_ShouldReturnBadRequest |
6. μΈμ¦ μμ΄ μλ¦Ό λͺ©λ‘ μ‘°ν - 400 Bad Request |
getNotifications_WithExpiredToken_ShouldReturnUnauthorized |
7. λ§λ£λ ν ν°μΌλ‘ μλ¦Ό λͺ©λ‘ μ‘°ν - 401 Unauthorized |
getNotifications_WithLargeLimit_ShouldReturnSuccess |
8. ν° limit κ°μΌλ‘ μ‘°ν - μ±κ³΅ |
getNotifications_WithActorProfile_ShouldReturnCorrectProfile |
9. ActorProfile μ λ³΄κ° ν¬ν¨λ μλ¦Ό λͺ©λ‘ μ‘°ν - μ±κ³΅ |
getNotifications_ShouldReturnInTimeOrder |
10. μκ°μ μ λ ¬ κ²μ¦ - μ±κ³΅ |
GetUnreadNotificationsByCursorApiTest
| ν
μ€νΈ λ©μλ |
μλλ¦¬μ€ |
getUnreadNotifications_WithoutParams_ShouldReturnSuccess |
1. κΈ°λ³Έ μ½μ§ μμ μλ¦Ό λͺ©λ‘ μ‘°ν (νλΌλ―Έν° μμ) - μ±κ³΅ |
getUnreadNotifications_WithLimit_ShouldReturnLimitedResults |
2. limit νλΌλ―Έν°λ‘ μ½μ§ μμ μλ¦Ό λͺ©λ‘ μ‘°ν - μ±κ³΅ |
getUnreadNotifications_WithCursor_ShouldReturnNextPage |
3. 컀μ κΈ°λ° νμ΄μ§λ€μ΄μ
μΌλ‘ μ½μ§ μμ μλ¦Ό μ‘°ν - μ±κ³΅ |
getUnreadNotifications_ShouldNotReturnOtherUsersNotifications |
4. λ€λ₯Έ μ¬μ©μμ μ½μ§ μμ μλ¦Όμ μ‘°νλμ§ μμ - μ±κ³΅ |
getUnreadNotifications_WithNoUnreadNotifications_ShouldReturnEmptyList |
5. μ½μ§ μμ μλ¦Όμ΄ μλ κ²½μ° - λΉ κ²°κ³Ό λ°ν |
getUnreadNotifications_WithNoNotifications_ShouldReturnEmptyList |
6. μλ¦Όμ΄ μ ν μλ κ²½μ° - λΉ κ²°κ³Ό λ°ν |
getUnreadNotifications_WithoutAuthentication_ShouldReturnBadRequest |
7. μΈμ¦ μμ΄ μ½μ§ μμ μλ¦Ό λͺ©λ‘ μ‘°ν - 400 Bad Request |
getUnreadNotifications_WithExpiredToken_ShouldReturnUnauthorized |
8. λ§λ£λ ν ν°μΌλ‘ μ½μ§ μμ μλ¦Ό λͺ©λ‘ μ‘°ν - 401 Unauthorized |
getUnreadNotifications_WithMixedReadStatus_ShouldReturnOnlyUnread |
9. μ½μ μν νΌμ¬ μ μ½μ§ μμ μλ¦Όλ§ μ‘°ν - μ±κ³΅ |
getUnreadNotifications_ShouldReturnInTimeOrder |
10. μκ°μ μ λ ¬ κ²μ¦ - μ½μ§ μμ μλ¦Όλ§ μ΅μ μμΌλ‘ μ λ ¬ |
getUnreadNotifications_WithActorProfile_ShouldReturnCorrectProfile |
11. ActorProfile μ λ³΄κ° ν¬ν¨λ μ½μ§ μμ μλ¦Ό μ‘°ν - μ±κ³΅ |
MarkAllAsReadNotificationsApiTest
| ν
μ€νΈ λ©μλ |
μλλ¦¬μ€ |
markAllAsReadNotifications_WithUnreadNotifications_ShouldReturnSuccess |
1. μ¬λ¬ μ½μ§ μμ μλ¦Ό μ 체 μ½μ μ²λ¦¬ - μ±κ³΅ |
markAllAsReadNotifications_WithNoNotifications_ShouldReturnSuccess |
2. μλ¦Όμ΄ μλ μνμμ μ 체 μ½μ μ²λ¦¬ - μ±κ³΅ (Idempotent) |
markAllAsReadNotifications_WithAllReadNotifications_ShouldReturnSuccess |
3. μ΄λ―Έ λͺ¨λ μλ¦Όμ΄ μ½μ μνμμ μ 체 μ½μ μ²λ¦¬ - μ±κ³΅ (Idempotent) |
markAllAsReadNotifications_ShouldNotMarkOtherUsersNotifications |
4. λ€λ₯Έ μ¬μ©μμ μλ¦Όμ μ½μ μ²λ¦¬λμ§ μμ - μ±κ³΅ |
markAllAsReadNotifications_WithoutAuthentication_ShouldReturnBadRequest |
5. μΈμ¦ μμ΄ μ 체 μ½μ μ²λ¦¬ - 400 Bad Request |
markAllAsReadNotifications_WithExpiredToken_ShouldReturnUnauthorized |
6. λ§λ£λ ν ν°μΌλ‘ μ 체 μ½μ μ²λ¦¬ - 401 Unauthorized |
markAllAsReadNotifications_WithMixedReadStatus_ShouldMarkAllAsRead |
7. νΌν©λ μ½μ μνμ μλ¦Όλ€ μ 체 μ½μ μ²λ¦¬ - μ±κ³΅ |
markAllAsReadNotifications_WithLargeAmountOfNotifications_ShouldReturnSuccess |
8. λλμ μλ¦Ό μ 체 μ½μ μ²λ¦¬ - μ±κ³΅ |
markAllAsReadNotifications_AfterMarkingAllAsRead_ShouldShowAllReadInList |
9. μ 체 μ½μ μ²λ¦¬ ν λͺ©λ‘ μ‘°νμμ λͺ¨λ μλ¦Όμ΄ μ½μ μν - μ±κ³΅ |
markAllAsReadNotifications_PerformanceAndStabilityTest |
10. μ 체 μ½μ μ²λ¦¬ μ±λ₯ λ° μμ μ± κ²μ¦ |
MarkAsReadNotificationApiTest
| ν
μ€νΈ λ©μλ |
μλλ¦¬μ€ |
markAsReadNotification_UnreadNotification_ShouldReturnSuccess |
1. μ½μ§ μμ μλ¦Ό μ½μ μ²λ¦¬ - μ±κ³΅ |
markAsReadNotification_AlreadyReadNotification_ShouldReturnSuccess |
2. μ΄λ―Έ μ½μ μλ¦Ό μ½μ μ²λ¦¬ - μ±κ³΅ (Idempotent) |
markAsReadNotification_NonExistentNotification_ShouldReturnNotFound |
3. μ‘΄μ¬νμ§ μλ μλ¦Ό μ½μ μ²λ¦¬ - 404 Not Found |
markAsReadNotification_OtherUserNotification_ShouldReturnNotFound |
4. λ€λ₯Έ μ¬μ©μμ μλ¦Ό μ½μ μ²λ¦¬ - 404 NotFound |
markAsReadNotification_WithoutAuthentication_ShouldReturnBadRequest |
5. μΈμ¦ μμ΄ μλ¦Ό μ½μ μ²λ¦¬ - 400 Bad Request |
markAsReadNotification_WithExpiredToken_ShouldReturnUnauthorized |
6. λ§λ£λ ν ν°μΌλ‘ μλ¦Ό μ½μ μ²λ¦¬ - 401 Unauthorized |
markAsReadNotification_MultipleNotificationsExist_ShouldMarkOnlyTargetOne |
7. μ¬λ¬ μλ¦Ό μ€ νΉμ μλ¦Όλ§ μ½μ μ²λ¦¬ - μ±κ³΅ |
markAsReadNotification_AfterMarkingAsRead_ShouldPersistReadStatus |
8. μ½μ μ²λ¦¬ ν λ°μ΄ν° μμμ± κ²μ¦ |
NotificationKafkaIntegrationTest
| ν
μ€νΈ λ©μλ |
μλλ¦¬μ€ |
kafkaIntegration_PostLikeEvent_ShouldSaveToDatabase |
1. POST_LIKE μ΄λ²€νΈ μμ λ° DB μ μ₯ - μ±κ³΅ |
kafkaIntegration_SavedNotificationApiVerification_ShouldReturnCorrectData |
2. μ μ₯λ μλ¦Ό API μ‘°νλ‘ κ²μ¦ - μ±κ³΅ |
kafkaIntegration_MultipleEvents_ShouldSaveAllAndRetrieveIndividually |
3. λ€μ€ μ΄λ²€νΈ μμ λ° κ°λ³ μ‘°ν - μ±κ³΅ |
kafkaIntegration_InvalidEventData_ShouldHandleGracefully |
4. μλͺ»λ μ΄λ²€νΈ λ°μ΄ν° μ²λ¦¬ - Kafka λ°μ μ±κ³΅νμ§λ§ μ μ₯ μ€ν¨ |
kafkaIntegration_DuplicateEventId_ShouldHandleIdempotently |
5. λμΌν eventId μ€λ³΅ μ΄λ²€νΈ μ²λ¦¬ - λ©±λ±μ± νμΈ |
kafkaIntegration_BulkEvents_ShouldProcessAllSuccessfully |
6. λμ©λ μ΄λ²€νΈ μ²λ¦¬ - μ±λ₯ λ° μμ μ± κ²μ¦ |
NotificationMetadataSerializationTest
| ν
μ€νΈ λ©μλ |
μλλ¦¬μ€ |
testPostLikeMetadata |
POST_LIKE λ©νλ°μ΄ν° μ μ₯ λ° μ‘°ν ν
μ€νΈ |
testCommentAddedMetadata |
COMMENT_ADDED λ©νλ°μ΄ν° μ μ₯ λ° μ‘°ν ν
μ€νΈ |
testCommentLikeMetadata |
COMMENT_LIKE λ©νλ°μ΄ν° μ μ₯ λ° μ‘°ν ν
μ€νΈ |
testFollowRequestMetadata |
FOLLOW_REQUEST λ©νλ°μ΄ν° μ μ₯ λ° μ‘°ν ν
μ€νΈ |
testFollowMetadata |
FOLLOW λ©νλ°μ΄ν° μ μ₯ λ° μ‘°ν ν
μ€νΈ |
testFollowAcceptMetadata |
FOLLOW_ACCEPT λ©νλ°μ΄ν° μ μ₯ λ° μ‘°ν ν
μ€νΈ |
| ν
μ€νΈ λ©μλ |
μλλ¦¬μ€ |
testValidAccessToken |
Security API μΈμ¦ ν
μ€νΈ |
testNoAuthorizationHeader |
2. AccessTokenμ΄ μλ κ²½μ° - 400 Unauthorized |
testInvalidAccessTokenFormat |
3. μλͺ»λ νμμ AccessToken - 401 Unauthorized |
testTokenWithoutBearer |
4. Bearer μμ΄ ν ν°λ§ μ μ‘νλ κ²½μ° - 400 BadRequest |
testExpiredAccessToken |
5. λ§λ£λ AccessToken - 401 Unauthorized |
testBlacklistedAccessToken |
6. λΈλ리μ€νΈμ λ±λ‘λ AccessToken - 400 BadRequest |
testInvalidSignatureAccessToken |
7. μλͺ»λ μλͺ
μ κ°μ§ AccessToken - 400 Bad Request |
testEmptyAccessToken |
8. λΉ λ¬Έμμ΄ AccessToken - 400 BadRequest |
testMultipleValidRequests |
9. μ¬λ¬ λ²μ μ μμ μΈ μμ² - μ±κ³΅ |