Skip to content
Snippets Groups Projects
Commit 790db80d authored by Daniel Levy's avatar Daniel Levy
Browse files

Fix potential issue with spaces between terms

parent a23bd922
No related branches found
No related tags found
2 merge requests!166Staging,!164Fix potential issue with spaces between terms
Checking pipeline status
......@@ -18,6 +18,7 @@ class TagsFilter(object):
tag_list = tags.split(',')
filters.setdefault('terms', [])
for a_tag in tag_list:
a_tag = a_tag.strip()
filters['terms'].append(f'tags:{a_tag}')
......
......@@ -663,6 +663,46 @@ def test_table_items_filtered_by_all_tags_not_either():
assert ids == [third_female_item['id']]
@pytest.mark.django_db
def test_filters_not_affected_by_unecessary_spacing():
tags = TaxonomyFactory(name="Tags", slug="tags")
not_tags = TaxonomyFactory(name="Not tags")
female_item = transport.items.create({
'body': 'Message from female',
})
tags = TaxonomyFactory(name='Tags', slug='tags')
female_term = TermFactory(name='female', taxonomy=tags)
second_female_term = TermFactory(name='woman', taxonomy=tags)
transport.items.add_terms(
female_item['id'], female_term.taxonomy.slug, female_term.name)
transport.items.add_terms(
female_item['id'],
second_female_term.taxonomy.slug,
second_female_term.name
)
page = TabbedPageFactory()
tab_instance = TabInstanceFactory(page=page)
request = MagicMock(
session={'THREADED_FILTERS': {}},
GET=QueryDict('tags=female, woman')
)
tab = ViewAndEditTableTab()
context_data = tab.get_context_data(
tab_instance, request,
dynamic_filters=['tags']
)
table = context_data['table']
ids = [t['id'] for t in table.data.data]
assert ids == [female_item['id']]
@pytest.mark.django_db
def test_table_items_filtered_by_feedback_type():
rumour_1 = transport.items.create({
......
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