Skip to content

Commit

Permalink
Better loadContents testing.
Browse files Browse the repository at this point in the history
  • Loading branch information
jmchilton committed Jan 24, 2019
1 parent 10e88aa commit 934fc14
Show file tree
Hide file tree
Showing 3 changed files with 72 additions and 2 deletions.
22 changes: 20 additions & 2 deletions v1.0/conformance_test_v1.0.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2590,7 +2590,7 @@
doc: Test an anonymous enum inside an array inside a record, SchemaDefRequirement
tags: [command_line_tool, schema_def]

- tool: v1.0/output_loadContents_contains_b.cwl
- tool: v1.0/loadContents-output-contains-b.cwl
job: v1.0/64kbplus1-job.json
output:
contains_b: false
Expand All @@ -2599,11 +2599,29 @@
doc: Test loadContents on output binding truncates values at 64kb.
tags: [command_line_tool, inline_javascript]

- tool: v1.0/output_loadContents_contains_b.cwl
- tool: v1.0/loadContents-output-contains-b.cwl
job: v1.0/64kbminus1-job.json
output:
contains_b: true
id: 199
label: ouptut_loadContents_truncates_at_64kb_control
doc: Test loadContents on output binding truncates values at 64kb (control for previous test)
tags: [command_line_tool, inline_javascript]

- tool: v1.0/loadContents-input-contains-b-wf.cwl
job: v1.0/64kbplus1-job.json
output:
contains_b: false
id: 200
label: step_input_loadContents_truncates_at_64kb
doc: Test loadContents on step input truncates values at 64kb.
tags: [workflow, inline_javascript]

- tool: v1.0/loadContents-input-contains-b-wf.cwl
job: v1.0/64kbminus1-job.json
output:
contains_b: true
id: 201
label: step_input_loadContents_truncates_at_64kb_control
doc: Test loadContents on step input truncates values at 64kb (control for previous test)
tags: [workflow, inline_javascript]
52 changes: 52 additions & 0 deletions v1.0/v1.0/loadContents-input-contains-b-wf.cwl
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
cwlVersion: v1.0
class: Workflow

requirements:
StepInputExpressionRequirement: {}
InlineJavascriptRequirement: {}

inputs:
in:
type: File

outputs:
contains_b:
type: boolean
outputSource: check_file/contains_b

steps:

create_file:
run:
class: CommandLineTool
inputs:
file1:
type: File
inputBinding: {position: 1}
outputs:
output:
type: File
outputBinding: {glob: out.txt}

baseCommand: cat
stdout: out.txt

in: {file1: in}
out: [ output ]

check_file:
run:
class: ExpressionTool
requirements: { InlineJavascriptRequirement: {} }
inputs:
- { id: bytes, type: File, inputBinding: { loadContents: true } }
outputs: { contains_b: boolean }
expression: |
${
return {"contains_b": inputs.bytes.contents.indexOf("b") >= 0};
}
in:
bytes:
source: create_file/output

out: [ contains_b ]

0 comments on commit 934fc14

Please sign in to comment.