This commit is contained in:
parent
e697ef2b6d
commit
524faf00bc
|
@ -293,7 +293,7 @@ class SearchCell(CellBase):
|
|||
return render_response(service)
|
||||
|
||||
if results.get('err'):
|
||||
return render_response(service)
|
||||
return render_response(service, results)
|
||||
|
||||
if service.get('data_key'):
|
||||
results['data'] = results.get(service['data_key']) or []
|
||||
|
|
|
@ -5,7 +5,15 @@
|
|||
{% elif cell.has_multiple_search_services %}
|
||||
<p class="search-service-label">{{ search_service_label }}</p>
|
||||
{% endif %}
|
||||
{% if results.data %}
|
||||
{% if results.err %}
|
||||
<div class="warningnotice">
|
||||
{% if results.err_desc %}
|
||||
{{ results.err_desc }}
|
||||
{% else %}
|
||||
{% trans "…service unavailable." %}
|
||||
{% endif %}
|
||||
</div>
|
||||
{% elif results.data %}
|
||||
<div class="links-list">
|
||||
<ul>
|
||||
{% for item in results.data %}
|
||||
|
|
|
@ -317,12 +317,27 @@ def test_search_custom_templates(app):
|
|||
assert '<li><a href="http://example.net/123/">A B</a>' in resp.text
|
||||
assert '<div>description A</div>' in resp.text
|
||||
|
||||
# empty data is handled
|
||||
response = {'err': 0, 'data': []}
|
||||
mock_json.json.return_value = response
|
||||
|
||||
resp = app.get('/ajax/search/%s/search2/?q=foo' % cell.pk, status=200)
|
||||
assert 'no result found' in resp.text
|
||||
|
||||
# err != 0 is handled
|
||||
response = {'err': 1, 'data': 'something'}
|
||||
mock_json.json.return_value = response
|
||||
|
||||
resp = app.get('/ajax/search/%s/search2/?q=foo' % cell.pk, status=200)
|
||||
assert 'no result found' in resp.text
|
||||
assert 'service unavailable.' in resp.text
|
||||
|
||||
# err_desc is handled too
|
||||
response = {'err': 1, 'data': 'something', 'err_desc': 'boom'}
|
||||
mock_json.json.return_value = response
|
||||
|
||||
resp = app.get('/ajax/search/%s/search2/?q=foo' % cell.pk, status=200)
|
||||
assert 'service unavailable.' not in resp.text
|
||||
assert 'boom' in resp.text
|
||||
|
||||
|
||||
def test_search_cell_visibility(settings, app):
|
||||
|
|
Loading…
Reference in New Issue