Commit f4a0736c by Afzal Wali Committed by Afzal Wali Naushahi

Excluded hidden programs from typeahead endpoint

LEARNER-1124
parent 2a948ac2
...@@ -552,6 +552,20 @@ class TypeaheadSearchViewTests(DefaultPartnerMixin, TypeaheadSerializationMixin, ...@@ -552,6 +552,20 @@ class TypeaheadSearchViewTests(DefaultPartnerMixin, TypeaheadSerializationMixin,
} }
self.assertDictEqual(response_data, expected_response_data) self.assertDictEqual(response_data, expected_response_data)
def test_typeahead_hidden_programs(self):
""" Verify that typeahead does not return hidden programs. """
title = "hiddenprogram"
program = ProgramFactory(title=title, hidden=False, status=ProgramStatus.Active, partner=self.partner)
ProgramFactory(title=program.title + 'hidden', hidden=True, status=ProgramStatus.Active, partner=self.partner)
response = self.get_response({'q': program.title})
self.assertEqual(response.status_code, 200)
response_data = response.json()
expected_response_data = {
'course_runs': [],
'programs': [self.serialize_program(program)]
}
self.assertDictEqual(response_data, expected_response_data)
def test_exception(self): def test_exception(self):
""" Verify the view raises an error if the 'q' query string parameter is not provided. """ """ Verify the view raises an error if the 'q' query string parameter is not provided. """
response = self.get_response() response = self.get_response()
......
...@@ -153,7 +153,7 @@ class TypeaheadSearchView(PartnerMixin, APIView): ...@@ -153,7 +153,7 @@ class TypeaheadSearchView(PartnerMixin, APIView):
SQ(title_autocomplete=clean_query) | SQ(title_autocomplete=clean_query) |
SQ(authoring_organizations_autocomplete=clean_query) SQ(authoring_organizations_autocomplete=clean_query)
) )
programs = programs.filter(status=ProgramStatus.Active).filter(partner=partner.short_code) programs = programs.filter(status=ProgramStatus.Active).exclude(hidden=True).filter(partner=partner.short_code)
programs = programs[:self.RESULT_COUNT] programs = programs[:self.RESULT_COUNT]
return course_run_list, programs return course_run_list, programs
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment