portfolio: pass text to json (#36515)
This commit is contained in:
parent
0be6a94f13
commit
4aa96b93c5
|
@ -4,6 +4,7 @@ import datetime
|
|||
import json
|
||||
import pytest
|
||||
import hashlib
|
||||
import locale
|
||||
import os
|
||||
import re
|
||||
import time
|
||||
|
@ -17,6 +18,7 @@ try:
|
|||
except ImportError:
|
||||
Image = None
|
||||
|
||||
from django.utils import six
|
||||
from django.utils.six import StringIO, BytesIO
|
||||
from django.utils.six.moves.urllib import parse as urlparse
|
||||
|
||||
|
@ -3552,8 +3554,15 @@ def test_formdata_generated_document_odt_to_pdf_download_push_to_portfolio(pub,
|
|||
http_post_request.return_value = None, 200, 'null', None
|
||||
resp = resp.form.submit('button_export_to')
|
||||
assert http_post_request.call_count == 1
|
||||
assert ("file 'template.pdf' pushed to portfolio of 'Foo Bar\\xc3\\xa9'"
|
||||
== caplog.records[-1].message)
|
||||
if six.PY2:
|
||||
assert ("file 'template.pdf' pushed to portfolio of 'Foo Bar\\xc3\\xa9'"
|
||||
== caplog.records[-1].message)
|
||||
elif locale.getpreferredencoding() == 'UTF-8':
|
||||
assert ("file 'template.pdf' pushed to portfolio of 'Foo Baré'"
|
||||
== caplog.records[-1].message)
|
||||
else: # Python < 3.7
|
||||
assert ("file 'template.pdf' pushed to portfolio of 'Foo Bar\xe9'"
|
||||
== caplog.records[-1].message)
|
||||
|
||||
resp = resp.follow() # $form/$id/create_doc
|
||||
resp = resp.follow() # $form/$id/create_doc/
|
||||
|
@ -3565,8 +3574,7 @@ def test_formdata_generated_document_odt_to_pdf_download_push_to_portfolio(pub,
|
|||
http_post_request.return_value = None, 400, 'null', None # fail
|
||||
resp = resp.form.submit('button_export_to')
|
||||
assert http_post_request.call_count == 1
|
||||
assert ("file 'template.pdf' failed to be pushed to portfolio of 'Foo Bar\\xc3\\xa9'"
|
||||
== caplog.records[-1].message)
|
||||
assert caplog.records[-1].message.startswith("file 'template.pdf' failed to be pushed to portfolio of 'Foo")
|
||||
|
||||
# failed to push to portfolio, but document is here
|
||||
resp = resp.follow() # $form/$id/create_doc
|
||||
|
@ -3587,9 +3595,8 @@ def test_formdata_generated_document_odt_to_pdf_download_push_to_portfolio(pub,
|
|||
assert payload['file_name'] == 'template.pdf'
|
||||
assert payload['user_email'] == 'foo@localhost'
|
||||
assert payload['origin'] == 'example.net'
|
||||
assert payload['file_b64_content'].decode('base64').startswith('%PDF')
|
||||
assert ("file 'template.pdf' pushed to portfolio of 'Foo Bar\\xc3\\xa9'"
|
||||
== caplog.records[-1].message)
|
||||
assert base64.decodestring(force_bytes(payload['file_b64_content'])).startswith(b'%PDF')
|
||||
assert caplog.records[-1].message.startswith("file 'template.pdf' pushed to portfolio of 'Foo")
|
||||
assert resp.location == form_location
|
||||
resp = resp.follow() # back to form page
|
||||
|
||||
|
|
|
@ -92,7 +92,7 @@ def push_document(user, filename, stream):
|
|||
payload['origin'] = urlparse.urlparse(get_publisher().get_frontoffice_url()).netloc
|
||||
payload['file_name'] = force_text(filename, charset)
|
||||
stream.seek(0)
|
||||
payload['file_b64_content'] = base64.b64encode(stream.read())
|
||||
payload['file_b64_content'] = force_text(base64.b64encode(stream.read()))
|
||||
async_post = fargo_post_json_async('/api/documents/push/', payload)
|
||||
|
||||
def afterjob(job):
|
||||
|
|
Loading…
Reference in New Issue