Skip to content

Conversation

@pinin4fjords
Copy link
Member

Summary

This PR reduces redundant process execution in pipeline-level tests by adding skip options to tests where the processes are already comprehensively covered by default.nf.test.

Principle

Skip processes only when their inputs are structurally unchanged from what's already tested elsewhere. Keep processes when the test creates meaningfully different inputs that warrant integration testing.

Changes by Test File

Test Skip Options Added Rationale
sentieon_default skip_qc, skip_stringtie, skip_bigwig Sentieon STAR produces near-identical BAMs to STAR
remove_ribo_rna skip_qc, skip_stringtie, skip_bigwig rRNA removal only affects read count, not BAM structure
min_mapped_reads skip_qc, skip_stringtie, skip_bigwig Sample filtering doesn't change BAM structure
featurecounts_group_type skip_qc, skip_stringtie, skip_bigwig Only featureCounts grouping differs; BAMs unchanged
hisat2 skip_bigwig only Keep QC and StringTie - HISAT2 BAMs have different splice junction handling worth integration testing
umi skip_stringtie, skip_bigwig Keep QC - deduplicated BAMs have different characteristics worth integration testing

Tests Left Unchanged

  • default - baseline full pipeline test
  • skip_qc - dedicated test for skip_qc feature
  • skip_trimming - dedicated test for skip_trimming feature
  • salmon - already optimized (skips QC + alignment)
  • kallisto - already optimized (skips QC + alignment)
  • star_rsem - different quantification pathway worth full testing
  • bam_input - external BAMs may have different characteristics
  • nofasta - different pipeline pathway worth full testing

Coverage Matrix (After Changes)

Feature Tested By
Full QC default
STAR alignment default
HISAT2 alignment + QC hisat2
Sentieon STAR alignment sentieon_default
featureCounts default, featurecounts_group_type
StringTie default, hisat2
BigWig default
UMI dedup + QC umi

🤖 Generated with Claude Code

Skip processes that are already covered by default.nf.test to reduce
redundant test execution while maintaining meaningful integration testing.

Changes by test file:
- sentieon_default: skip QC, StringTie, bigwig (Sentieon STAR ≈ STAR BAMs)
- remove_ribo_rna: skip QC, StringTie, bigwig (rRNA removal doesn't change BAM structure)
- min_mapped_reads: skip QC, StringTie, bigwig (sample filtering doesn't change BAMs)
- featurecounts_group_type: skip QC, StringTie, bigwig (only counting differs)
- hisat2: skip bigwig only (keep QC/StringTie for different BAM characteristics)
- umi: skip StringTie, bigwig (keep QC for deduplicated BAM testing)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <[email protected]>
@github-actions
Copy link

github-actions bot commented Dec 4, 2025

nf-core pipelines lint overall result: Passed ✅ ⚠️

Posted for pipeline commit ee6f3fa

+| ✅ 284 tests passed       |+
#| ❔   8 tests were ignored |#
!| ❗  10 tests had warnings |!

❗ Test warnings:

  • files_exist - File not found: assets/multiqc_config.yml
  • nextflow_config - Config manifest.version should end in dev: 3.22.1
  • pipeline_todos - TODO string in base.config: Check the defaults for all processes
  • pipeline_todos - TODO string in awsfulltest.yml: You can customise AWS full pipeline tests as required
  • pipeline_todos - TODO string in methods_description_template.yml: #Update the HTML below to your preferred methods description, e.g. add publication citation for this pipeline
  • pipeline_todos - TODO string in main.nf: Optionally add in-text citation tools to this list.
  • pipeline_todos - TODO string in main.nf: Optionally add bibliographic entries to this list.
  • pipeline_todos - TODO string in main.nf: Only uncomment below if logic in toolCitationText/toolBibliographyText has been filled!
  • pipeline_todos - TODO string in nextflow.config: Specify any additional parameters here
  • pipeline_if_empty_null - ifEmpty(null) found in /home/runner/work/rnaseq/rnaseq/subworkflows/local/prepare_genome/main.nf: _ versions = ch_versions.ifEmpty(null) // channel: [ versions.yml ]
    _

❔ Tests ignored:

✅ Tests passed:

Run details

  • nf-core/tools version 3.5.1
  • Run at 2025-12-04 17:39:46

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants