123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657 |
- from django.test import TestCase
- from django.urls import reverse
- from misago.conf import settings
- from misago.users.testutils import create_test_user
- class AuthenticateApiTests(TestCase):
- def setUp(self):
- self.api_link = reverse("misago:api:mention-suggestions")
- def test_no_query(self):
- """api returns empty result set if no query is given"""
- response = self.client.get(self.api_link)
- self.assertEqual(response.status_code, 200)
- self.assertEqual(response.json(), [])
- def test_no_results(self):
- """api returns empty result set if no query is given"""
- response = self.client.get(self.api_link + "?q=none")
- self.assertEqual(response.status_code, 200)
- self.assertEqual(response.json(), [])
- def test_user_search(self):
- """api searches uses"""
- create_test_user("BobBoberson", "bob@test.com")
- # exact case sensitive match
- response = self.client.get(self.api_link + "?q=BobBoberson")
- self.assertEqual(response.status_code, 200)
- self.assertEqual(
- response.json(),
- [{"avatar": "http://placekitten.com/100/100", "username": "BobBoberson"}],
- )
- # rought case insensitive match
- response = self.client.get(self.api_link + "?q=bob")
- self.assertEqual(response.status_code, 200)
- self.assertEqual(
- response.json(),
- [{"avatar": "http://placekitten.com/100/100", "username": "BobBoberson"}],
- )
- # eager case insensitive match
- response = self.client.get(self.api_link + "?q=b")
- self.assertEqual(response.status_code, 200)
- self.assertEqual(
- response.json(),
- [{"avatar": "http://placekitten.com/100/100", "username": "BobBoberson"}],
- )
- # invalid match
- response = self.client.get(self.api_link + "?q=bu")
- self.assertEqual(response.status_code, 200)
- self.assertEqual(response.json(), [])
|