def test_get_result_queryset(self): autocomplete = BaseAutocomplete(model=User, search_fields=['username']) request = request_factory.get('/') autocomplete.request = request self.assertEquals( unicode(User.objects.none().query), unicode(autocomplete.get_result_queryset().query) ) autocomplete = BaseAutocomplete(model=User, search_fields=['username']) request = request_factory.get('/', {'q': 'foo'}) autocomplete.request = request qs = User.objects.filter(username__startswith='foo') self.assertEquals( unicode(qs.query), unicode(autocomplete.get_result_queryset().query) ) autocomplete = BaseAutocomplete(model=User, search_fields=['username'], limit=10) request = request_factory.get('/', {'q': 'foo'}) autocomplete.request = request qs = User.objects.filter(username__startswith='foo')[:10] self.assertEquals( unicode(qs.query), unicode(autocomplete.get_result_queryset().query) )
def test_get_queryset(self): autocomplete = BaseAutocomplete() self.assertRaises(ImproperlyConfigured, autocomplete.get_queryset) autocomplete = BaseAutocomplete(model=User) self.assertEquals( unicode(User.objects.all().query), unicode(autocomplete.get_queryset().query) ) autocomplete = BaseAutocomplete(queryset=User.objects.filter(is_active=True)) self.assertEquals( unicode(User.objects.filter(is_active=True).query), unicode(autocomplete.get_queryset().query) )
def test_get_mimetype(self): autocomplete = BaseAutocomplete() self.assertEquals('text/javascript', autocomplete.get_mimetype()) autocomplete = BaseAutocomplete(mimetype='application/json') self.assertEquals('application/json', autocomplete.get_mimetype()) class TestAutocomplete(BaseAutocomplete): mimetype = 'application/json' autocomplete = TestAutocomplete() self.assertEquals('application/json', autocomplete.get_mimetype())
def test_get_limit(self): autocomplete = BaseAutocomplete() self.assertEquals(None, autocomplete.get_limit()) autocomplete = BaseAutocomplete(limit=100) self.assertEquals(100, autocomplete.get_limit()) class TestAutocomplete(BaseAutocomplete): limit = 130 autocomplete = TestAutocomplete() self.assertEquals(130, autocomplete.get_limit())
def test_get_lookup(self): autocomplete = BaseAutocomplete() self.assertEquals('startswith', autocomplete.get_lookup(None)) autocomplete = BaseAutocomplete(lookup='istartswith') self.assertEquals('istartswith', autocomplete.get_lookup(None)) class TestAutocomplete(BaseAutocomplete): def get_lookup(self, field): if field == 'username': return 'icontains' return self.lookup autocomplete = TestAutocomplete() self.assertEquals('icontains', autocomplete.get_lookup('username')) self.assertEquals('startswith', autocomplete.get_lookup('email'))
def test_as_view(self): autocomplete = BaseAutocomplete() self.assertRaises(AttributeError, getattr, autocomplete, "as_view") view = BaseAutocomplete.as_view()
def test_is_authorized(self): autocomplete = BaseAutocomplete() self.assertEquals(True, autocomplete.is_authorized())
def test_get_search_fields(self): autocomplete = BaseAutocomplete() self.assertRaises(ImproperlyConfigured, autocomplete.get_search_fields) autocomplete = BaseAutocomplete(search_fields=['username']) self.assertEquals(['username'], autocomplete.get_search_fields())