Readers should be able to remove dislike from a particular post after adding one, if they posted it in error or just changed their mind.
How Has This Been Tested?
Unit Tests: Added tests to validate successful and failed requests as expected.
Test Environment: Mocked database; to avoid interference with the production environment.
Postman: Validation test has also been run on postman API tester, with screenshots attached below.
Screenshots:
Delete Blog Dislike Success
Non Owner Request
Blog Dislike Not Available
Types of changes
[x] New feature (non-breaking change which adds functionality)
Checklist:
[x] My code follows the code style of this project.
[x] I have updated the documentation accordingly.
[x] I have read the CONTRIBUTING document.
[x] I have added tests to cover my changes.
[x] All new and existing tests passed.
Added Fix:
Enable /api/v1/blogs/{blog_id}/dislike endpoint to automatically remove existing like by the current_user before creating new dislike, and vice versa with the /api/v1/blogs/{blog_id}/like endpoint.
This is important if a user clicks the dislike button after already clicking the like button without first removing the like. Otherwise, the database will have unintended records of both like and dislike for the same user on the same blog.
Description:
An endpoint to enable users who previously
disliked
a blog post to remove thedislike
.Related Issue:
[FEAT]: Endpoint To Delete Blog Dislike #966
Motivation and Context
Readers should be able to remove dislike from a particular post after adding one, if they posted it in error or just changed their mind.
How Has This Been Tested?
Screenshots:
Delete Blog Dislike Success
Non Owner Request
Blog Dislike Not Available
Types of changes
Checklist:
Added Fix:
Enable
/api/v1/blogs/{blog_id}/dislike
endpoint to automatically remove existinglike
by thecurrent_user
before creating newdislike
, and vice versa with the/api/v1/blogs/{blog_id}/like
endpoint.This is important if a user clicks the dislike button after already clicking the like button without first removing the like. Otherwise, the database will have unintended records of both like and dislike for the same user on the same blog.