def test_delete_like_4(self) -> None: """ test delete_like: user and event don’t exist """ Like.create_like(Like(self.user, self.event)) Like.delete_like(Like('1', '1')) self.assertTrue(Like.exist(self.user, self.event))
def test_delete_like_3(self) -> None: """ test delete_like: user doesn’t exist, event exists """ Like.create_like(Like(self.user, self.event)) Like.delete_like(Like('1', self.event)) self.assertTrue(Like.exist(self.user, self.event))
def test_delete_like_2(self) -> None: """ test delete_like: user exists, event doesn’t exist """ Like.create_like(Like(self.user, self.event)) Like.delete_like(Like(self.user, '1')) self.assertTrue(Like.exist(self.user, self.event))
def test_delete_like_1(self) -> None: """ test delete_like: user and event exist """ Like.create_like(Like(self.user, self.event)) Like.delete_like(Like(self.user, self.event)) self.assertFalse(Like.exist(self.user, self.event))
def delete_like(): data = request.get_json() fields = list(data.keys()) if 'post_id' not in fields or 'user_id' not in fields: return jsonify({'error': 'Missing required field'}), 400 like = Like.delete_like(data) if like is None: return jsonify({'error': 'Post/User not found'}), 400 if like: return jsonify(like), 200 return jsonify({'error': 'Error deleting like'}), 500
def get(self, post_key): """ Like/Unlike a post An error is thrown if user likes his own post """ if self.post.parent().key() != self.user.key(): like_key = Like.is_liked_by_user(self.user, self.post) if not like_key: success = Like.new_like(self.user, self.post) else: success = Like.delete_like(like_key) if success: self.redirect_to("viewpost", post_key=post_key, _fragment="liked") else: self.abort(500) else: self.abort(404, "You can't like your own post")
def tearDown(self) -> None: Like.delete_like(Like(self.user, self.event)) Event.delete_event_by_id(self.event) User.delete_user_by_email(self.user)