Set accepted files for letter upload

This commit is contained in:
Tom Byers
2020-12-16 11:21:54 +00:00
parent b8f8d743d5
commit fb1ac8bc42
4 changed files with 7 additions and 0 deletions

View File

@@ -292,6 +292,7 @@ def uploaded_letter_preview(service_id, file_id):
form = LetterUploadPostageForm(
postage_zone=postal_address.postage
)
allowed_spreadsheet_file_extensions = ','.join([f'.{ext}' for ext in Spreadsheet.ALLOWED_FILE_EXTENSIONS])
template = get_template(
template_dict,
@@ -313,6 +314,7 @@ def uploaded_letter_preview(service_id, file_id):
message=error_message,
error_code=error_shortcode,
form=form,
allowed_spreadsheet_file_extensions=allowed_spreadsheet_file_extensions,
postal_address=postal_address,
re_upload_form=re_upload_form
)

View File

@@ -29,6 +29,7 @@
<p class="govuk-body">
{{ file_upload(
form.file,
allowed_file_extensions='.pdf',
action=url_for('main.upload_letter', service_id=current_service.id),
button_text='Upload your file again' if error else 'Choose file',
show_errors=False

View File

@@ -19,6 +19,7 @@
<div class="form-group">
{{ file_upload(
re_upload_form.file,
allowed_file_extensions='.pdf',
action=url_for('main.upload_letter', service_id=current_service.id),
button_text='Upload your file again'
) }}

View File

@@ -15,6 +15,7 @@ def test_get_upload_letter(client_request):
assert page.find('h1').text == 'Upload a letter'
assert page.find('input', class_='file-upload-field')
assert page.find('input', class_='file-upload-field')['accept'] == '.pdf'
assert page.select('main button[type=submit]')
assert normalize_spaces(page.find('label', class_='file-upload-button').text) == 'Choose file'
@@ -213,6 +214,7 @@ def test_post_upload_letter_shows_error_when_file_is_not_a_pdf(client_request):
assert page.find('h1').text == 'Wrong file type'
assert page.find('div', class_='banner-dangerous').find('p').text == 'Save your letter as a PDF and try again.'
assert normalize_spaces(page.find('label', class_='file-upload-button').text) == 'Upload your file again'
assert page.find('input', type='file')['accept'] == '.pdf'
def test_post_upload_letter_shows_error_when_no_file_uploaded(client_request):
@@ -346,6 +348,7 @@ def test_post_upload_letter_shows_letter_preview_for_invalid_file(mocker, client
assert page.find("a", {"class": "govuk-back-link"})["href"] == "/services/{}/upload-letter".format(SERVICE_ONE_ID)
assert page.find("label", {"class": "file-upload-button"})
assert page.find("input", {"type": "file"})["accept"] == '.pdf'
letter_images = page.select('main img')
assert len(letter_images) == 1