mirror of
https://github.com/GSA/notifications-admin.git
synced 2026-08-26 09:13:58 -04:00
Refactor uploads preview error banner to use a shared component
Also refactor a corresponding test to avoid asserting on the content
This commit is contained in:
@@ -145,13 +145,13 @@ def uploaded_letter_preview(service_id, file_id):
|
|||||||
original_filename = metadata.get('filename')
|
original_filename = metadata.get('filename')
|
||||||
page_count = metadata.get('page_count')
|
page_count = metadata.get('page_count')
|
||||||
status = metadata.get('status')
|
status = metadata.get('status')
|
||||||
error_message = metadata.get('message')
|
error_shortcode = metadata.get('message')
|
||||||
invalid_pages = metadata.get('invalid_pages')
|
invalid_pages = metadata.get('invalid_pages')
|
||||||
|
|
||||||
if invalid_pages:
|
if invalid_pages:
|
||||||
invalid_pages = json.loads(invalid_pages)
|
invalid_pages = json.loads(invalid_pages)
|
||||||
|
|
||||||
error = get_letter_validation_error(error_message, invalid_pages, page_count)
|
error_message = get_letter_validation_error(error_shortcode, invalid_pages, page_count)
|
||||||
template_dict = service_api_client.get_precompiled_template(service_id)
|
template_dict = service_api_client.get_precompiled_template(service_id)
|
||||||
# Override pre compiled letter template postage to none as it has not yet been picked even though
|
# Override pre compiled letter template postage to none as it has not yet been picked even though
|
||||||
# the pre compiled letter template has its postage set as second class as the DB currently requires
|
# the pre compiled letter template has its postage set as second class as the DB currently requires
|
||||||
@@ -177,7 +177,8 @@ def uploaded_letter_preview(service_id, file_id):
|
|||||||
template=template,
|
template=template,
|
||||||
status=status,
|
status=status,
|
||||||
file_id=file_id,
|
file_id=file_id,
|
||||||
error=error,
|
message=error_message,
|
||||||
|
error_code=error_shortcode,
|
||||||
form=form,
|
form=form,
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
<h1 class='banner-title' data-module="track-error" data-error-type="Trying to send a letter that's too long" data-error-label="{{ upload_id }}">
|
<h1 class='banner-title' data-module="track-error" data-error-type="Trying to send a letter that's too long" data-error-label="service_id: {{ current_service.id }}">
|
||||||
Your letter is too long
|
Your letter is too long
|
||||||
</h1>
|
</h1>
|
||||||
<p>
|
<p>
|
||||||
|
|||||||
@@ -2,9 +2,13 @@
|
|||||||
|
|
||||||
{% call banner_wrapper(type='dangerous') %}
|
{% call banner_wrapper(type='dangerous') %}
|
||||||
{% if message is string %}
|
{% if message is string %}
|
||||||
<h1 class="banner-title">{{ message }}</h1>
|
<h1 class="banner-title">
|
||||||
|
{{ message }}
|
||||||
|
</h1>
|
||||||
{% else %}
|
{% else %}
|
||||||
<h1 class="banner-title">{{ message.title }}</h1>
|
<h1 class="banner-title" data-module="track-error" data-error-type="{{ error_code }}" data-error-label="precompiled letter validation failed for service_id: {{ current_service.id }}">
|
||||||
|
{{ message.title }}
|
||||||
|
</h1>
|
||||||
{% if message.detail %}
|
{% if message.detail %}
|
||||||
<p>
|
<p>
|
||||||
{{ message.detail | safe }}
|
{{ message.detail | safe }}
|
||||||
|
|||||||
@@ -9,13 +9,8 @@
|
|||||||
{% endblock %}
|
{% endblock %}
|
||||||
|
|
||||||
{% block maincolumn_content %}
|
{% block maincolumn_content %}
|
||||||
{% if status == 'invalid' and error %}
|
{% if status == 'invalid' and message %}
|
||||||
{% call banner_wrapper(type='dangerous') %}
|
{% include "partials/check/letter-validation-failed-banner.html" %}
|
||||||
<h1 class="banner-title">{{ error.title }}</h1>
|
|
||||||
{% if error.detail %}
|
|
||||||
<p>{{ error.detail | safe }}</p>
|
|
||||||
{% endif %}
|
|
||||||
{% endcall %}
|
|
||||||
{% elif current_service.trial_mode %}
|
{% elif current_service.trial_mode %}
|
||||||
{% call banner_wrapper(type='dangerous') %}
|
{% call banner_wrapper(type='dangerous') %}
|
||||||
{% with
|
{% with
|
||||||
|
|||||||
@@ -249,11 +249,7 @@ def test_post_upload_letter_with_invalid_file(mocker, client_request):
|
|||||||
message='content-outside-printable-area'
|
message='content-outside-printable-area'
|
||||||
)
|
)
|
||||||
|
|
||||||
assert page.find('div', class_='banner-dangerous').find('h1').text == 'We cannot print your letter'
|
assert page.find('div', class_='banner-dangerous').find('h1', {"data-error-type": 'content-outside-printable-area'})
|
||||||
assert page.find(
|
|
||||||
'div', class_='banner-dangerous').find('p').text == (
|
|
||||||
'The content appears outside the printable area on page 1 Files must meet our letter specification.'
|
|
||||||
)
|
|
||||||
assert not page.find('button', {'type': 'submit'})
|
assert not page.find('button', {'type': 'submit'})
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user