123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263 |
- 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(), [])
|