From 46f9b7dc1c702052e0dfee120ee3c244c13243aa Mon Sep 17 00:00:00 2001 From: Simon Bray Date: Thu, 13 Jan 2022 15:50:55 +0100 Subject: [PATCH 1/4] add best practices and assertion checks to workflow_lint --- planemo/workflow_lint.py | 93 +++++++++++++++++++++++++++++++++++++++- 1 file changed, 92 insertions(+), 1 deletion(-) diff --git a/planemo/workflow_lint.py b/planemo/workflow_lint.py index 1b80519c4..c08c5327e 100644 --- a/planemo/workflow_lint.py +++ b/planemo/workflow_lint.py @@ -1,9 +1,12 @@ +import json import os import re +from collections import OrderedDict import yaml from galaxy.tool_util.lint import LintContext from galaxy.tool_util.loader_directory import EXCLUDE_WALK_DIRS +from galaxy.tool_util.verify import asserts from gxformat2._yaml import ordered_load from gxformat2.lint import lint_format2, lint_ga @@ -72,7 +75,7 @@ def structure(path, lint_context): lint_func(lint_context, workflow_dict, path=path) lint_context.lint("lint_structure", structure, potential_workflow_artifact_path) - + lint_context.lint("lint_best_practices", _lint_best_practices, potential_workflow_artifact_path) lint_context.lint("lint_tests", _lint_tsts, potential_workflow_artifact_path) else: # Allow linting ro crates and such also @@ -99,6 +102,70 @@ def _lint_tsts(path, lint_context): lint_context.valid(f"Tests appear structurally correct for {runnable.path}") +def _lint_best_practices(path, lint_context): # noqa: C901 + """ + This function duplicates the checks made by Galaxy's best practices panel: + https://github.com/galaxyproject/galaxy/blob/5396bb15fe8cfcf2e89d46c1d061c49b60e2f0b1/client/src/components/Workflow/Editor/Lint.vue + """ + def check_json_for_untyped_params(j): + values = j if type(j) == list else j.values() + for value in values: + if type(value) in [list, dict, OrderedDict]: + if check_json_for_untyped_params(value): + return True + elif type(value) == str: + if re.match(r'\$\{.+?\}', value): + return True + return False + + with open(path, "r") as f: + workflow_dict = ordered_load(f) + + steps = workflow_dict.get("steps", {}) + + # annotation + if not workflow_dict.get("annotation"): + lint_context.warn("Workflow is not annotated.") + + # creator + if not len(workflow_dict.get("creator", [])) > 0: + lint_context.warn("Workflow does not specify a creator.") + + # license + if not workflow_dict.get("license"): + lint_context.warn("Workflow does not specify a license.") + + # checks on individual steps + for step in steps.values(): + print(step) + # disconnected inputs + for input in step.get("inputs", []): + if input.get("name") not in step.get("input_connections"): # TODO: check optional + lint_context.warn(f"Input {input.get('name')} of workflow step {step.get('annotation') or step.get('id')} is disconnected.") + + # missing metadata + if not step.get("annotation"): + lint_context.warn(f"Workflow step with ID {step.get('id')} has no annotation.") + if not step.get("label"): + lint_context.warn(f"Workflow step with ID {step.get('id')} has no label.") + + # untyped parameters + if workflow_dict.get("class") == "GalaxyWorkflow": + tool_state = step.get('tool_state', {}) + pjas = step.get('out', {}) + else: + tool_state = json.loads(step.get('tool_state', '{}')) + pjas = step.get('post_job_actions', {}) + + if check_json_for_untyped_params(tool_state): + lint_context.warn(f"Workflow step with ID {step.get('id')} specifies an untyped parameter as an input.") + + if check_json_for_untyped_params(pjas): + lint_context.warn(f"Workflow step with ID {step.get('id')} specifies an untyped parameter in the post-job actions.") + + # unlabeled outputs are checked by gxformat2, no need to check here + + def _lint_case(path, test_case, lint_context): test_valid = True @@ -133,6 +200,10 @@ def _lint_case(path, test_case, lint_context): found_valid_expectation = True # TODO: validate structure of test expectations + assertion_definitions = test_case.output_expectations[test_output_id].get("asserts") + if not _check_test_assertions(lint_context, assertion_definitions): + test_valid = False + if not found_valid_expectation: lint_context.warn("Found no valid test expectations for workflow test") test_valid = False @@ -140,6 +211,26 @@ def _lint_case(path, test_case, lint_context): return test_valid +def _check_test_assertions(lint_context, assertion_definitions): + # we are already in Python, not XML, so it is simpler to lint assertions by checking against the + # Python functions directly, rather than checking against galaxy.xsd as for tool linting + assertions_valid = True + if assertion_definitions: + for module in asserts.assertion_modules: + for function_name in dir(module): + if function_name.split('assert_')[-1] in assertion_definitions: + f = module.__dict__[function_name] + try: + # try running the function with the attributes supplied and check for TypeError + f('', **assertion_definitions[function_name.split('assert_')[-1]]) + except AssertionError: + pass + except TypeError as e: + lint_context.error(f'Invalid assertion in tests: {str(e)}') + assertions_valid = False + return assertions_valid + + def _tst_input_valid(test_case, input_id, input_def, lint_context): if type(input_def) == dict: # else assume it is a parameter clazz = input_def.get("class") From b9c0b6795e37b421de6a398b9e9649e4eefcbcce Mon Sep 17 00:00:00 2001 From: Simon Bray Date: Thu, 13 Jan 2022 14:27:48 +0100 Subject: [PATCH 2/4] tests for workflow_lint --- tests/data/wf14-unlinted-best-practices.ga | 96 +++++++++++++++++++++ tests/data/wf14-unlinted-best-practices.yml | 45 ++++++++++ tests/data/wf15-test-assertions-test.yml | 10 +++ tests/data/wf15-test-assertions.yml | 21 +++++ tests/test_cmd_workflow_lint.py | 92 ++++++++++++++------ 5 files changed, 240 insertions(+), 24 deletions(-) create mode 100644 tests/data/wf14-unlinted-best-practices.ga create mode 100644 tests/data/wf14-unlinted-best-practices.yml create mode 100644 tests/data/wf15-test-assertions-test.yml create mode 100644 tests/data/wf15-test-assertions.yml diff --git a/tests/data/wf14-unlinted-best-practices.ga b/tests/data/wf14-unlinted-best-practices.ga new file mode 100644 index 000000000..1af9ddf5b --- /dev/null +++ b/tests/data/wf14-unlinted-best-practices.ga @@ -0,0 +1,96 @@ +{ + "a_galaxy_workflow": "true", + "annotation": "", + "format-version": "0.1", + "name": "bp (imported from uploaded file)", + "steps": { + "0": { + "annotation": "", + "content_id": null, + "errors": null, + "id": 0, + "input_connections": {}, + "inputs": [], + "label": null, + "name": "Input dataset", + "outputs": [], + "position": { + "bottom": 730.3166656494141, + "height": 82.55000305175781, + "left": 1155, + "right": 1355, + "top": 647.7666625976562, + "width": 200, + "x": 1155, + "y": 647.7666625976562 + }, + "tool_id": null, + "tool_state": "{\"optional\": false}", + "tool_version": null, + "type": "data_input", + "uuid": "4219d43a-e182-49c0-bee3-8422e6344911", + "workflow_outputs": [] + }, + "1": { + "annotation": "", + "content_id": "toolshed.g2.bx.psu.edu/repos/bgruening/text_processing/tp_replace_in_column/1.1.3", + "errors": null, + "id": 1, + "input_connections": {}, + "inputs": [ + { + "description": "runtime parameter for tool Replace Text", + "name": "infile" + } + ], + "label": null, + "name": "Replace Text", + "outputs": [ + { + "name": "outfile", + "type": "input" + } + ], + "position": { + "bottom": 744.8333282470703, + "height": 114.06666564941406, + "left": 1465, + "right": 1665, + "top": 630.7666625976562, + "width": 200, + "x": 1465, + "y": 630.7666625976562 + }, + "post_job_actions": { + "TagDatasetActionoutfile": { + "action_arguments": { + "tags": "${report_name}" + }, + "action_type": "TagDatasetAction", + "output_name": "outfile" + } + }, + "tool_id": "toolshed.g2.bx.psu.edu/repos/bgruening/text_processing/tp_replace_in_column/1.1.3", + "tool_shed_repository": { + "changeset_revision": "ddf54b12c295", + "name": "text_processing", + "owner": "bgruening", + "tool_shed": "toolshed.g2.bx.psu.edu" + }, + "tool_state": "{\"infile\": {\"__class__\": \"RuntimeValue\"}, \"replacements\": [{\"__index__\": 0, \"column\": \"1\", \"find_pattern\": \"${report_name}\", \"replace_pattern\": \"\"}], \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "1.1.3", + "type": "tool", + "uuid": "e429e21f-f01e-4efb-b665-56f454cbe38b", + "workflow_outputs": [ + { + "label": null, + "output_name": "outfile", + "uuid": "e4066fe7-c9a2-43af-a9f5-30a75a5b2107" + } + ] + } + }, + "tags": [], + "uuid": "66708ffe-c08c-4647-a7e9-fc7f731206a1", + "version": 2 +} diff --git a/tests/data/wf14-unlinted-best-practices.yml b/tests/data/wf14-unlinted-best-practices.yml new file mode 100644 index 000000000..bafe40dda --- /dev/null +++ b/tests/data/wf14-unlinted-best-practices.yml @@ -0,0 +1,45 @@ +class: GalaxyWorkflow +label: bp (imported from uploaded file) +uuid: 66708ffe-c08c-4647-a7e9-fc7f731206a1 +inputs: + null: + optional: false + position: + bottom: 730.3166656494141 + height: 82.55000305175781 + left: 1155 + right: 1355 + top: 647.7666625976562 + width: 200 + x: 1155 + y: 647.7666625976562 + type: data +outputs: + _anonymous_output_1: + outputSource: 1/outfile +steps: + input: + tool_id: toolshed.g2.bx.psu.edu/repos/bgruening/text_processing/tp_replace_in_column/1.1.3 + tool_version: 1.1.3 + position: + bottom: 744.8333282470703 + height: 114.06666564941406 + left: 1465 + right: 1665 + top: 630.7666625976562 + width: 200 + x: 1465 + y: 630.7666625976562 + tool_state: + infile: + __class__: RuntimeValue + replacements: + - __index__: 0 + column: '1' + find_pattern: ${report_name} + replace_pattern: '' + in: {} + out: + outfile: + add_tags: + - ${report_name} diff --git a/tests/data/wf15-test-assertions-test.yml b/tests/data/wf15-test-assertions-test.yml new file mode 100644 index 000000000..d263a5cb9 --- /dev/null +++ b/tests/data/wf15-test-assertions-test.yml @@ -0,0 +1,10 @@ +- doc: Test outline for Galaxy-Workflow-test_output_assertions(1).ga + job: + input: + class: File + path: todo_test_data_path.ext + outputs: + output: + asserts: + has_text: + non_existent_attribute: 0 diff --git a/tests/data/wf15-test-assertions.yml b/tests/data/wf15-test-assertions.yml new file mode 100644 index 000000000..fa163ab32 --- /dev/null +++ b/tests/data/wf15-test-assertions.yml @@ -0,0 +1,21 @@ +class: GalaxyWorkflow +label: test output assertions +uuid: 1819187f-a84d-4224-aec2-283bb6cd3cfc +inputs: + input: + doc: input + optional: false + position: + bottom: 379.28334045410156 + height: 62.15000915527344 + left: 847 + right: 1047 + top: 317.1333312988281 + width: 200 + x: 847 + y: 317.1333312988281 + type: data +outputs: + _anonymous_output_1: + outputSource: input +steps: {} diff --git a/tests/test_cmd_workflow_lint.py b/tests/test_cmd_workflow_lint.py index e49761685..7173f2550 100644 --- a/tests/test_cmd_workflow_lint.py +++ b/tests/test_cmd_workflow_lint.py @@ -19,7 +19,7 @@ def test_gxformat2_examples_as_repos(self): except ValueError: # not a repo, just skip. continue - lint_cmd = ["workflow_lint", "--skip", "tests", repo] + lint_cmd = ["workflow_lint", "--skip", "tests,best_practices", repo] self._check_exit_code(lint_cmd, exit_code=expected_exit_code) def test_fail_level(self): @@ -35,104 +35,148 @@ def test_fail_level(self): def test_workflow_test_linting(self): repo = _wf_repo("basic_format2_ok") - lint_cmd = ["workflow_lint", repo] + lint_cmd = ["workflow_lint", "--skip", "best_practices", repo] self._check_exit_code(lint_cmd, exit_code=0) repo = _wf_repo("basic_native_ok") - lint_cmd = ["workflow_lint", repo] + lint_cmd = ["workflow_lint", "--skip", "best_practices", repo] self._check_exit_code(lint_cmd, exit_code=0) repo = _wf_repo("basic_format2_input_misspelled") - lint_cmd = ["workflow_lint", repo] + lint_cmd = ["workflow_lint", "--skip", "best_practices", repo] self._check_exit_code(lint_cmd, exit_code=1) repo = _wf_repo("basic_format2_input_missing") - lint_cmd = ["workflow_lint", repo] + lint_cmd = ["workflow_lint", "--skip", "best_practices", repo] self._check_exit_code(lint_cmd, exit_code=1) repo = _wf_repo("basic_format2_output_misnamed") - lint_cmd = ["workflow_lint", repo] + lint_cmd = ["workflow_lint", "--skip", "best_practices", repo] self._check_exit_code(lint_cmd, exit_code=1) repo = _wf_repo("basic_format2_missing_input") - lint_cmd = ["workflow_lint", repo] + lint_cmd = ["workflow_lint", "--skip", "best_practices", repo] self._check_exit_code(lint_cmd, exit_code=1) def test_workflow_test_linting_control(self): # if we skip the tests linting - the above failures should pass repo = _wf_repo("basic_format2_input_misspelled") - lint_cmd = ["workflow_lint", "--skip", "tests", repo] + lint_cmd = ["workflow_lint", "--skip", "tests,best_practices", repo] self._check_exit_code(lint_cmd, exit_code=0) repo = _wf_repo("basic_format2_input_missing") - lint_cmd = ["workflow_lint", "--skip", "tests", repo] + lint_cmd = ["workflow_lint", "--skip", "tests,best_practices", repo] self._check_exit_code(lint_cmd, exit_code=0) repo = _wf_repo("basic_format2_output_misnamed") - lint_cmd = ["workflow_lint", "--skip", "tests", repo] + lint_cmd = ["workflow_lint", "--skip", "tests,best_practices", repo] self._check_exit_code(lint_cmd, exit_code=0) repo = _wf_repo("basic_format2_missing_input") - lint_cmd = ["workflow_lint", "--skip", "tests", repo] + lint_cmd = ["workflow_lint", "--skip", "tests,best_practices", repo] self._check_exit_code(lint_cmd, exit_code=0) def test_workflow_dockstore_linting(self): repo = _wf_repo("basic_format2_dockstore") - lint_cmd = ["workflow_lint", repo] + lint_cmd = ["workflow_lint", "--skip", "best_practices", repo] self._check_exit_code(lint_cmd, exit_code=0) repo = _wf_repo("basic_format2_dockstore_empty") - lint_cmd = ["workflow_lint", repo] + lint_cmd = ["workflow_lint", "--skip", "best_practices", repo] self._check_exit_code(lint_cmd, exit_code=1) repo = _wf_repo("basic_format2_dockstore_invalid_yaml") - lint_cmd = ["workflow_lint", repo] + lint_cmd = ["workflow_lint", "--skip", "best_practices", repo] self._check_exit_code(lint_cmd, exit_code=1) repo = _wf_repo("basic_format2_dockstore_wrong_descriptor") - lint_cmd = ["workflow_lint", repo] + lint_cmd = ["workflow_lint", "--skip", "best_practices", repo] self._check_exit_code(lint_cmd, exit_code=1) repo = _wf_repo("basic_format2_dockstore_wrong_test_file") - lint_cmd = ["workflow_lint", repo] + lint_cmd = ["workflow_lint", "--skip", "best_practices", repo] self._check_exit_code(lint_cmd, exit_code=1) repo = _wf_repo("basic_format2_dockstore_misspelled_primary_key") - lint_cmd = ["workflow_lint", repo] + lint_cmd = ["workflow_lint", "--skip", "best_practices", repo] self._check_exit_code(lint_cmd, exit_code=1) def test_workflow_dockstore_linting_control(self): # run same tests as above but make sure if we skip dockstore they # all pass repo = _wf_repo("basic_format2_dockstore") - lint_cmd = ["workflow_lint", "--skip", "dockstore", repo] + lint_cmd = ["workflow_lint", "--skip", "dockstore,best_practices", repo] self._check_exit_code(lint_cmd, exit_code=0) repo = _wf_repo("basic_format2_dockstore_empty") - lint_cmd = ["workflow_lint", "--skip", "dockstore", repo] + lint_cmd = ["workflow_lint", "--skip", "dockstore,best_practices", repo] self._check_exit_code(lint_cmd, exit_code=0) repo = _wf_repo("basic_format2_dockstore_invalid_yaml") - lint_cmd = ["workflow_lint", "--skip", "dockstore", repo] + lint_cmd = ["workflow_lint", "--skip", "dockstore,best_practices", repo] self._check_exit_code(lint_cmd, exit_code=0) repo = _wf_repo("basic_format2_dockstore_wrong_descriptor") - lint_cmd = ["workflow_lint", "--skip", "dockstore", repo] + lint_cmd = ["workflow_lint", "--skip", "dockstore,best_practices", repo] self._check_exit_code(lint_cmd, exit_code=0) repo = _wf_repo("basic_format2_dockstore_wrong_test_file") - lint_cmd = ["workflow_lint", "--skip", "dockstore", repo] + lint_cmd = ["workflow_lint", "--skip", "dockstore,best_practices", repo] self._check_exit_code(lint_cmd, exit_code=0) repo = _wf_repo("basic_format2_dockstore_misspelled_primary_key") - lint_cmd = ["workflow_lint", "--skip", "dockstore", repo] + lint_cmd = ["workflow_lint", "--skip", "dockstore,best_practices", repo] self._check_exit_code(lint_cmd, exit_code=0) def test_lint_test_examples(self): tags_wf = os.path.join(TEST_DATA_DIR, "wf10-tags-and-rules.gxwf.yml") - lint_cmd = ["workflow_lint", tags_wf] + lint_cmd = ["workflow_lint", "--skip", "best_practices", tags_wf] self._check_exit_code(lint_cmd, exit_code=0) + def test_best_practices_linting_gx(self): + workflow_path = '/'.join((TEST_DATA_DIR, 'wf14-unlinted-best-practices.yml')) + lint_cmd = ["workflow_lint", workflow_path] + result = self._runner.invoke(self._cli.planemo, lint_cmd) + + warnings = [ + "Workflow is not annotated.", + "Workflow does not specify a creator.", + "Workflow does not specify a license.", + "Workflow step with ID None has no annotation.", + "Workflow step with ID None has no label.", + "Workflow missing test cases.", + "Workflow step with ID None specifies an untyped parameter as an input.", + "Workflow step with ID None specifies an untyped parameter in the post-job actions.", + ] + + for warning in warnings: + assert warning in result.output + + def test_best_practices_linting_ga(self): + workflow_path = '/'.join((TEST_DATA_DIR, 'wf14-unlinted-best-practices.ga')) + lint_cmd = ["workflow_lint", workflow_path] + result = self._runner.invoke(self._cli.planemo, lint_cmd) + + warnings = [ + "Workflow is not annotated.", + "Workflow does not specify a creator.", + "Workflow does not specify a license.", + "Workflow step with ID 0 has no annotation.", + "Workflow step with ID 0 has no label.", + "Workflow missing test cases.", + "Workflow step with ID 1 specifies an untyped parameter as an input.", + "Workflow step with ID 1 specifies an untyped parameter in the post-job actions.", + ] + + for warning in warnings: + assert warning in result.output + + def test_assertion_linting(self): + workflow_path = '/'.join((TEST_DATA_DIR, 'wf15-test-assertions.yml')) + lint_cmd = ["workflow_lint", workflow_path] + result = self._runner.invoke(self._cli.planemo, lint_cmd) + assert "ERROR: Invalid assertion in tests: assert_has_text() got an unexpected keyword argument 'non_existent_attribute'" in result.output + def _wf_repo(rel_path): return os.path.join(TEST_DATA_DIR, "wf_repos", rel_path) From 7deed56a581209b5e4e3ba42d484ead8a3d0f44d Mon Sep 17 00:00:00 2001 From: Simon Bray Date: Thu, 13 Jan 2022 14:28:33 +0100 Subject: [PATCH 3/4] docs for workflow_lint + best practices --- docs/best_practices_workflows.rst | 30 ++++++++++++++++++++++-- docs/images/workflow_best_practices.png | Bin 0 -> 145718 bytes 2 files changed, 28 insertions(+), 2 deletions(-) create mode 100644 docs/images/workflow_best_practices.png diff --git a/docs/best_practices_workflows.rst b/docs/best_practices_workflows.rst index f5cbdc59f..cf2619643 100644 --- a/docs/best_practices_workflows.rst +++ b/docs/best_practices_workflows.rst @@ -72,10 +72,36 @@ ability of other Galaxy's to use the workflow. Syntax ~~~~~~ -Planemo ``workflow_lint`` also checks if workflows have the correct JSON or YAML syntax. -This may be less of a problem for workflows exported from a Galaxy instance but can assist +Planemo's ``workflow_lint`` also checks if workflows have the correct JSON or YAML syntax, +and ensures workflows follow certain 'best practices'. Best practices can also be checked +in the 'Workflow Best Practices' panel of Galaxy's workflow editor and to some extent +automatically fixed. + +.. image:: images/workflow_best_practices.png + :alt: Screenshot of Galaxy's best practices panel + +The ``workflow_lint`` subcommand allows the same checks to be made via the command line; +this may be less of a problem for workflows exported from a Galaxy instance but can assist with workflows hand-edited or implemented using the newer YAML gxformat2 syntax. +:: + + $ planemo workflow_lint path/to/workflow.ga + +Running this command makes the following checks: + +* The workflow is annotated +* The workflow specifies a creator +* The workflow specifies a license +* All workflow steps are connected to formal input parameters +* All workflow steps are annotated and labelled +* No legacy 'untyped' parameters are used, e.g. a variable such as `${report_name}` in an input field +* All outputs are labelled. + +In addition to checking the structure of the JSON or YAML file and workflow best practices, +``workflow_lint`` also checks the workflow test file is formatted correctly and at least one +valid test is specified. + Tests ----- diff --git a/docs/images/workflow_best_practices.png b/docs/images/workflow_best_practices.png new file mode 100644 index 0000000000000000000000000000000000000000..2fefeaa422dc807c554f4800106c51a5d429a826 GIT binary patch literal 145718 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 Date: Fri, 14 Jan 2022 14:40:30 +0100 Subject: [PATCH 4/4] check assertion arguments with inspect.Signature.bind() --- planemo/workflow_lint.py | 9 +++++---- tests/data/wf15-test-assertions-test.yml | 3 ++- tests/test_cmd_workflow_lint.py | 2 +- 3 files changed, 8 insertions(+), 6 deletions(-) diff --git a/planemo/workflow_lint.py b/planemo/workflow_lint.py index c08c5327e..0dcbcf5bd 100644 --- a/planemo/workflow_lint.py +++ b/planemo/workflow_lint.py @@ -1,3 +1,4 @@ +import inspect import json import os import re @@ -219,14 +220,14 @@ def _check_test_assertions(lint_context, assertion_definitions): for module in asserts.assertion_modules: for function_name in dir(module): if function_name.split('assert_')[-1] in assertion_definitions: - f = module.__dict__[function_name] + signature = inspect.signature(module.__dict__[function_name]) try: - # try running the function with the attributes supplied and check for TypeError - f('', **assertion_definitions[function_name.split('assert_')[-1]]) + # try mapping the function with the attributes supplied and check for TypeError + signature.bind('', **assertion_definitions[function_name.split('assert_')[-1]]) except AssertionError: pass except TypeError as e: - lint_context.error(f'Invalid assertion in tests: {str(e)}') + lint_context.error(f'Invalid assertion in tests: {function_name} {str(e)}') assertions_valid = False return assertions_valid diff --git a/tests/data/wf15-test-assertions-test.yml b/tests/data/wf15-test-assertions-test.yml index d263a5cb9..ada59a1f0 100644 --- a/tests/data/wf15-test-assertions-test.yml +++ b/tests/data/wf15-test-assertions-test.yml @@ -7,4 +7,5 @@ output: asserts: has_text: - non_existent_attribute: 0 + non_existent_attribute: 0 + text: 'text' diff --git a/tests/test_cmd_workflow_lint.py b/tests/test_cmd_workflow_lint.py index 7173f2550..f1a6b0cf3 100644 --- a/tests/test_cmd_workflow_lint.py +++ b/tests/test_cmd_workflow_lint.py @@ -175,7 +175,7 @@ def test_assertion_linting(self): workflow_path = '/'.join((TEST_DATA_DIR, 'wf15-test-assertions.yml')) lint_cmd = ["workflow_lint", workflow_path] result = self._runner.invoke(self._cli.planemo, lint_cmd) - assert "ERROR: Invalid assertion in tests: assert_has_text() got an unexpected keyword argument 'non_existent_attribute'" in result.output + assert "Invalid assertion in tests: assert_has_text got an unexpected keyword argument 'non_existent_attribute'" in result.output def _wf_repo(rel_path):