def test_fetch_group_post_comment_likes(self, *args, **kwargs): group = GroupFactory(remote_id=GROUP_ID) post = PostFactory(remote_id=GROUP_POST_ID, owner=group) comment = CommentFactory(remote_id=GROUP_COMMENT_ID, object=post, owner=group) self.assertEqual(comment.likes_users.count(), 0) users_initial = User.objects.count() users = comment.fetch_likes(all=True) self.assertGreater(comment.likes_count, 0) self.assertEqual(comment.likes_count, len(users)) self.assertEqual(comment.likes_count, User.objects.count() - users_initial) self.assertEqual(comment.likes_count, comment.likes_users.count())
def test_parse_comment(self): response = '''{"response":[6, {"id":2505,"from_id":16271479,"date":1298365200,"text":"Добрый день , кароче такая идея когда опросы создаешь вместо статуса - можно выбрать аудитории опрашиваемых, например только женский или мужской пол могут участвовать (то бишь голосовать в опросе)."}, {"id":2507,"from_id":16271479,"date":1286105582,"text":"Это уже не практично, имхо.<br>Для этого делайте группу и там опрос, а в группу принимайте тех, кого нужно.","reply_to_uid":16271479,"reply_to_cid":2505}, {"id":2547,"from_id":2943,"date":1286218080,"text":"Он будет только для групп благотворительных организаций."}]} ''' user = UserFactory(remote_id=USER_ID) post = PostFactory(remote_id=POST_ID, owner=user) #instance = Comment(post=post) instance = CommentFactory(object=post) author = UserFactory(remote_id=16271479) instance.parse(json.loads(response)['response'][1]) instance.save() self.assertEqual(instance.remote_id, '%s_2505' % USER_ID) self.assertEqual( instance.text, u'Добрый день , кароче такая идея когда опросы создаешь вместо статуса - можно выбрать ' u'аудитории опрашиваемых, например только женский или мужской пол могут участвовать ' u'(то бишь голосовать в опросе).') self.assertEqual(instance.author, author) self.assertIsInstance(instance.date, datetime) instance = Comment(object=post) instance.parse(json.loads(response)['response'][2]) instance.save() self.assertEqual(instance.remote_id, '%s_2507' % USER_ID) self.assertEqual(instance.reply_for.remote_id, 16271479)
def fetch_post_comments_recursive_calls_ammount_side_effect(*args, **kwargs): comments_count = 100 if kwargs.get('offset', 0) == 0 else 6 comments = [CommentFactory() for i in range(comments_count)] return Comment.objects.filter(pk__in=[comment.pk for comment in comments])