reanahub / reana-workflow-engine-cwl

REANA Workflow Engine CWL
http://reana-workflow-engine-cwl.readthedocs.io/
MIT License
5 stars 37 forks source link

conformance tests: UnicodeEncodeError (6, 65, 66) #195

Open audrium opened 3 years ago

audrium commented 3 years ago

After upgrading cwltool 3 tests (6, 65, 66) fail while uploading files through reana-client. Files which fail to be uploaded:

Test [6/197] initworkdir_expreng_requirements: Test InitialWorkDirRequirement ExpressionEngineRequirement.engineConfig feature
/home/amecioni/.virtualenvs/cwl/bin/reana-cwl-runner--outdir=/tmp/tmpajcerrb9--quietv1.0/template-tool.cwlv1.0/cat-job.jsonExpecting value: line 1 column 1 (char 0)

[INFO] Connecting to https://localhost:30443
[ERROR] {'message': 'Workflow workspace created', 'workflow_id': 'e33cbe33-9f3c-4e21-84b5-294427fb83c5', 'workflow_name': 'cwl-test.6'}
[INFO] Workflow cwl-test.6/e33cbe33-9f3c-4e21-84b5-294427fb83c5 has been created.
Resolved 'v1.0/template-tool.cwl' to 'file:///home/amecioni/Documents/tests/common-workflow-language/v1.0/v1.0/template-tool.cwl'
[INFO] Resolved 'v1.0/template-tool.cwl' to 'file:///home/amecioni/Documents/tests/common-workflow-language/v1.0/v1.0/template-tool.cwl'
Resolved 'v1.0/cat-job.json' to 'file:///home/amecioni/Documents/tests/common-workflow-language/v1.0/v1.0/cat-job.json'
[INFO] Resolved 'v1.0/cat-job.json' to 'file:///home/amecioni/Documents/tests/common-workflow-language/v1.0/v1.0/cat-job.json'
[ERROR] File template-tool.cwl uploaded.
[ERROR] File template-tool.cwl uploaded.
Traceback (most recent call last):
  File "/home/amecioni/Documents/projects/reana-client/reana_client/cli/cwl_runner.py", line 150, in cwl_runner
    upload_file(workflow_id, f, file_path, access_token)
  File "/home/amecioni/Documents/projects/reana-client/reana_client/api/client.py", line 353, in upload_file
    raise e
  File "/home/amecioni/Documents/projects/reana-client/reana_client/api/client.py", line 328, in upload_file
    http_response = requests.post(
  File "/home/amecioni/.virtualenvs/cwl/lib/python3.9/site-packages/requests/api.py", line 117, in post
    return request('post', url, data=data, json=json, **kwargs)
  File "/home/amecioni/.virtualenvs/cwl/lib/python3.9/site-packages/requests/api.py", line 61, in request
    return session.request(method=method, url=url, **kwargs)
  File "/home/amecioni/.virtualenvs/cwl/lib/python3.9/site-packages/requests/sessions.py", line 542, in request
    resp = self.send(prep, **send_kwargs)
  File "/home/amecioni/.virtualenvs/cwl/lib/python3.9/site-packages/requests/sessions.py", line 655, in send
    r = adapter.send(request, **kwargs)
  File "/home/amecioni/.virtualenvs/cwl/lib/python3.9/site-packages/requests/adapters.py", line 439, in send
    resp = conn.urlopen(
  File "/home/amecioni/.virtualenvs/cwl/lib/python3.9/site-packages/urllib3/connectionpool.py", line 699, in urlopen
    httplib_response = self._make_request(
  File "/home/amecioni/.virtualenvs/cwl/lib/python3.9/site-packages/urllib3/connectionpool.py", line 394, in _make_request
    conn.request(method, url, **httplib_request_kw)
  File "/home/amecioni/.virtualenvs/cwl/lib/python3.9/site-packages/urllib3/connection.py", line 234, in request
    super(HTTPConnection, self).request(method, url, body=body, headers=headers)
  File "/usr/lib/python3.9/http/client.py", line 1253, in request
    self._send_request(method, url, body, headers, encode_chunked)
  File "/usr/lib/python3.9/http/client.py", line 1299, in _send_request
    self.endheaders(body, encode_chunked=encode_chunked)
  File "/usr/lib/python3.9/http/client.py", line 1248, in endheaders
    self._send_output(message_body, encode_chunked=encode_chunked)
  File "/usr/lib/python3.9/http/client.py", line 1037, in _send_output
    for chunk in chunks:
  File "/usr/lib/python3.9/http/client.py", line 996, in _read_readable
    datablock = datablock.encode("iso-8859-1")
UnicodeEncodeError: 'latin-1' codec can't encode character '\u2014' in position 2792: ordinal not in range(256)
[ERROR] None

Test 6 failed: /home/amecioni/.virtualenvs/cwl/bin/reana-cwl-runner --outdir=/tmp/tmpajcerrb9 --quiet v1.0/template-tool.cwl v1.0/cat-job.json
Test InitialWorkDirRequirement ExpressionEngineRequirement.engineConfig feature
Compare failure expected: {
    "foo": {
        "checksum": "sha1$63da67422622fbf9251a046d7a34b7ea0fd4fead",
        "class": "File",
        "location": "foo.txt",
        "size": 22
    }
}
got: {}
caused by: failed comparison for key 'foo': expected: {
    "checksum": "sha1$63da67422622fbf9251a046d7a34b7ea0fd4fead",
    "class": "File",
    "location": "foo.txt",
    "size": 22
}
got: null

To reproduce:

cwltest --tool /home/amecioni/.virtualenvs/cwl/bin/reana-cwl-runner --test=conformance_test_v1.0.yaml -n66 --basedir /home/amecioni/Documents/tests/common-workflow-language/v1.0   --

or

/home/amecioni/.virtualenvs/cwl/bin/reana-cwl-runner --outdir=/tmp/tmpod8x37rj --quiet v1.0/formattest3.cwl v1.0/formattest2-job.json