-
Notifications
You must be signed in to change notification settings - Fork 7
[HACK TOPIC] Process unit testing #7
Comments
x-ref nf-core/tools#209 |
My understanding of the user story:
|
I have a few suggested ideas for consideration:
|
I also don't think we're going to be able to get the correct hash name for each process, so prefer the injection of a The user would then have to create empty/dummy files for all preceding, unused processes in the form
The contents of All process that aren't to be executed should then have the
Thoughts? |
Great! Makes a lot of sense 👍 One nitpick: I love the Is there a comparable unit testing framework in java? Nextflow already had unit tests, so I guess there must be. It would be nice to keep this inside nextflow and not a separate program if possible I think. Phil |
Also: instead of telling downstream processes not to run, it could be better to squash the output channels of the selected process that will run. Then we don’t need to know the shape of the DAG before writing the config - nextflow can just pick one process at a time and squash its output channels. Note that I think |
Has anyone given a thought how this looks with DSL-2 being on the table? I'd like to be able to unittest a process in a module |
There was quite a bit of discussion around this at the 2019 meeting. However, I've not seen any working examples yet. |
just cross-referencing as this popped up in the same search https://code.askimed.com/nf-test/getting-started/ Disclaimer: I had at best a 5 min glimpse at nf-test |
Thanks @sfehrmann! This GitHub issue is documenting a Nextflow user meeting from 4 years ago, it's not an issue for active development :) nf-test didn't exist at the time, but you're absolutely right that it's a great tool 👍🏻 So good for future googlers.. |
There's also this: https://github.com/LUMC/pytest-workflow |
Notes from our discussion about how a new generic unit testing module could work:
Testing would essentially act as a wrapper, with three steps:
storeDir
This tool could then be run, specifying which process should be tested. It could then be run in parallel for each process of interest.
The text was updated successfully, but these errors were encountered: