def test_can_filter_on_all_fields(self): search_term = 'Pet' user_filter = UserFilterMixin() user_filter.request = self._get_mocked_request(value=search_term) user_filter.filter_queryset(self.queryset) self.assertTrue(self.queryset.filter.called) Q_object = self.queryset.filter.call_args[0][0] self.assertSequenceEqual([(k, v) for k, v in Q_object.children], [ ('first_name__istartswith', search_term), ('last_name__istartswith', search_term), ('email__istartswith', search_term), ])
def test_can_filter_on_all_fields(self): search_term = 'Pet' user_filter = UserFilterMixin() user_filter.request = self._get_mocked_request(value=search_term) user_filter.filter_queryset(self.queryset) self.assertTrue(self.queryset.filter.called) Q_object = self.queryset.filter.call_args[0][0] self.assertSequenceEqual( [(k, v) for k, v in Q_object.children], [ ('first_name__istartswith', search_term), ('last_name__istartswith', search_term), ('email__istartswith', search_term), ] )
def test_can_filter_only_on_email(self): user_filter = UserFilterMixin() user_filter.request = self._get_mocked_request(value='b@some') user_filter.filter_queryset(self.queryset) self.queryset.filter.assert_called_once_with(email__icontains='b@some')