Beispiel #1
0
 def test_unauthenticated_user_can_also_view_posts(self):
     self.client.logout()
     num_posts = 3
     create_post_objects(self.profile.user, num_posts)
     response = self.client.get(self.url)
     self.assertEqual(response.status_code, status.HTTP_200_OK)
     self.assertEqual(len(response.data['results']), num_posts)
Beispiel #2
0
 def test_posts_response_are_paginated(self, mocked_page_size):
     mocked_page_size.return_value = 1
     num_posts = 3
     create_post_objects(self.profile.user, num_posts)
     response = self.client.get(self.url)
     self.assertEqual(response.status_code, status.HTTP_200_OK)
     self.assertEqual(len(response.data['results']),
                      mocked_page_size.return_value)
     self.assertEqual(response.data['count'], num_posts)
     self.assertTrue(response.data['next'])
Beispiel #3
0
 def setUp(self):
     self.user_1 = UserFactory()
     self.user_2 = UserFactory(username='******',
                               first_name='Jane',
                               email='*****@*****.**')
     ProfileFactory(user=self.user_1)
     ProfileFactory(user=self.user_2)
     profile_1_posts = create_post_objects(self.user_1, 3)
     profile_2_posts = create_post_objects(self.user_2, 2)
     self.posts_with_2_loves = profile_1_posts[:1] + profile_2_posts[:1]
     self.posts_with_1_love = profile_1_posts[1:2]
     self.posts_with_no_love = profile_1_posts[2:] + profile_2_posts[1:]
     create_love_relationship(self.user_1, self.posts_with_2_loves)
     create_love_relationship(self.user_2, self.posts_with_2_loves)
     create_love_relationship(self.user_2, self.posts_with_1_love)
Beispiel #4
0
 def test_get_all_posts(self):
     num_posts = 3
     posts = create_post_objects(self.profile.user, num_posts)
     posts.reverse()
     response = self.client.get(self.url)
     self.assertEqual(response.status_code, status.HTTP_200_OK)
     self.assertEqual(len(response.data['results']), num_posts)
     for index, post in enumerate(response.data['results']):
         self.assertEqual(post['content'], posts[index].content)
Beispiel #5
0
    def test_get_top_2_posts(self):
        user_2 = UserFactory(username='******')
        num_posts = 3
        posts = create_post_objects(self.profile.user, num_posts)
        post_with_no_love, post_with_1_love, post_with_2_loves = posts
        create_love_relationship(self.profile.user,
                                 [post_with_1_love, post_with_2_loves])
        create_love_relationship(user_2, [post_with_2_loves])

        response = self.client.get(self.url, {'q': 'top', 'limit': 2})
        self.assertEqual(response.status_code, status.HTTP_200_OK)
        self.assertEqual(len(response.data['results']), 2)
Beispiel #6
0
    def test_get_top_posts(self):
        user_2 = UserFactory(username='******')
        num_posts = 3
        posts = create_post_objects(self.profile.user, num_posts)
        post_with_no_love, post_with_1_love, post_with_2_loves = posts
        create_love_relationship(self.profile.user,
                                 [post_with_1_love, post_with_2_loves])
        create_love_relationship(user_2, [post_with_2_loves])

        response = self.client.get(self.url, {'q': 'top'})
        self.assertEqual(response.status_code, status.HTTP_200_OK)
        posts.reverse()
        expected = [post.content for post in posts]
        returned = [post['content'] for post in response.data['results']]
        self.assertEqual(returned, expected)