diff --git a/src/nf_modules/cutadapt/cutadapt.nf b/src/nf_modules/cutadapt/cutadapt.nf
index 204a9e5a5e34ecef5b47e1892bc0ac9e0f6a1760..c7428637e75eb7bef584d6d42aba48e3006fe0fa 100644
--- a/src/nf_modules/cutadapt/cutadapt.nf
+++ b/src/nf_modules/cutadapt/cutadapt.nf
@@ -41,33 +41,32 @@ process adaptor_removal {
 * for single-end data
 */
 
-params.fastq = "$baseDir/data/fastq/*.fastq"
-
 log.info "fastq files : ${params.fastq}"
 
 Channel
   .fromPath( params.fastq )
   .ifEmpty { error "Cannot find any fastq files matching: ${params.fastq}" }
+  .map { it -> [(it.baseName =~ /([^\.]*)/)[0][1], it]}
   .set { fastq_files }
 
 process adaptor_removal {
-  tag "$reads.baseName"
-  publishDir "results/fastq/adaptor_removal/", mode: 'copy'
+  tag "$file_id"
 
   input:
-  file reads from fastq_files
+  set file_id, file(reads) from fastq_files
 
   output:
-  file "*_cut.fastq.gz" into fastq_files_cut
+  set file_id, "*_cut.fastq.gz" into fastq_files_cut
 
   script:
   """
   cutadapt -a AGATCGGAAGAG -g CTCTTCCGATCT\
-  -o ${reads.baseName}_cut.fastq.gz \
-  ${reads} > ${reads.baseName}_report.txt
+  -o ${file_id}_cut.fastq.gz \
+  ${reads} > ${file_id}_report.txt
   """
 }
 
+
 /*                      quality trimming                                     */
 
 /*
@@ -105,30 +104,28 @@ process trimming {
 * for single-end data
 */
 
-params.fastq = "$baseDir/data/fastq/*.fastq"
-
 log.info "fastq files : ${params.fastq}"
 
 Channel
   .fromPath( params.fastq )
   .ifEmpty { error "Cannot find any fastq files matching: ${params.fastq}" }
+  .map { it -> [(it.baseName =~ /([^\.]*)/)[0][1], it]}
   .set { fastq_files }
 
 process trimming {
-  tag "$reads.baseName"
-  publishDir "results/fastq/trimming/", mode: 'copy'
+  tag "$file_id"
 
   input:
-  file reads from fastq_files
+  set file_id, file(reads) from fastq_files
 
   output:
-  file "*_trim.fastq.gz" into fastq_files_trim
+  set file_id, "*_trim.fastq.gz" into fastq_files_cut
 
   script:
   """
   cutadapt -q 20,20 \
-  -o ${reads.baseName}_trim.fastq.gz \
-  ${reads} > ${reads.baseName}_report.txt
+  -o ${file_id}_trim.fastq.gz \
+  ${reads} > ${file_id}_report.txt
   """
 }
 
diff --git a/src/nf_modules/cutadapt/tests/adaptor_removal_single.nf b/src/nf_modules/cutadapt/tests/adaptor_removal_single.nf
index dc889a0e26d12e90f4913ee2043f60e6f930df4d..26f3cd7602bf242f718a027bad253ba2fe1e8d8c 100644
--- a/src/nf_modules/cutadapt/tests/adaptor_removal_single.nf
+++ b/src/nf_modules/cutadapt/tests/adaptor_removal_single.nf
@@ -3,22 +3,23 @@ log.info "fastq files : ${params.fastq}"
 Channel
   .fromPath( params.fastq )
   .ifEmpty { error "Cannot find any fastq files matching: ${params.fastq}" }
+  .map { it -> [(it.baseName =~ /([^\.]*)/)[0][1], it]}
   .set { fastq_files }
 
 process adaptor_removal {
-  tag "$reads.baseName"
+  tag "$file_id"
 
   input:
-  file reads from fastq_files
+  set file_id, file(reads) from fastq_files
 
   output:
-  file "*_cut.fastq.gz" into fastq_files_cut
+  set file_id, "*_cut.fastq.gz" into fastq_files_cut
 
   script:
   """
   cutadapt -a AGATCGGAAGAG -g CTCTTCCGATCT\
-  -o ${reads.baseName}_cut.fastq.gz \
-  ${reads} > ${reads.baseName}_report.txt
+  -o ${file_id}_cut.fastq.gz \
+  ${reads} > ${file_id}_report.txt
   """
 }
 
diff --git a/src/nf_modules/cutadapt/tests/tests.sh b/src/nf_modules/cutadapt/tests/tests.sh
index a684410cf8234c3b5172679ea9de8198decf02e8..68623dbb2b54a87cc80bacefa28a25a7676acdae 100755
--- a/src/nf_modules/cutadapt/tests/tests.sh
+++ b/src/nf_modules/cutadapt/tests/tests.sh
@@ -6,7 +6,7 @@ nextflow src/nf_modules/cutadapt/tests/adaptor_removal_paired.nf \
 nextflow src/nf_modules/cutadapt/tests/adaptor_removal_single.nf \
   -c src/nf_modules/cutadapt/cutadapt.config \
   -profile docker \
-  --fastq "data/tiny_dataset/fastq/tiny_R{1,2}.fastq"
+  --fastq "data/tiny_dataset/fastq/tiny*_S.fastq"
 
 nextflow src/nf_modules/cutadapt/tests/trimming_paired.nf \
   -c src/nf_modules/cutadapt/cutadapt.config \
@@ -16,4 +16,4 @@ nextflow src/nf_modules/cutadapt/tests/trimming_paired.nf \
 nextflow src/nf_modules/cutadapt/tests/trimming_single.nf \
   -c src/nf_modules/cutadapt/cutadapt.config \
   -profile docker \
-  --fastq "data/tiny_dataset/fastq/tiny_R{1,2}.fastq"
+  --fastq "data/tiny_dataset/fastq/tiny*_S.fastq"
diff --git a/src/nf_modules/cutadapt/tests/trimming_single.nf b/src/nf_modules/cutadapt/tests/trimming_single.nf
index c2dd2627da7d3b989b556c479ca86a43897e4898..9b3764dbed4dd51bfb361b56b4f5fc737b18c270 100644
--- a/src/nf_modules/cutadapt/tests/trimming_single.nf
+++ b/src/nf_modules/cutadapt/tests/trimming_single.nf
@@ -3,22 +3,23 @@ log.info "fastq files : ${params.fastq}"
 Channel
   .fromPath( params.fastq )
   .ifEmpty { error "Cannot find any fastq files matching: ${params.fastq}" }
+  .map { it -> [(it.baseName =~ /([^\.]*)/)[0][1], it]}
   .set { fastq_files }
 
 process trimming {
-  tag "$reads.baseName"
+  tag "$file_id"
 
   input:
-  file reads from fastq_files
+  set file_id, file(reads) from fastq_files
 
   output:
-  file "*_trim.fastq.gz" into fastq_files_cut
+  set file_id, "*_trim.fastq.gz" into fastq_files_cut
 
   script:
   """
   cutadapt -q 20,20 \
-  -o ${reads.baseName}_trim.fastq.gz \
-  ${reads} > ${reads.baseName}_report.txt
+  -o ${file_id}_trim.fastq.gz \
+  ${reads} > ${file_id}_report.txt
   """
 }