Skip to content
Snippets Groups Projects
Commit 398829ce authored by Manon Blanco's avatar Manon Blanco Committed by Erwan Rouchet
Browse files

Add a filter name

parent a9698ea7
No related branches found
No related tags found
No related merge requests found
......@@ -31,6 +31,8 @@ class ElementsList(CorpusACLMixin, ListAPIView):
filters['corpus'] = self.get_corpus(self.request.query_params['corpus'])
else:
filters['corpus__in'] = Corpus.objects.readable(self.request.user)
if 'name' in self.request.query_params:
filters['name__icontains'] = self.request.query_params['name']
return Element.objects.filter(**filters).prefetch_related('corpus').order_by('corpus', 'type', 'name')
......
......@@ -60,3 +60,12 @@ class TestElementsAPI(FixtureAPITestCase):
url += '?type=potato'
response = self.client.get(url)
self.assertEqual(response.status_code, status.HTTP_400_BAD_REQUEST)
def test_list_elements_filter_name(self):
nameSelected = 'ol'
response = self.client.get(reverse('api:elements'), params={'name': nameSelected})
self.assertEqual(response.status_code, status.HTTP_200_OK)
data = response.json()
results = data['results']
for result in results:
self.assertIn(nameSelected, result['name'])
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment