I have been staring at this long but, can't seem t...
# rubber-duck
s
I have been staring at this long but, can't seem to spot what is off I am trying to write this bismark subworkflow test and it seems to be complaining about the input meta not being a path type input specification of bismark align module:
Copy code
input:
    tuple val(meta), path(reads)
test input:
Copy code
input[0] = Channel.of([
                            [ id:'test', single_end:true ],
                            file(params.pipelines_testdata_base_path + 'testdata/SRR389222_sub1.fastq.gz', checkIfExists: true)
                ])
error:
Copy code
ERROR ~ Error executing process > 'BISMARK:BISMARK_ALIGN (1)'
  
  Caused by:
    Not a valid path value type: java.util.LinkedHashMap ([id:test, single_end:true])
i can't see why its trying to cast the meta to a path instead of val ? ...would appreciate some help from the rubber duck
j
Índex shouldn't have a meta
Check input[1] maybe?
s
bingo
Thank You! πŸ™‡
j
tenor_gif4786352040463378651.gif
m
Good catch @James Fellows Yates
j
cool dude
πŸ˜‚ 1
s
im stuck at the next test for bwameth now 🫣 getting:
Copy code
Missing process or function map([Script_25d086b67b7bd1b5$_runScript_closure1$_closure2$_closure3@531bfe4b])
grumpycatgrumpycatgrumpycatgrumpycatgrumpycatgrumpycatgrumpycatgrumpycatgrumpycatgrumpycatgrumpycatgrumpycatgrumpycatgrumpycatgrumpycatgrumpycatgrumpycatgrumpycatgrumpycatgrumpycatgrumpycatgrumpycatgrumpycatgrumpycatgrumpycatgrumpycatgrumpycatgrumpycatgrumpycatgrumpycatgrumpycatgrumpycatgrumpycatgrumpycatgrumpycatgrumpycat
m
Error messages are hard to understand
but the log messages are not helping at all
Copy code
Caused by: groovy.lang.MissingMethodException: No signature of method: nextflow.file.http.XPath.map() is applicable for argument types: (Script_25d086b67b7bd1b5$_runScript_closure1$_closure2$_closure3) values: [Script_25d086b67b7bd1b5$_runScript_closure1$_closure2$_closure3@b97f195]
Possible solutions: max(), tap(groovy.lang.Closure), max(groovy.lang.Closure), max(java.util.Comparator), min(), min(groovy.lang.Closure)
m
confused dog confused travolta πŸ˜• πŸ˜– confused travolta confused dog
j
Is something somewhere not a path but trying to be intepreetd as one?
Is the UNTAR module exporting correctly?
Could go into
.nf-test/tests/<keyboardsmash>/
and try to find the workflow file and add a dump?
s
the untar works for bismark test so, im guessing its working here in bwameth too
m guessing it should be something else
actually you might be right...added a println statement and getting
Copy code
DataflowVariable(value=null)
😱 1
j
I'm a genius
this 1
s
sorry that wasn't it
j
I'm an idiot
s
its printing the same null path for bismark too but, i think my println is not right...don't think I can print in the when block
@Maxime Garcia @Edmund has identified that it was this map assignment that was throwing that error when running the sub-wf standalone
now Q is how to fix this ? ....the map re-assignment you suggested is needed for normal nextflow execution while nf-test is not happy with it when running that sub-wf standalone
e
It's gotta be something with how we're setting up the files in nf-test
Copy code
input[2] = = Channel.of(file(params.pipelines_testdata_base_path + 'reference/genome.fa', checkIfExists: true)) // fasta
                input[3] = Channel.of(file(params.pipelines_testdata_base_path + 'reference/genome.fa.fai', checkIfExists: true)) //fasta_index
Copy code
ERROR ~ Script compilation error
  - file : /home/emiller/src/nf-core/methylseq/.<http://nf-test-99e76c9d3e676e3c5b361b0dbbf4b25c.nf|nf-test-99e76c9d3e676e3c5b361b0dbbf4b25c.nf>
  - cause: Unexpected input: '{' @ line 25, column 10.
     workflow {
              ^
I give
πŸ‘€ 1
s
hey that works for me now
enclosing file in channel
@Edmund pushed to branch....could you pull and confirm the test works
e
It works! πŸ™ŒπŸ»
πŸ‘ 1