def test_bookmark_is_working(self): url = reverse('bookmark') user, username, passwd = get_fake_user_and_credentials() self.client.login(username=username, password=passwd) fake_activity = get_fake_activity() response = self.client.post(url, {'id': fake_activity.id}) self.assertEqual(response.status_code, 200) self.assertIn(fake_activity, get_user_bookmarks(user))
def test_fake_box_with_multiple_activities(self): fake_box = get_fake_box() fake_category = get_fake_category(fake_box) fake_activity_1 = get_fake_activity(categories=[fake_category]) fake_activity_2 = get_fake_activity(categories=[fake_category]) url = reverse('box', kwargs={ 'id': fake_box.id, 'title': fake_box.title }) response = self.client.get(url) self.assertEqual(response.status_code, 200) context = response.context self.assertEqual(context['box'], fake_box) self.assertEqual(len(context['activities']), 2) self.assertCountEqual(context['activities'], [fake_activity_1, fake_activity_2]) self.assertEqual(context['url_next_page_number'], None) self.assertEqual(context['url_prev_page_number'], None)
def test_rating_is_working(self): url = reverse('rate') user, username, passwd = get_fake_user_and_credentials() self.client.login(username=username, password=passwd) fake_activity = get_fake_activity() response = self.client.post(url, { 'id': fake_activity.id, 'new_rating': 3 }) self.assertEqual(response.status_code, 200) self.assertEqual(3, get_user_rating(user, fake_activity))
def test_fake_activity(self): fake_activity = get_fake_activity() url = reverse('activity', kwargs={ 'id': fake_activity.id, 'title': fake_activity.title }) response = self.client.get(url) assert_base_templates(self, response) self.assertTemplateUsed(response, 'activity/activity.html') self.assertEqual(response.status_code, 200) context = response.context self.assertEqual(context['activity'], fake_activity) self.assertEqual(len(context['reviews']), 0) self.assertEqual(context['bookmarks'], None) self.assertEqual(len(context['photos']), 0) self.assertEqual(context['user_rating'], 0) self.assertEqual(context['user_review'], None)
def test_invalid_rating(self): url = reverse('rate') user, username, passwd = get_fake_user_and_credentials() self.client.login(username=username, password=passwd) fake_activity = get_fake_activity() response = self.client.post(url, { 'id': fake_activity.id, 'new_rating': -1 }) self.assertEqual(response.status_code, 400) response = self.client.post(url, { 'id': fake_activity.id, 'new_rating': 6 }) self.assertEqual(response.status_code, 400) response = self.client.post(url, { 'id': fake_activity.id, 'new_rating': 'xyz' }) self.assertEqual(response.status_code, 400)