def test_get_my_reply_topics(self): self.client.login(username=self.user.mobile, password='******') other_user = UserFactory() UserInGroup.objects.add_user(other_user, self.group) my_group_topics = MessageFactory.create_batch(4, create_user=other_user, group=self.group, is_topic=True) my_answer1 = MessageFactory.create_batch( 3, create_user=self.user, group=self.group, is_topic=False, answer_to_topic=my_group_topics[0]) my_answer2 = MessageFactory.create_batch( 3, create_user=self.user, group=self.group, is_topic=False, answer_to_topic=my_group_topics[1]) not_topics = MessageFactory.create_batch(4, create_user=self.user, group=self.group, is_topic=False) url = self.url + '?filter=my_reply' rsp = self.client.get(url) self.assertResponseRaiseCode(rsp, '0') self.assertEqual(rsp.data['result']['count'], 2) self.assertEqual(rsp.data['result']['data'][0]['id'], my_group_topics[1].id)
def test_get_my_group_topics(self): self.client.login(username=self.user.mobile, password='******') other_user = UserFactory() group1 = UserGroupFactory(create_user=other_user) group2 = UserGroupFactory(create_user=other_user) UserInGroup.objects.add_user(self.user, group1) my_topics = MessageFactory.create_batch(3, create_user=self.user, group=self.group, is_topic=True) my_group_topics = MessageFactory.create_batch(3, create_user=other_user, group=group1, is_topic=True) not_topics = MessageFactory.create_batch(4, create_user=self.user, group=self.group, is_topic=False) not_my_topics = MessageFactory.create_batch(5, create_user=other_user, group=group2, is_topic=True) url = self.url + '?filter=my_group' rsp = self.client.get(url) self.assertResponseRaiseCode(rsp, '0') self.assertEqual(rsp.data['result']['count'], 6)
def test_answer_topic_with_message_fail_wrong_message_and_topic(self): self.client.login(username=self.user.mobile, password='******') topic = MessageFactory.create(create_user=self.user, group=self.group, is_topic=True) message = MessageFactory.create(create_user=self.user, group=self.group, is_topic=False) url = self.url + str(topic.id) + '/answer-topic/' content = '你说的不对' data = {'content': content, 'answer_to_message': message.id} rsp = self.client.post(url, data=data, format='json') self.assertResponseRaiseCode(rsp, '1012')
def test_retrieve_topic(self): out = self.client.login(username=self.user.mobile, password='******') topic = MessageFactory(create_user=self.user, group=self.group1, is_topic=True) reply = MessageFactory(create_user=self.user, group=self.group1, is_topic=False, answer_to_topic=topic) LikesFactory(user=self.user, message=topic) url = self.url + str(topic.id) + '/' rsp = self.client.get(url) self.assertResponseRaiseCode(rsp, '0') self.assertEqual(len(rsp.data['result']['likes']), 1) self.assertEqual(rsp.data['result']['likes'][0], topic.id)
def test_answer_topic_with_message_success(self): self.client.login(username=self.user.mobile, password='******') topic = MessageFactory.create(create_user=self.user, group=self.group, is_topic=True) message = MessageFactory.create(create_user=self.user, group=self.group, is_topic=False, answer_to_topic=topic) url = self.url + str(topic.id) + '/answer-topic/' content = '你说的不对' data = {'content': content, 'answer_to_message': message.id} rsp = self.client.post(url, data=data, format='json') self.assertResponseRaiseCode(rsp, '0') self.assertEqual(rsp.data['result']['content'], content)
def test_get_topics_list(self): topics1 = MessageFactory.create_batch(3, create_user=self.user, group=self.group1, is_topic=True) topics2 = MessageFactory.create_batch(3, create_user=self.user, group=self.group2, is_topic=True) not_topics = MessageFactory.create_batch(4, create_user=self.user, group=self.group1, is_topic=False) rsp = self.client.get(self.url) self.assertResponseRaiseCode(rsp, '0') self.assertEqual(rsp.data['result']['count'], 6)
def test_like_message_success(self): self.client.login(username=self.user.mobile, password='******') topic = MessageFactory.create(create_user=self.user, group=self.group, is_topic=True) url = self.url + str(topic.id) + '/like/' rsp = self.client.post(url) self.assertResponseRaiseCode(rsp, '0')
def test_search_topics_with_q(self): topics1 = MessageFactory.create_batch(3, create_user=self.user, group=self.group1, is_topic=True, title='abcd') topics2 = MessageFactory.create_batch(3, create_user=self.user, group=self.group2, is_topic=True) not_topics = MessageFactory.create_batch(4, create_user=self.user, group=self.group1, is_topic=False) url = self.url + '?q=ab&size=2' rsp = self.client.get(url) self.assertResponseRaiseCode(rsp, '0') self.assertEqual(rsp.data['result']['count'], 3) self.assertEqual(len(rsp.data['result']['data']), 2)
def test_get_my_like_topics(self): self.client.login(username=self.user.mobile, password='******') other_user = UserFactory() UserInGroup.objects.add_user(other_user, self.group) topics = MessageFactory.create_batch(3, create_user=other_user, group=self.group, is_topic=True) non_topics = MessageFactory.create_batch(4, create_user=other_user, group=self.group, is_topic=False) LikesFactory(user=self.user, message=topics[1]) LikesFactory(user=self.user, message=topics[0]) LikesFactory(user=self.user, message=non_topics[0]) LikesFactory(user=other_user, message=topics[2]) url = self.url + '?filter=my_like' rsp = self.client.get(url) self.assertResponseRaiseCode(rsp, '0') self.assertEqual(rsp.data['result']['count'], 2) self.assertEqual(rsp.data['result']['data'][0]['id'], topics[0].id)