2022-03-25 14:25:07 +00:00
|
|
|
#!/usr/bin/env nextflow
|
|
|
|
|
|
|
|
nextflow.enable.dsl = 2
|
|
|
|
|
|
|
|
include { UMITOOLS_EXTRACT } from '../../../../modules/umitools/extract/main.nf'
|
2022-05-23 21:31:09 +00:00
|
|
|
include { BWA_INDEX } from '../../../../modules/bwa/index/main.nf'
|
|
|
|
include { BWA_MEM } from '../../../../modules/bwa/mem/main.nf'
|
2022-03-25 14:25:07 +00:00
|
|
|
include { SAMTOOLS_INDEX } from '../../../../modules/samtools/index/main.nf'
|
2022-05-23 21:31:09 +00:00
|
|
|
include { UMITOOLS_DEDUP } from '../../../../modules/umitools/dedup/main.nf'
|
2022-03-25 14:25:07 +00:00
|
|
|
|
|
|
|
//
|
|
|
|
// Test with no UMI
|
|
|
|
//
|
|
|
|
workflow test_umitools_dedup_no_umi {
|
2022-05-23 21:31:09 +00:00
|
|
|
input = [
|
|
|
|
[ id:'test'], // meta map
|
|
|
|
file(params.test_data['sarscov2']['illumina']['test_paired_end_sorted_bam'], checkIfExists: true),
|
|
|
|
file(params.test_data['sarscov2']['illumina']['test_paired_end_sorted_bam_bai'], checkIfExists: true)
|
|
|
|
]
|
|
|
|
get_output_stats = false
|
2022-03-25 14:25:07 +00:00
|
|
|
|
2022-05-23 21:31:09 +00:00
|
|
|
UMITOOLS_DEDUP ( input, get_output_stats )
|
2022-03-25 14:25:07 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
//
|
2022-05-23 21:31:09 +00:00
|
|
|
// Test with single-end data without --output-stats
|
2022-03-25 14:25:07 +00:00
|
|
|
//
|
2022-05-23 21:31:09 +00:00
|
|
|
workflow test_umitools_dedup_single_end_no_stats {
|
|
|
|
input = [
|
|
|
|
[ id:'test', single_end:true ], // meta map
|
|
|
|
file(params.test_data['sarscov2']['illumina']['test_1_fastq_gz'], checkIfExists: true)
|
|
|
|
]
|
2022-03-25 14:25:07 +00:00
|
|
|
fasta = file(params.test_data['sarscov2']['genome']['genome_fasta'], checkIfExists: true)
|
2022-05-23 21:31:09 +00:00
|
|
|
get_output_stats = false
|
2022-03-25 14:25:07 +00:00
|
|
|
|
|
|
|
UMITOOLS_EXTRACT ( input )
|
|
|
|
BWA_INDEX ( fasta )
|
|
|
|
BWA_MEM ( UMITOOLS_EXTRACT.out.reads, BWA_INDEX.out.index, true )
|
2022-05-23 21:31:09 +00:00
|
|
|
SAMTOOLS_INDEX ( BWA_MEM.out.bam )
|
|
|
|
UMITOOLS_DEDUP ( BWA_MEM.out.bam.join(SAMTOOLS_INDEX.out.bai, by: [0]), get_output_stats )
|
2022-03-25 14:25:07 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
//
|
2022-05-23 21:31:09 +00:00
|
|
|
// Test with paired-end data without --output-stats
|
2022-03-25 14:25:07 +00:00
|
|
|
//
|
2022-05-23 21:31:09 +00:00
|
|
|
workflow test_umitools_dedup_paired_end_no_stats {
|
|
|
|
input = [
|
|
|
|
[ id:'test', single_end:false ], // meta map
|
|
|
|
[
|
|
|
|
file(params.test_data['sarscov2']['illumina']['test_1_fastq_gz'], checkIfExists: true),
|
|
|
|
file(params.test_data['sarscov2']['illumina']['test_2_fastq_gz'], checkIfExists: true)
|
|
|
|
]
|
|
|
|
]
|
|
|
|
fasta = file(params.test_data['sarscov2']['genome']['genome_fasta'], checkIfExists: true)
|
|
|
|
get_output_stats = false
|
2022-03-25 14:25:07 +00:00
|
|
|
|
2022-05-23 21:31:09 +00:00
|
|
|
UMITOOLS_EXTRACT ( input )
|
|
|
|
BWA_INDEX ( fasta )
|
|
|
|
BWA_MEM ( UMITOOLS_EXTRACT.out.reads, BWA_INDEX.out.index, true )
|
|
|
|
SAMTOOLS_INDEX ( BWA_MEM.out.bam )
|
|
|
|
UMITOOLS_DEDUP ( BWA_MEM.out.bam.join(SAMTOOLS_INDEX.out.bai, by: [0]), get_output_stats )
|
|
|
|
}
|
|
|
|
|
|
|
|
//
|
|
|
|
// Test with paired-end data with --output-stats
|
|
|
|
//
|
|
|
|
workflow test_umitools_dedup_paired_end_stats {
|
|
|
|
input = [
|
|
|
|
[ id:'test', single_end:false ], // meta map
|
|
|
|
[
|
|
|
|
file(params.test_data['sarscov2']['illumina']['test_1_fastq_gz'], checkIfExists: true),
|
|
|
|
file(params.test_data['sarscov2']['illumina']['test_2_fastq_gz'], checkIfExists: true)
|
|
|
|
]
|
|
|
|
]
|
2022-03-25 14:25:07 +00:00
|
|
|
fasta = file(params.test_data['sarscov2']['genome']['genome_fasta'], checkIfExists: true)
|
2022-05-23 21:31:09 +00:00
|
|
|
get_output_stats = true
|
2022-03-25 14:25:07 +00:00
|
|
|
|
|
|
|
UMITOOLS_EXTRACT ( input )
|
|
|
|
BWA_INDEX ( fasta )
|
|
|
|
BWA_MEM ( UMITOOLS_EXTRACT.out.reads, BWA_INDEX.out.index, true )
|
2022-05-23 21:31:09 +00:00
|
|
|
SAMTOOLS_INDEX ( BWA_MEM.out.bam )
|
|
|
|
UMITOOLS_DEDUP ( BWA_MEM.out.bam.join(SAMTOOLS_INDEX.out.bai, by: [0]), get_output_stats )
|
2022-03-25 14:25:07 +00:00
|
|
|
}
|