diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json index e8c1c5bf..ab70c5dd 100644 --- a/.devcontainer/devcontainer.json +++ b/.devcontainer/devcontainer.json @@ -3,6 +3,7 @@ "build": { "dockerfile": "Dockerfile" }, "forwardPorts": [3000], "onCreateCommand": "bash .devcontainer/setup_container.sh", + "postStartCommand": "git config --global --add safe.directory ${containerWorkspaceFolder}", "features": { "ghcr.io/devcontainers/features/git:1": {}, "ghcr.io/devcontainers/features/git-lfs:1": {}, @@ -56,7 +57,8 @@ }, "extensions": [ "AlexVCaron.nf-scil-extensions", - "ms-python.autopep8" + "ms-python.autopep8", + "ms-python.vscode-pylance" ] } }, diff --git a/.devcontainer/setup_container.sh b/.devcontainer/setup_container.sh index 63986b60..4bfb773f 100644 --- a/.devcontainer/setup_container.sh +++ b/.devcontainer/setup_container.sh @@ -1,5 +1,13 @@ #!/usr/bin/env bash +NODE_MAJOR=18 + poetry install --no-root echo "export PROFILE=docker" >> ~/.bashrc +curl -fsSL https://deb.nodesource.com/setup_${NODE_MAJOR}.x | bash - &&\ +apt-get install -y nodejs + +npm install --save-dev --save-exact prettier + +echo "function prettier() { npm exec prettier $@; }" >> ~/.bashrc diff --git a/.github/workflows/code_linting.yml b/.github/workflows/code_linting.yml index 9c30b4a7..b595d5a7 100644 --- a/.github/workflows/code_linting.yml +++ b/.github/workflows/code_linting.yml @@ -11,7 +11,7 @@ jobs: contains(github.event.comment.html_url, '/pull/') && contains(github.event.comment.body, '@nf-scil-bot fix linting') && github.repository == 'scilus/nf-scil' - runs-on: ubuntu-latest + runs-on: scilus-nf-scil-runners steps: # Use the @nf-scil-bot token to check out so we can push later - uses: actions/checkout@v4 diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 3cd8f0b7..d6a3dd29 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -1,12 +1,11 @@ name: Modules Tests on: push: - branches: [main] - pull_request: - branches: [main] - merge_group: - types: [checks_requested] - branches: [main] + branches: + - main + pull_request_target: + branches: + - main # Cancel if a newer run is started concurrency: @@ -20,7 +19,7 @@ env: jobs: pre-commit: - runs-on: ubuntu-latest + runs-on: scilus-nf-scil-runners steps: - uses: actions/checkout@v3 - uses: actions/setup-python@v3 @@ -32,7 +31,7 @@ jobs: extra_args: "" prettier: - runs-on: ubuntu-latest + runs-on: scilus-nf-scil-runners steps: - name: Check out repository uses: actions/checkout@v4 @@ -49,7 +48,7 @@ jobs: run: prettier --check . editorconfig: - runs-on: ubuntu-latest + runs-on: scilus-nf-scil-runners steps: - uses: actions/checkout@v4 @@ -65,7 +64,7 @@ jobs: pytest-changes: name: pytest-changes - runs-on: ubuntu-latest + runs-on: scilus-nf-scil-runners outputs: # Expose matched filters as job 'modules' output variable modules: ${{ steps.filter.outputs.changes }} @@ -82,7 +81,7 @@ jobs: token: "" nf-core-lint: - runs-on: ubuntu-latest + runs-on: scilus-nf-scil-runners name: nf-core-lint needs: [pytest-changes] if: ${{ (needs.pytest-changes.outputs.modules != '[]') }} @@ -134,7 +133,7 @@ jobs: if: ${{ startsWith(matrix.tags, 'subworkflows/') }} pytest: - runs-on: ubuntu-latest + runs-on: scilus-nf-scil-runners name: pytest needs: [pytest-changes] if: needs.pytest-changes.outputs.modules != '[]' @@ -212,9 +211,9 @@ jobs: !${{ github.workspace }}/.singularity confirm-pass: - runs-on: ubuntu-latest + runs-on: scilus-nf-scil-runners needs: [prettier, editorconfig, pytest-changes, nf-core-lint, pytest] - if: always() + if: ${{ !cancelled() }} steps: - name: All tests ok if: ${{ success() || !contains(needs.*.result, 'failure') }} @@ -224,7 +223,7 @@ jobs: run: exit 1 - name: debug-print - if: always() + if: ${{ !cancelled() }} run: | echo "toJSON(needs) = ${{ toJSON(needs) }}" echo "toJSON(needs.*.result) = ${{ toJSON(needs.*.result) }}" diff --git a/.gitignore b/.gitignore index f56ee8e9..276e1a22 100644 --- a/.gitignore +++ b/.gitignore @@ -7,3 +7,5 @@ .DS_Store *.code-workspace + +node_modules/ diff --git a/README.md b/README.md index f8f82852..d17acbfc 100644 --- a/README.md +++ b/README.md @@ -73,6 +73,7 @@ nf-core modules \ - Java Runtime ≥ 11, ≤ 17 - On Ubuntu, install `openjdk-jre-` packages - Nextflow ≥ 21.04.3 +- Node ≥ 14 and Prettier (seel [below](#installing-prettier)) > [!IMPORTANT] > Nextflow might not detect the right `Java virtual machine` by default, more so if @@ -91,7 +92,7 @@ nf-core modules \ The project uses _poetry_ to manage python dependencies. To install it using pipx, run the following commands : -``` +```bash pip install pipx pipx ensurepath pipx install poetry @@ -107,7 +108,7 @@ pipx install poetry Once done, install the project with : -``` +```bash poetry install ``` @@ -118,7 +119,7 @@ poetry install The project scripts and dependencies can be accessed using : -``` +```bash poetry shell ``` @@ -184,3 +185,24 @@ nf-core modules \ ``` The tool can be omitted to run tests for all modules in a category. + +# Installing Prettier + +To install **Prettier** for the project, you need to have `node` and `npm` installed on your system to at least version 14. On Ubuntu, you can do it using snap : + +```bash +sudo snap install node --classic +``` + +However, if you cannot install snap, or have another OS, refer to the [official documentation](https://nodejs.org/en/download/package-manager/) for the installation procedure. + +Under the current configuration for the _Development Container_, for this project, we use the following procedure, considering `${NODE_MAJOR}` is at least 14 for Prettier : + +```bash +curl -fsSL https://deb.nodesource.com/setup_${NODE_MAJOR}.x | bash - &&\ +apt-get install -y nodejs + +npm install --save-dev --save-exact prettier + +echo "function prettier() { npm exec prettier $@; }" >> ~/.bashrc +``` diff --git a/docs/MODULE.md b/docs/MODULE.md index abcd911a..3e2c59d4 100644 --- a/docs/MODULE.md +++ b/docs/MODULE.md @@ -4,7 +4,7 @@ First verify you are located at the root of this repository (not in `modules`), then run the following interactive command : -``` +```bash nf-core modules create ``` @@ -19,7 +19,7 @@ to the following to ensure configuration abides with `nf-scil` : Alternatively, you can use the following command to supply nearly all information : -``` +```bash nf-core modules create \ --author @scilus \ --label process_single \ @@ -79,7 +79,9 @@ already follow all guidelines. You will find related files in : In the script section, before the script definition (in `""" """`), unpack the optional argument into a `usable variable`. For a optional input `input1`, add : - def optional_input1 = input1 ? "" : "" + ```groovy + def optional_input1 = input1 ? "" : "" + ``` The variable `optional_input1` is the one to use in the script. @@ -142,6 +144,15 @@ don't need to specify them all. At least define the `keywords`, describe the pro > the module ! If you use scripts from `scilpy`, here you describe scilpy. If using > `ANTs`, describe ANts. Etcetera. +Once done, commit your module and push the changes. Then, to look at the documentation it creates for your module, run : + +```bash +nf-core modules \ + --git-remote \ + --branch \ + list +``` + ### Editing `./tests/modules/nf-scil///main.nf` : The module's test suite is a collection of workflows containing isolated test cases. You @@ -183,7 +194,7 @@ so output files that gets generated are checksum correctly. Run : -``` +```bash nf-core modules create-test-yml \ --run-tests \ --force \ @@ -196,6 +207,19 @@ smoothly, look at the test metadata file produced : `tests/modules/nf-scil/ \ + --branch \ + lint / +``` + +YOu'll probably get a bunch of _whitespace_ and _indentation_ errors, but also image errors, bad _nextflow_ syntax and more. You need to fix all `errors` and as much as the `ẁarnings`as possible. + ## Last safety test You're mostly done ! If every tests passes, your module is ready ! Still, you have not tested @@ -214,7 +238,7 @@ testing one. Run the following command, to try installing the module : -``` +```bash nf-core module \ --git-remote https://github.com/scilus/nf-scil.git \ --branch \ @@ -319,7 +343,7 @@ for the `dictionary key` : `params.test_data[][][]`. Thus, a new binding in `tests/config/test_data.config` should resemble the following -``` +```groovy params { test_data { ... @@ -346,7 +370,7 @@ You then use `params.test_data[][][]` in your test c attach the data to the test case, since the `params.test_data` collection is loaded automatically. To do so, in a test workflow, define an `input` object : -``` +```groovy input = [ [ id:'test', single_end:false ], // meta map params.test_data[][][], @@ -365,7 +389,7 @@ and use it as input to the processes to test. The Scilpy Fetcher is a tool that allows you to download datasets from the Scilpy test data depository. To use it, first include the _fetcher workflow_ in your test's `main.nf` : -``` +```groovy include { LOAD_TEST_DATA } from '../../../../../subworkflows/nf-scil/load_test_data/main' ``` @@ -376,11 +400,22 @@ The workflow has two inputs : - A name for the temporary directory where the data will be put. -The directories where the archives contents are unpacked are accessed using the output -parameter of the workflow `LOAD_TEST_DATA.out.test_data_directory`. To create the test -input from it, use the `.map` operator : +To call it, use the following syntax : +```groovy +archives = Channel.from( [ "", "archive2", ... ] ) +LOAD_TEST_DATA( archives, "" ) ``` + +> [!IMPORTANT] +> This will download the `archives` and unpack them under the `directory` +> specified, using the archive's names as `sub-directories` to unpack to. + +The archives contents are accessed using the output parameter of the workflow +`LOAD_TEST_DATA.out.test_data_directory`. To create the test input from it for +a given `PROCESS` to test use the `.map` operator : + +```groovy input = LOAD_TEST_DATA.out.test_data_directory .map{ test_data_directory -> [ [ id:'test', single_end:false ], // meta map @@ -390,7 +425,13 @@ input = LOAD_TEST_DATA.out.test_data_directory ] } ``` +Then feed it to it : + +```groovy +PROCESS( input ) +``` + > [!NOTE] > The subworkflow must be called individually in each test workflow, even if they download > the same archives, since there is no mechanism to pass data channels to them from the -> outside. +> outside, or share cache between them. diff --git a/modules/nf-scil/testdata/scilpy/meta.yml b/modules/nf-scil/testdata/scilpy/meta.yml index f5e7edd0..6ec5d4ad 100644 --- a/modules/nf-scil/testdata/scilpy/meta.yml +++ b/modules/nf-scil/testdata/scilpy/meta.yml @@ -2,7 +2,7 @@ # yaml-language-server: $schema=https://raw.githubusercontent.com/nf-core/modules/master/modules/yaml-schema.json name: "testdata_scilpy" description: | - Import test data using Scilpy's data fetcher. Archives names can be found at: + Import test data using Scilpy's data fetcher. Archives names can be found at: https://github.com/scilus/scilpy/blob/96ab12eb5d303754ef7ad74d7385137683cb9d47/scilpy/io/fetcher.py#L59 keywords: - test diff --git a/nf-test.config b/nf-test.config index cb456346..12318167 100644 --- a/nf-test.config +++ b/nf-test.config @@ -10,4 +10,4 @@ config { // run all test with the defined docker profile from the main nextflow.config profile "" -} \ No newline at end of file +} diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 00000000..49195d94 --- /dev/null +++ b/package-lock.json @@ -0,0 +1,35 @@ +{ + "name": "nf-scil", + "lockfileVersion": 2, + "requires": true, + "packages": { + "": { + "devDependencies": { + "prettier": "3.2.5" + } + }, + "node_modules/prettier": { + "version": "3.2.5", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.2.5.tgz", + "integrity": "sha512-3/GWa9aOC0YeD7LUfvOG2NiDyhOWRvt1k+rcKhOuYnMY24iiCphgneUfJDyFXd6rZCAnuLBv6UeAULtrhT/F4A==", + "dev": true, + "bin": { + "prettier": "bin/prettier.cjs" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/prettier/prettier?sponsor=1" + } + } + }, + "dependencies": { + "prettier": { + "version": "3.2.5", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.2.5.tgz", + "integrity": "sha512-3/GWa9aOC0YeD7LUfvOG2NiDyhOWRvt1k+rcKhOuYnMY24iiCphgneUfJDyFXd6rZCAnuLBv6UeAULtrhT/F4A==", + "dev": true + } + } +} diff --git a/package.json b/package.json new file mode 100644 index 00000000..903698be --- /dev/null +++ b/package.json @@ -0,0 +1,5 @@ +{ + "devDependencies": { + "prettier": "3.2.5" + } +} diff --git a/run_tests.sh b/run_tests.sh index c2202081..174f47e5 100755 --- a/run_tests.sh +++ b/run_tests.sh @@ -34,4 +34,4 @@ fi done -done \ No newline at end of file +done diff --git a/subworkflows/nf-scil/load_test_data/meta.yml b/subworkflows/nf-scil/load_test_data/meta.yml index 7ef37d23..347b5659 100644 --- a/subworkflows/nf-scil/load_test_data/meta.yml +++ b/subworkflows/nf-scil/load_test_data/meta.yml @@ -2,7 +2,7 @@ name: "load_test_data" description: | - Load test data from Scilpy in a local temporary directory. Archives names can be found at: + Load test data from Scilpy in a local temporary directory. Archives names can be found at: https://github.com/scilus/scilpy/blob/96ab12eb5d303754ef7ad74d7385137683cb9d47/scilpy/io/fetcher.py#L59 keywords: - load diff --git a/tests/modules/nf-scil/betcrop/cropvolume/main.nf b/tests/modules/nf-scil/betcrop/cropvolume/main.nf index 6eb24dd2..2dfeda93 100644 --- a/tests/modules/nf-scil/betcrop/cropvolume/main.nf +++ b/tests/modules/nf-scil/betcrop/cropvolume/main.nf @@ -5,7 +5,7 @@ nextflow.enable.dsl = 2 include { BETCROP_CROPVOLUME } from '../../../../../modules/nf-scil/betcrop/cropvolume/main.nf' workflow test_betcrop_cropvolume { - + input = [ [ id:'test', single_end:false ], // meta map file(params.test_data['betcrop']['cropvolume']['image'], checkIfExists: true), diff --git a/tests/modules/nf-scil/betcrop/fslbetcrop/main.nf b/tests/modules/nf-scil/betcrop/fslbetcrop/main.nf index d123784f..ccb681c2 100644 --- a/tests/modules/nf-scil/betcrop/fslbetcrop/main.nf +++ b/tests/modules/nf-scil/betcrop/fslbetcrop/main.nf @@ -5,7 +5,7 @@ nextflow.enable.dsl = 2 include { BETCROP_FSLBETCROP } from '../../../../../modules/nf-scil/betcrop/fslbetcrop/main.nf' workflow test_betcrop_fslbetcrop { - + input = [ [ id:'test', single_end:false ], // meta map file(params.test_data['betcrop']['fslbetcrop']['dwi'], checkIfExists: true), diff --git a/tests/modules/nf-scil/denoising/mppca/main.nf b/tests/modules/nf-scil/denoising/mppca/main.nf index 18f10742..3424e330 100644 --- a/tests/modules/nf-scil/denoising/mppca/main.nf +++ b/tests/modules/nf-scil/denoising/mppca/main.nf @@ -5,7 +5,7 @@ nextflow.enable.dsl = 2 include { DENOISING_MPPCA } from '../../../../../modules/nf-scil/denoising/mppca/main.nf' workflow test_denoising_mppca { - + input = [ [ id:'test', single_end:false ], // meta map file(params.test_data['denoising']['mppca']['dwi'], checkIfExists: true) diff --git a/tests/modules/nf-scil/denoising/mppca/nextflow.config b/tests/modules/nf-scil/denoising/mppca/nextflow.config index 18a46f7f..90fbc34b 100644 --- a/tests/modules/nf-scil/denoising/mppca/nextflow.config +++ b/tests/modules/nf-scil/denoising/mppca/nextflow.config @@ -5,4 +5,4 @@ process { withNAME: "DENOISING_MPPCA" { ext.extent = 3 } -} \ No newline at end of file +} diff --git a/tests/modules/nf-scil/preproc/gibbs/main.nf b/tests/modules/nf-scil/preproc/gibbs/main.nf index af168027..1f20211b 100644 --- a/tests/modules/nf-scil/preproc/gibbs/main.nf +++ b/tests/modules/nf-scil/preproc/gibbs/main.nf @@ -5,7 +5,7 @@ nextflow.enable.dsl = 2 include { PREPROC_GIBBS } from '../../../../../modules/nf-scil/preproc/gibbs/main.nf' workflow test_preproc_gibbs { - + input = [ [ id:'test', single_end:false ], // meta map file(params.test_data['preproc']['gibbs']['dwi'], checkIfExists: true) diff --git a/tests/modules/nf-scil/preproc/gibbs/nextflow.config b/tests/modules/nf-scil/preproc/gibbs/nextflow.config index 50f50a7a..8730f1c4 100644 --- a/tests/modules/nf-scil/preproc/gibbs/nextflow.config +++ b/tests/modules/nf-scil/preproc/gibbs/nextflow.config @@ -1,5 +1,5 @@ process { publishDir = { "${params.outdir}/${task.process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()}" } - -} \ No newline at end of file + +} diff --git a/tests/modules/nf-scil/preproc/n4/main.nf b/tests/modules/nf-scil/preproc/n4/main.nf index 1c3cea0e..1c86a0d8 100644 --- a/tests/modules/nf-scil/preproc/n4/main.nf +++ b/tests/modules/nf-scil/preproc/n4/main.nf @@ -5,7 +5,7 @@ nextflow.enable.dsl = 2 include { PREPROC_N4 } from '../../../../../modules/nf-scil/preproc/n4/main.nf' workflow test_preproc_n4 { - + input = [ [ id:'test', single_end:false ], // meta map file(params.test_data['preproc']['n4']['dwi'], checkIfExists: true), diff --git a/tests/modules/nf-scil/reconst/dtimetrics/main.nf b/tests/modules/nf-scil/reconst/dtimetrics/main.nf index 737ffd89..2bb4c4c2 100644 --- a/tests/modules/nf-scil/reconst/dtimetrics/main.nf +++ b/tests/modules/nf-scil/reconst/dtimetrics/main.nf @@ -5,7 +5,7 @@ nextflow.enable.dsl = 2 include { RECONST_DTIMETRICS } from '../../../../../modules/nf-scil/reconst/dtimetrics/main.nf' workflow test_reconst_dtimetrics { - + input = [ [ id:'test', single_end:false ], // meta map file(params.test_data['reconst']['dtimetrics']['dwi'], checkIfExists: true), @@ -18,7 +18,7 @@ workflow test_reconst_dtimetrics { } workflow test_reconst_dtimetrics_with_b0mask { - + input = [ [ id:'test', single_end:false ], // meta map file(params.test_data['reconst']['dtimetrics']['dwi'], checkIfExists: true), @@ -28,4 +28,4 @@ workflow test_reconst_dtimetrics_with_b0mask { ] RECONST_DTIMETRICS ( input ) -} \ No newline at end of file +} diff --git a/tests/modules/nf-scil/reconst/fodf/main.nf b/tests/modules/nf-scil/reconst/fodf/main.nf index 10333cde..99dc5da3 100644 --- a/tests/modules/nf-scil/reconst/fodf/main.nf +++ b/tests/modules/nf-scil/reconst/fodf/main.nf @@ -66,4 +66,4 @@ workflow test_reconst_fodf_no_mask { ]} RECONST_FODF ( input_no_mask ) -} \ No newline at end of file +} diff --git a/tests/modules/nf-scil/reconst/frf/main.nf b/tests/modules/nf-scil/reconst/frf/main.nf index e6ca9e4a..9714a520 100644 --- a/tests/modules/nf-scil/reconst/frf/main.nf +++ b/tests/modules/nf-scil/reconst/frf/main.nf @@ -5,7 +5,7 @@ nextflow.enable.dsl = 2 include { RECONST_FRF } from '../../../../../modules/nf-scil/reconst/frf/main.nf' workflow test_reconst_frf { - + input = [ [ id:'test', single_end:false ], // meta map file(params.test_data['reconst']['frf']['dwi'], checkIfExists: true), @@ -18,7 +18,7 @@ workflow test_reconst_frf { } workflow test_reconst_frf_nomask { - + input = [ [ id:'test', single_end:false ], // meta map file(params.test_data['reconst']['frf']['dwi'], checkIfExists: true), @@ -31,7 +31,7 @@ workflow test_reconst_frf_nomask { } workflow test_reconst_frf_set_frf { - + input = [ [ id:'test', single_end:false ], // meta map file(params.test_data['reconst']['frf']['dwi'], checkIfExists: true), @@ -44,7 +44,7 @@ workflow test_reconst_frf_set_frf { } workflow test_reconst_frf_set_frf_nomask { - + input = [ [ id:'test', single_end:false ], // meta map file(params.test_data['reconst']['frf']['dwi'], checkIfExists: true), @@ -54,4 +54,4 @@ workflow test_reconst_frf_set_frf_nomask { ] RECONST_FRF ( input ) -} \ No newline at end of file +} diff --git a/tests/modules/nf-scil/segmentation/fastseg/main.nf b/tests/modules/nf-scil/segmentation/fastseg/main.nf index 0ce2c632..fc65e1ad 100644 --- a/tests/modules/nf-scil/segmentation/fastseg/main.nf +++ b/tests/modules/nf-scil/segmentation/fastseg/main.nf @@ -5,7 +5,7 @@ nextflow.enable.dsl = 2 include { SEGMENTATION_FASTSEG } from '../../../../../modules/nf-scil/segmentation/fastseg/main.nf' workflow test_segmentation_fastseg { - + input = [ [ id:'test', single_end:false ], // meta map file(params.test_data['segmentation']['fastseg']['image'], checkIfExists: true) diff --git a/tests/modules/nf-scil/segmentation/freesurferseg/main.nf b/tests/modules/nf-scil/segmentation/freesurferseg/main.nf index f12f8182..9c6a343a 100644 --- a/tests/modules/nf-scil/segmentation/freesurferseg/main.nf +++ b/tests/modules/nf-scil/segmentation/freesurferseg/main.nf @@ -5,7 +5,7 @@ nextflow.enable.dsl = 2 include { SEGMENTATION_FREESURFERSEG } from '../../../../../modules/nf-scil/segmentation/freesurferseg/main.nf' workflow test_segmentation_freesurferseg { - + input = [ [ id:'test', single_end:false ], // meta map file(params.test_data['segmentation']['freesurferseg']['aparc_aseg'], checkIfExists: true), diff --git a/tests/modules/nf-scil/tracking/localtracking/main.nf b/tests/modules/nf-scil/tracking/localtracking/main.nf index fcaa0d4a..00e0ccb7 100644 --- a/tests/modules/nf-scil/tracking/localtracking/main.nf +++ b/tests/modules/nf-scil/tracking/localtracking/main.nf @@ -3,7 +3,7 @@ nextflow.enable.dsl = 2 include { LOAD_TEST_DATA } from '../../../../../subworkflows/nf-scil/load_test_data/main.nf' -include { +include { TRACKING_LOCALTRACKING as WM_TRACKING; TRACKING_LOCALTRACKING as FA_TRACKING; } from '../../../../../modules/nf-scil/tracking/localtracking/main.nf' @@ -12,7 +12,7 @@ workflow test_tracking_localtracking_wm { input_fetch = Channel.from( [ "tracking.zip" ] ) LOAD_TEST_DATA ( input_fetch, "test.load-test-data" ) - + input_wm = LOAD_TEST_DATA.out.test_data_directory .map{ test_data_directory -> [ [ id:'test', single_end:false ], // meta map diff --git a/tests/modules/nf-scil/tracking/pfttracking/main.nf b/tests/modules/nf-scil/tracking/pfttracking/main.nf index 5aebea4f..d5f24708 100644 --- a/tests/modules/nf-scil/tracking/pfttracking/main.nf +++ b/tests/modules/nf-scil/tracking/pfttracking/main.nf @@ -3,7 +3,7 @@ nextflow.enable.dsl = 2 include { LOAD_TEST_DATA } from '../../../../../subworkflows/nf-scil/load_test_data/main.nf' -include { +include { TRACKING_PFTTRACKING as WM_TRACKING; TRACKING_PFTTRACKING as FA_TRACKING; TRACKING_PFTTRACKING as INTERFACE_TRACKING; } from '../../../../../modules/nf-scil/tracking/pfttracking/main.nf' @@ -50,7 +50,7 @@ workflow test_tracking_pfttracking_fa { workflow test_tracking_pfttracking_interface { - + input_fetch = Channel.from( [ "tracking.zip" ] ) LOAD_TEST_DATA ( input_fetch, "test.load-test-data" ) diff --git a/tests/subworkflows/nf-scil/load_test_data/main.nf b/tests/subworkflows/nf-scil/load_test_data/main.nf index cb58bcc0..b022b518 100644 --- a/tests/subworkflows/nf-scil/load_test_data/main.nf +++ b/tests/subworkflows/nf-scil/load_test_data/main.nf @@ -5,7 +5,7 @@ nextflow.enable.dsl = 2 include { LOAD_TEST_DATA } from '../../../../subworkflows/nf-scil/load_test_data/main.nf' workflow test_load_test_data { - + input = Channel.from( [ "bids_json.zip", "plot.zip", "stats.zip" ] ) LOAD_TEST_DATA ( input, "test.load-test-data" )