From bf6a18008b4a47f889203d887b5d5b9d5dad39a5 Mon Sep 17 00:00:00 2001 From: Steffengreiner Date: Thu, 24 Oct 2024 17:52:56 +0200 Subject: [PATCH] Update tests and add missing files --- .../life/qbic/utils/NanoporeParserSpec.groovy | 26 +++++++++++++++++++ .../pod5_fail/myfile.pod5 | 1 + .../pod5_fail/myfile2.pod5 | 1 + .../pod5_fail/myfile3.pod5 | 1 + .../pod5_fail/myfile4.pod5 | 1 + .../pod5_fail/myfile5.pod5 | 1 + 6 files changed, 31 insertions(+) create mode 100644 src/test/resources/dummyFileSystem/nanopore-instrument-output/validates/QABCD001AB_E12A345a01_PAE12345_nanopore_valid_dorado_minimal/20200122_1217_1-A1-B1-PAE12345_1234567a/pod5_fail/myfile.pod5 create mode 100644 src/test/resources/dummyFileSystem/nanopore-instrument-output/validates/QABCD001AB_E12A345a01_PAE12345_nanopore_valid_dorado_minimal/20200122_1217_1-A1-B1-PAE12345_1234567a/pod5_fail/myfile2.pod5 create mode 100644 src/test/resources/dummyFileSystem/nanopore-instrument-output/validates/QABCD001AB_E12A345a01_PAE12345_nanopore_valid_dorado_minimal/20200122_1217_1-A1-B1-PAE12345_1234567a/pod5_fail/myfile3.pod5 create mode 100644 src/test/resources/dummyFileSystem/nanopore-instrument-output/validates/QABCD001AB_E12A345a01_PAE12345_nanopore_valid_dorado_minimal/20200122_1217_1-A1-B1-PAE12345_1234567a/pod5_fail/myfile4.pod5 create mode 100644 src/test/resources/dummyFileSystem/nanopore-instrument-output/validates/QABCD001AB_E12A345a01_PAE12345_nanopore_valid_dorado_minimal/20200122_1217_1-A1-B1-PAE12345_1234567a/pod5_fail/myfile5.pod5 diff --git a/src/test/groovy/life/qbic/utils/NanoporeParserSpec.groovy b/src/test/groovy/life/qbic/utils/NanoporeParserSpec.groovy index 10faffb5..477951ed 100644 --- a/src/test/groovy/life/qbic/utils/NanoporeParserSpec.groovy +++ b/src/test/groovy/life/qbic/utils/NanoporeParserSpec.groovy @@ -139,6 +139,32 @@ class NanoporeParserSpec extends Specification { assert experiment.getMeasurements().get(0).getLibraryPreparationKit() == "SQK-LSK109-XL" } + def "parsing a valid minimal file structure with bam files and dorado basecalling returns an OxfordNanoporeExperiment"() { + given: + def pathToDirectory = Paths.get(exampleDirectoriesRoot, "validates/QABCD001AB_E12A345a01_PAE12345_minimal_bam") + when: + def experiment = NanoporeParser.parseFileStructure(pathToDirectory) + then: + assert experiment instanceof OxfordNanoporeExperiment + // Check that the metadata from the report file has been retrieved + assert experiment.getMeasurements().get(0).getMachineHost() == "PCT0094" + // Check that the metadata from the summary file has been retrieved + assert experiment.getMeasurements().get(0).getLibraryPreparationKit() == "SQK-LSK109-XL" + } + + def "parsing a valid minimal file structure with pod5 files and dorado basecalling returns an OxfordNanoporeExperiment"() { + given: + def pathToDirectory = Paths.get(exampleDirectoriesRoot, "validates/QABCD001AB_E12A345a01_PAE12345_minimal_pod5") + when: + def experiment = NanoporeParser.parseFileStructure(pathToDirectory) + then: + assert experiment instanceof OxfordNanoporeExperiment + // Check that the metadata from the report file has been retrieved + assert experiment.getMeasurements().get(0).getMachineHost() == "PCT0094" + // Check that the metadata from the summary file has been retrieved + assert experiment.getMeasurements().get(0).getLibraryPreparationKit() == "SQK-LSK109-XL" + } + def "parsing a valid file structure for dorado based basecalling containing additional unknown files and folder still returns an OxfordNanoporeExperiment Object"() { given: def pathToDirectory = Paths.get(exampleDirectoriesRoot, "validates/QABCD001AB_E12A345a01_PAE12345_nanopore_valid_dorado_example") diff --git a/src/test/resources/dummyFileSystem/nanopore-instrument-output/validates/QABCD001AB_E12A345a01_PAE12345_nanopore_valid_dorado_minimal/20200122_1217_1-A1-B1-PAE12345_1234567a/pod5_fail/myfile.pod5 b/src/test/resources/dummyFileSystem/nanopore-instrument-output/validates/QABCD001AB_E12A345a01_PAE12345_nanopore_valid_dorado_minimal/20200122_1217_1-A1-B1-PAE12345_1234567a/pod5_fail/myfile.pod5 new file mode 100644 index 00000000..a46c98ae --- /dev/null +++ b/src/test/resources/dummyFileSystem/nanopore-instrument-output/validates/QABCD001AB_E12A345a01_PAE12345_nanopore_valid_dorado_minimal/20200122_1217_1-A1-B1-PAE12345_1234567a/pod5_fail/myfile.pod5 @@ -0,0 +1 @@ +This is some text diff --git a/src/test/resources/dummyFileSystem/nanopore-instrument-output/validates/QABCD001AB_E12A345a01_PAE12345_nanopore_valid_dorado_minimal/20200122_1217_1-A1-B1-PAE12345_1234567a/pod5_fail/myfile2.pod5 b/src/test/resources/dummyFileSystem/nanopore-instrument-output/validates/QABCD001AB_E12A345a01_PAE12345_nanopore_valid_dorado_minimal/20200122_1217_1-A1-B1-PAE12345_1234567a/pod5_fail/myfile2.pod5 new file mode 100644 index 00000000..a46c98ae --- /dev/null +++ b/src/test/resources/dummyFileSystem/nanopore-instrument-output/validates/QABCD001AB_E12A345a01_PAE12345_nanopore_valid_dorado_minimal/20200122_1217_1-A1-B1-PAE12345_1234567a/pod5_fail/myfile2.pod5 @@ -0,0 +1 @@ +This is some text diff --git a/src/test/resources/dummyFileSystem/nanopore-instrument-output/validates/QABCD001AB_E12A345a01_PAE12345_nanopore_valid_dorado_minimal/20200122_1217_1-A1-B1-PAE12345_1234567a/pod5_fail/myfile3.pod5 b/src/test/resources/dummyFileSystem/nanopore-instrument-output/validates/QABCD001AB_E12A345a01_PAE12345_nanopore_valid_dorado_minimal/20200122_1217_1-A1-B1-PAE12345_1234567a/pod5_fail/myfile3.pod5 new file mode 100644 index 00000000..a46c98ae --- /dev/null +++ b/src/test/resources/dummyFileSystem/nanopore-instrument-output/validates/QABCD001AB_E12A345a01_PAE12345_nanopore_valid_dorado_minimal/20200122_1217_1-A1-B1-PAE12345_1234567a/pod5_fail/myfile3.pod5 @@ -0,0 +1 @@ +This is some text diff --git a/src/test/resources/dummyFileSystem/nanopore-instrument-output/validates/QABCD001AB_E12A345a01_PAE12345_nanopore_valid_dorado_minimal/20200122_1217_1-A1-B1-PAE12345_1234567a/pod5_fail/myfile4.pod5 b/src/test/resources/dummyFileSystem/nanopore-instrument-output/validates/QABCD001AB_E12A345a01_PAE12345_nanopore_valid_dorado_minimal/20200122_1217_1-A1-B1-PAE12345_1234567a/pod5_fail/myfile4.pod5 new file mode 100644 index 00000000..a46c98ae --- /dev/null +++ b/src/test/resources/dummyFileSystem/nanopore-instrument-output/validates/QABCD001AB_E12A345a01_PAE12345_nanopore_valid_dorado_minimal/20200122_1217_1-A1-B1-PAE12345_1234567a/pod5_fail/myfile4.pod5 @@ -0,0 +1 @@ +This is some text diff --git a/src/test/resources/dummyFileSystem/nanopore-instrument-output/validates/QABCD001AB_E12A345a01_PAE12345_nanopore_valid_dorado_minimal/20200122_1217_1-A1-B1-PAE12345_1234567a/pod5_fail/myfile5.pod5 b/src/test/resources/dummyFileSystem/nanopore-instrument-output/validates/QABCD001AB_E12A345a01_PAE12345_nanopore_valid_dorado_minimal/20200122_1217_1-A1-B1-PAE12345_1234567a/pod5_fail/myfile5.pod5 new file mode 100644 index 00000000..a46c98ae --- /dev/null +++ b/src/test/resources/dummyFileSystem/nanopore-instrument-output/validates/QABCD001AB_E12A345a01_PAE12345_nanopore_valid_dorado_minimal/20200122_1217_1-A1-B1-PAE12345_1234567a/pod5_fail/myfile5.pod5 @@ -0,0 +1 @@ +This is some text