From c904e2d7a4ef6aade4b46e4afcfdf4e3dea3e508 Mon Sep 17 00:00:00 2001 From: Edmund Miller Date: Thu, 22 Aug 2024 12:28:00 -0500 Subject: [PATCH 1/3] test: Add expected behavior to fail with replicates that have the same name --- .../samplesheets/replicates_same_filename.csv | 3 +++ .../bugs/replicates_same_filename.nf.test | 25 +++++++++++++++++++ .../replicates_same_filename.nf.test.snap | 12 +++++++++ 3 files changed, 40 insertions(+) create mode 100644 tests/config/samplesheets/replicates_same_filename.csv create mode 100644 workflows/tests/bugs/replicates_same_filename.nf.test create mode 100644 workflows/tests/bugs/replicates_same_filename.nf.test.snap diff --git a/tests/config/samplesheets/replicates_same_filename.csv b/tests/config/samplesheets/replicates_same_filename.csv new file mode 100644 index 00000000..ab3ae47e --- /dev/null +++ b/tests/config/samplesheets/replicates_same_filename.csv @@ -0,0 +1,3 @@ +sample,fastq_1,fastq_2 +SAMPLE_REP1,https://raw.githubusercontent.com/nf-core/test-datasets/nascent/testdata/SRX882903_T3.fastq.gz, +SAMPLE_REP1,https://github.com/nf-core/test-datasets/raw/nascent/testdata/SRX882903_T3.fastq.gz, diff --git a/workflows/tests/bugs/replicates_same_filename.nf.test b/workflows/tests/bugs/replicates_same_filename.nf.test new file mode 100644 index 00000000..cd543907 --- /dev/null +++ b/workflows/tests/bugs/replicates_same_filename.nf.test @@ -0,0 +1,25 @@ +nextflow_pipeline { + + name "Replicates" + script "../../../main.nf" + tag "bug" + + // https://github.com/nf-core/nascent/issues/159 + test("Should fail with replicates that have the same filename") { + when { + params { + outdir = "$outputDir" + input = "${projectDir}/tests/config/samplesheets/replicates_same_filename.csv" + } + } + + then { + // FIXME this fails at FASTQC but should fail at nf-validation + // Might get fixed in nf-schema? + assert workflow.failed + assert snapshot( + workflow.trace.tasks().size(), + ).match() + } + } +} diff --git a/workflows/tests/bugs/replicates_same_filename.nf.test.snap b/workflows/tests/bugs/replicates_same_filename.nf.test.snap new file mode 100644 index 00000000..5c1d9ef6 --- /dev/null +++ b/workflows/tests/bugs/replicates_same_filename.nf.test.snap @@ -0,0 +1,12 @@ +{ + "Should fail with replicates that have the same filename": { + "content": [ + 0 + ], + "meta": { + "nf-test": "0.9.0", + "nextflow": "24.04.4" + }, + "timestamp": "2024-08-22T12:24:05.004711151" + } +} \ No newline at end of file From eb2a63334da57d74e48b5c9bb45036dda358adb9 Mon Sep 17 00:00:00 2001 From: Edmund Miller Date: Thu, 22 Aug 2024 13:36:13 -0500 Subject: [PATCH 2/3] style: Move test to separate directory https://github.com/askimed/nf-test/issues/248 --- .../main.nf.test} | 4 ++-- .../main.nf.test.snap} | 2 +- .../replicates_same_filename}/replicates_same_filename.csv | 0 3 files changed, 3 insertions(+), 3 deletions(-) rename workflows/tests/bugs/{replicates_same_filename.nf.test => replicates_same_filename/main.nf.test} (79%) rename workflows/tests/bugs/{replicates_same_filename.nf.test.snap => replicates_same_filename/main.nf.test.snap} (99%) rename {tests/config/samplesheets => workflows/tests/bugs/replicates_same_filename}/replicates_same_filename.csv (100%) diff --git a/workflows/tests/bugs/replicates_same_filename.nf.test b/workflows/tests/bugs/replicates_same_filename/main.nf.test similarity index 79% rename from workflows/tests/bugs/replicates_same_filename.nf.test rename to workflows/tests/bugs/replicates_same_filename/main.nf.test index cd543907..a5e10bff 100644 --- a/workflows/tests/bugs/replicates_same_filename.nf.test +++ b/workflows/tests/bugs/replicates_same_filename/main.nf.test @@ -1,7 +1,7 @@ nextflow_pipeline { name "Replicates" - script "../../../main.nf" + script "../../../../main.nf" tag "bug" // https://github.com/nf-core/nascent/issues/159 @@ -9,7 +9,7 @@ nextflow_pipeline { when { params { outdir = "$outputDir" - input = "${projectDir}/tests/config/samplesheets/replicates_same_filename.csv" + input = "${projectDir}/workflows/tests/bugs/replicates_same_filename/replicates_same_filename.csv" } } diff --git a/workflows/tests/bugs/replicates_same_filename.nf.test.snap b/workflows/tests/bugs/replicates_same_filename/main.nf.test.snap similarity index 99% rename from workflows/tests/bugs/replicates_same_filename.nf.test.snap rename to workflows/tests/bugs/replicates_same_filename/main.nf.test.snap index 5c1d9ef6..9260b978 100644 --- a/workflows/tests/bugs/replicates_same_filename.nf.test.snap +++ b/workflows/tests/bugs/replicates_same_filename/main.nf.test.snap @@ -9,4 +9,4 @@ }, "timestamp": "2024-08-22T12:24:05.004711151" } -} \ No newline at end of file +} diff --git a/tests/config/samplesheets/replicates_same_filename.csv b/workflows/tests/bugs/replicates_same_filename/replicates_same_filename.csv similarity index 100% rename from tests/config/samplesheets/replicates_same_filename.csv rename to workflows/tests/bugs/replicates_same_filename/replicates_same_filename.csv From dd5a6aaeccd405fde8e2ec78a9c4c07315dcb18e Mon Sep 17 00:00:00 2001 From: Edmund Miller Date: Thu, 22 Aug 2024 14:27:00 -0500 Subject: [PATCH 3/3] test: Add a test for same ID with different file names --- .../replicates_same_filename/main.nf.test | 22 ++++++++++++++++++- .../main.nf.test.snap | 12 +++++++--- .../bugs/replicates_same_filename/same_id.csv | 3 +++ 3 files changed, 33 insertions(+), 4 deletions(-) create mode 100644 workflows/tests/bugs/replicates_same_filename/same_id.csv diff --git a/workflows/tests/bugs/replicates_same_filename/main.nf.test b/workflows/tests/bugs/replicates_same_filename/main.nf.test index a5e10bff..0664c3a6 100644 --- a/workflows/tests/bugs/replicates_same_filename/main.nf.test +++ b/workflows/tests/bugs/replicates_same_filename/main.nf.test @@ -4,7 +4,7 @@ nextflow_pipeline { script "../../../../main.nf" tag "bug" - // https://github.com/nf-core/nascent/issues/159 + // BUG https://github.com/nf-core/nascent/issues/159 test("Should fail with replicates that have the same filename") { when { params { @@ -22,4 +22,24 @@ nextflow_pipeline { ).match() } } + + // BUG https://github.com/nf-core/nascent/issues/159 + test("Should work with replicates that have the same id and different file names") { + when { + params { + outdir = "$outputDir" + input = "${projectDir}/workflows/tests/bugs/replicates_same_filename/same_id.csv" + } + } + + then { + assertAll( + { assert workflow.success }, + { assert snapshot( + workflow.trace.tasks().size(), + ).match() + } + ) + } + } } diff --git a/workflows/tests/bugs/replicates_same_filename/main.nf.test.snap b/workflows/tests/bugs/replicates_same_filename/main.nf.test.snap index 9260b978..ff74c64f 100644 --- a/workflows/tests/bugs/replicates_same_filename/main.nf.test.snap +++ b/workflows/tests/bugs/replicates_same_filename/main.nf.test.snap @@ -1,12 +1,18 @@ { "Should fail with replicates that have the same filename": { - "content": [ - 0 - ], + "content": [0], "meta": { "nf-test": "0.9.0", "nextflow": "24.04.4" }, "timestamp": "2024-08-22T12:24:05.004711151" + }, + "Should work with replicates that have the same id and different file names": { + "content": [31], + "meta": { + "nf-test": "0.9.0", + "nextflow": "24.04.4" + }, + "timestamp": "2024-08-22T14:52:05.603228732" } } diff --git a/workflows/tests/bugs/replicates_same_filename/same_id.csv b/workflows/tests/bugs/replicates_same_filename/same_id.csv new file mode 100644 index 00000000..bc7eaecf --- /dev/null +++ b/workflows/tests/bugs/replicates_same_filename/same_id.csv @@ -0,0 +1,3 @@ +sample,fastq_1,fastq_2 +SAMPLE_REP1,https://raw.githubusercontent.com/nf-core/test-datasets/nascent/testdata/SRX882903_T1.fastq.gz, +SAMPLE_REP1,https://raw.githubusercontent.com/nf-core/test-datasets/nascent/testdata/SRX882903_T2.fastq.gz,