common-workflow-language / common-workflow-language/cwltool

`--validate` should validate parameter references

Open
#398 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Python
Stars
376
Forks
255
Avg merge
2d 7h
Merged PRs (30d)
12

Description

## Expected Behavior

Running `cwltool --validate` on https://github.com/ICGC-TCGA-PanCancer/pcawg-consensus-calling-tool/blob/e9a30d89b582656221a386b86b35073e26e49066/consensus-calling.cwl should complain about `output_file_name`

It seems that actually running the tool does result in an `expression evaluation error` when running in strict mode.

Also see the conversation following https://gitter.im/common-workflow-language/common-workflow-language?at=592840f45e34568d5e934dd2

## Actual Behavior

```
$ cwltool --validate test.cwl
/usr/local/bin/cwltool 1.0.20170217172322
Resolved 'test.cwl' to 'file:///home/dyuen/test/test.cwl'
Tool definition failed validation:
test.cwl:2:1: Object `test.cwl` is not valid because
tried `CommandLineTool` but
test.cwl:7:1: * invalid field `description`, expected one of: 'id', 'inputs', 'outputs',
'requirements', 'hints', 'label', 'doc', 'cwlVersion', 'class', 'baseCommand',
'arguments', 'stdin', 'stderr', 'stdout', 'successCodes', 'temporaryFailCodes',
'permanentFailCodes'
test.cwl:13:1: * unrecognized extension field `dct:creator` and strict is True. Did you
include a $schemas section?
test.cwl:17:1: * unrecognized extension field `dct:contributor` and strict is True. Did
you include a $schemas section?
dyuen@odl-dyuen2:~/test$ cwltool --non-strict --validate test.cwl
/usr/local/bin/cwltool 1.0.20170217172322
Resolved 'test.cwl' to 'file:///home/dyuen/test/test.cwl'
```

## Workflow Code
https://github.com/ICGC-TCGA-PanCancer/pcawg-consensus-calling-tool/blob/e9a30d89b582656221a386b86b35073e26e49066/consensus-calling.cwl

## Your Environment
/usr/local/bin/cwltool 1.0.20170217172322

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.