Home Mold

nextflow-to-test-data

Resolve a Nextflow pipeline's own declared test fixtures into Galaxy workflow test-data refs.

Mold health

warn
  • Source layout

    Directory Mold with only index.md frontmatter.

  • Axis fields

    source-specific fields are coherent.

  • Eval plan

    Abstract oracle: fixture-independent property checks any run must satisfy.

    eval.md not written yet.

  • Scenarios

    Concrete cases: fixtures bound to expected values, run against the eval properties.

    scenarios.md not written yet.

  • Typed refs

    4 typed references; 0 resolver issues.

  • On-demand triggers

    All on-demand references describe triggers.

  • Evidence checks

    Hypothesis references include verification.

axis
source-specific
source
nextflow
name
nextflow-to-test-data
contract

Reference Loading

Typed Mold references describe what casting consumes and when the generated skill should load each artifact.

Schemasummary-nextflow

Structured contract copied for validation or lookup.

Purpose
Input contract: read the selected profile's `test_fixtures.inputs[]` and the `nf_tests[]` enumeration — role, url/path, sha1, filetype — as the declared source of test data.
Researchcomponent-nextflow-testing

Background synthesis loaded by explicit progressive-disclosure metadata.

Purpose
Interpret nf-test profiles and fixture conventions before mapping declared fixtures onto Galaxy inputs.
Trigger
When reading `test_fixtures` / `nf_tests` to decide which profile's fixtures best cover the workflow inputs.
Verify
Map nf-core/bacass declared fixtures onto its Galaxy interface and confirm this note improves profile/fixture selection.

Cast artifacts

  • Claude skillnextflow-to-test-data— Resolve a Nextflow pipeline's own declared test fixtures into Galaxy workflow test-data refs.

How to install →

Artifact handoffs

/ pipeline contract

Produces

  • test-data-refs json test-data-refs.json

    Test data resolved from the pipeline's declared fixtures, expressed as URLs/paths plus expected shapes for downstream test authoring. Shared id with [[find-test-data]] — the branch's search fallback fills only the inputs this Mold leaves unresolved.

    consumed by

Consumes

  • Structured Nextflow summary from [[summarize-nextflow]]; carries the selected profile's `test_fixtures` and the full `nf_tests[]` enumeration — each declared input a role plus url/path, sha1, and filetype.

    produced by
  • Galaxy interface brief from [[nextflow-summary-to-galaxy-interface]] pinning the workflow input labels, collection shapes, and datatypes each resolved fixture must map onto.

    produced by

nextflow-to-test-data

Resolve the Nextflow pipeline’s own declared test fixtures into Galaxy test-data-refs. The Nextflow summary already carries the test-profile fixtures (test_fixtures) and the full nf-test enumeration (nf_tests[]) — each declared input a role plus a url/path, sha1, and filetype. Map those onto the Galaxy workflow’s inputs and emit one ref per input, ready for implement-galaxy-workflow-test to stage.

This Mold is the source-specific first leg of the harness’s test-data-resolution branch. It resolves what the pipeline itself declares; any input it cannot resolve from a declared fixture stays a reported gap and the harness falls through to find-test-data (search), then to user-supplied. Deciding to fall through is a harness concern, not this Mold’s — its job is an honest map of the pipeline’s own fixtures.

Sequence

  1. Enumerate Galaxy inputs and their required shape. From the interface brief, list each workflow input: label, Galaxy collection shape (File / list / paired / list:paired / record), and datatype. This is the target shape every ref must satisfy.
  2. Read the declared fixtures. From the summary’s test_fixtures.inputs[] (selected profile) and nf_tests[] (other profiles), collect each declared input: role, url/path, sha1, filetype, and description. Prefer the profile whose fixtures best cover the workflow’s inputs.
  3. Map each declared fixture onto a Galaxy input. Match by role and shape onto the interface’s input labels. A samplesheet-driven Nextflow input often expands into a Galaxy collection — record the element identifiers and any split/concatenation prep needed to reach the Galaxy collection shape (galaxy-workflow-testability-design).
  4. Emit refs. Write one test-data-refs.json entry per resolved input: prefer the declared remote url + sha1 (remote-URL-first, iwc-test-data-conventions); fall back to the in-tree path plus provenance only when no URL is published. Carry datatype, collection element identifiers, and any subset/split prep. Each entry maps to an addressable workflow input label.
  5. Report genuine gaps. An input with no declared fixture of the right shape stays resolved: false with a reason — this is what the harness hands to find-test-data. Do not search public sources here; searching is find-test-data’s job, not this Mold’s.

No fabrication

Never invent a URL, accession, or path, and never emit a placeholder for an input you could not resolve from a declared fixture. A declared fixture with no published URL is recorded by its in-tree path plus provenance, not papered over with a guessed URL. Every emitted ref points at data the pipeline actually declares; everything else is an honest gap for the next leg of the branch.

Incoming References (1)

  • NEXTFLOW → GALAXYphase of pipeline— Direct path from a Nextflow pipeline to a Galaxy gxformat2 workflow.