Skip to content

planemo test can't handle same tool used twice in a workflow #939

@davidchristiany

Description

@davidchristiany

I am using planemo test on a galaxy workflow with this command:

planemo test --galaxy_url <url> --galaxy_user_key <user_key> --no_shed_install --engine external_galaxy workflow.ga

It is working when my workflow only use each tool once:

All 1 test(s) executed passed.
workflow_frogs.ga_0: passed

But when I am using the same tool twice, I get an error:

galaxy.tools.verify INFO: ## files diff on '/home/dchristiany/proteore_project/ProteoRE/workflows/expected/Filters_excluded.tsv' and '/tmp/tmpp1xH50Filters_excluded.tsv': lines_diff = 0, found diff = 785`
`galaxy.tools.verify INFO: ## files diff on '/home/dchristiany/proteore_project/ProteoRE/workflows/expected/Filters_sequences.fasta' and '/tmp/tmp4lsKOhFilters_sequences.fasta': lines_diff = 0, found diff = 86`
`galaxy.tools.verify INFO: ## files diff on '/home/dchristiany/proteore_project/ProteoRE/workflows/expected/Filters_report.html' and '/tmp/tmpLbQaXhFilters_report.html': lines_diff = 0, found diff = 8`
`Traceback (most recent call last):
  File "/home/dchristiany/.venv/bin/planemo", line 10, in <module>
    sys.exit(planemo())
  File "/home/dchristiany/.venv/local/lib/python2.7/site-packages/click/core.py", line 764, in __call__
    return self.main(*args, **kwargs)
  File "/home/dchristiany/.venv/local/lib/python2.7/site-packages/click/core.py", line 717, in main
    rv = self.invoke(ctx)
  File "/home/dchristiany/.venv/local/lib/python2.7/site-packages/click/core.py", line 1137, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/home/dchristiany/.venv/local/lib/python2.7/site-packages/click/core.py", line 956, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/home/dchristiany/.venv/local/lib/python2.7/site-packages/click/core.py", line 555, in invoke
    return callback(*args, **kwargs)
  File "/home/dchristiany/.venv/local/lib/python2.7/site-packages/click/decorators.py", line 64, in new_func
    return ctx.invoke(f, obj, *args, **kwargs)
  File "/home/dchristiany/.venv/local/lib/python2.7/site-packages/click/core.py", line 555, in invoke
    return callback(*args, **kwargs)
  File "/home/dchristiany/.venv/local/lib/python2.7/site-packages/planemo/cli.py", line 195, in handle_blended_options
    return f(*args, **kwds)
  File "/home/dchristiany/.venv/local/lib/python2.7/site-packages/planemo/commands/cmd_test.py", line 87, in cli
    test_data = engine.test(runnables)
  File "/home/dchristiany/.venv/local/lib/python2.7/site-packages/planemo/engine/interface.py", line 82, in test
    test_case_data = test_case.structured_test_data(run_response)
  File "/home/dchristiany/.venv/local/lib/python2.7/site-packages/planemo/runnable.py", line 256, in structured_test_data
    self._check_output(output_id, output_value, output_test)
  File "/home/dchristiany/.venv/local/lib/python2.7/site-packages/planemo/runnable.py", line 314, in _check_output
    output_test,
  File "/home/dchristiany/.venv/local/lib/python2.7/site-packages/planemo/test/_check_output.py", line 43, in check_output
    verify_extra_files=None,
  File "/home/dchristiany/.venv/local/lib/python2.7/site-packages/galaxy/tools/verify/__init__.py", line 133, in verify
    errmsg += str(err)
UnicodeEncodeError: 'ascii' codec can't encode character u'\xa0' in position 848: ordinal not in range(128)`

From what I understand, output files are not compared to the right expected files probably due to the same output_name from the same tool used twice even when I put different labels on ouput_names.

I dont understand why I also get an '\xa0' error (it is supposed to be non breakable space),it only occurs when I am using the same tool twice in my workflow.

Does anyone know how to fix that ?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions