• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

gcivil-nyu-org / Wednesday-Fall2023-Team-1 / #614980386

13 Dec 2023 12:50AM UTC coverage: 86.973%. First build
#614980386

Pull #257

travis-ci

Pull Request #257: Final sprint

702 of 804 new or added lines in 23 files covered. (87.31%)

1382 of 1589 relevant lines covered (86.97%)

0.87 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

85.71
/search/tests/test_open_search_page.py
1
from django.test import TestCase, RequestFactory
1✔
2
from django.urls import reverse
1✔
3
from django.contrib.messages.storage.fallback import FallbackStorage
1✔
4
from unittest.mock import patch
1✔
5
from search.forms import UsersearchForm  # Replace 'search' with the actual app name
1✔
6
from user_profile.models import User
1✔
7
import datetime
1✔
8

9
# Mock data and functions
10
mock_spotify_token = {"access_token": "test_token"}
1✔
11
mock_user_info = {"id": "test_user_id", "display_name": "test_username"}
1✔
12

13

14
class OpenSearchPageTests(TestCase):
1✔
15
    def setUp(self):
1✔
16
        self.factory = RequestFactory()
1✔
17
        self.user1 = User.objects.create_user(
1✔
18
            username="testuser1",
19
            password="12345",
20
            user_id="test_user_id1",
21
            total_followers=100,
22
            profile_image_url="http://example.com/image.jpg",
23
            user_country="Test Country",
24
            user_last_login=datetime.datetime.now(),
25
            user_bio="Test Bio",
26
            user_city="Test City",
27
            user_total_friends=50,
28
            track_id="track123",
29
            # other fields as required
30
        )
31

32
    def _add_messages_storage_to_request(self, request):
1✔
NEW
33
        setattr(request, "session", "session")
×
NEW
34
        messages = FallbackStorage(request)
×
NEW
35
        setattr(request, "_messages", messages)
×
NEW
36
        return request
×
37

38
    # @patch("search.views.get_spotify_token", return_value=mock_spotify_token)
39
    @patch("spotipy.Spotify.current_user", return_value=mock_user_info)
1✔
40
    @patch("search.views.get_req_list", return_value=[])
1✔
41
    @patch("search.views.current_friend_list", return_value=[])
1✔
42
    def test_open_search_page_success(
1✔
43
        self,
44
        mock_friend_list,
45
        mock_req_list,
46
        mock_current_user,
47
    ):
48
        self.client.login(username="testuser1", password="12345")
1✔
49
        response = self.client.get(reverse("search:search_page"))
1✔
50
        self.assertEqual(response.status_code, 200)
1✔
51
        self.assertIn("UsersearchForm", response.context)
1✔
52
        self.assertIsInstance(response.context["UsersearchForm"], UsersearchForm)
1✔
53
        self.assertEqual(response.context["username"], "testuser1")
1✔
54

55
    # @patch("search.views.get_spotify_token", return_value=None)
56
    # def test_open_search_page_no_token(self, mock_get_token):
57
    #     request = self.factory.get(reverse("search:search_page"))
58
    #     request = self._add_messages_storage_to_request(request)
59
    #     response = open_search_page(request)
60
    #     messages = list(get_messages(request))
61
    #     self.assertTrue(
62
    #         any(
63
    #             message.message == "Open_search_page failed, please try again later."
64
    #             for message in messages
65
    #         )
66
    #     )
67
    #     self.assertEqual(response.status_code, 302)
68
    #     self.assertEqual(response.url, reverse("login:index"))
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2025 Coveralls, Inc