Structure:
- context:
...
rule: rules.X.Y.Z
does: pass
- context:
...
rule: rules.X.Y.Z
does: notapply
- context:
...
rule: rules.X.Y.Z
does: fail
Two styles of test: File-based and mock context-based
sidecars, tabular_data, checks, files, errors
- rule: rules.checks.micr.PixelSizeInconsistent
does: pass # fail, does-not-apply
files:
- data_file: bids-examples/micr_SPIM/sub-01/micr/sub-01_sample-A_stain-LFB_chunk-03_SPIM.ome.tif
- sidecars:
- bids-examples/micr_SPIM/sub-01/micr/sub-01_sample-A_stain-LFB_chunk-03_SPIM.json
- rule: rules.checks.micr.PixelSizeInconsistent
does: pass # fail, does-not-apply
context:
sidecar:
PixelSize: [1, 1, 1]
PixelSizeUnit: "mm"
ome:
PhysicalSizeX: 1.0
PhysicalSizeY: 1.0
PhysicalSizeZ: 1.0
PhysicalSizeXUnit: mm
PhysicalSizeYUnit: mm
PhysicalSizeZUnit: mm
- rule: rules.files.raw.nirs.nirs
does: pass
context:
path: sub-01/nirs/sub-01_task-rest_nirs.snirf
- rule: rules.files.raw.nirs.nirs
does: fail
context:
path: sub-01/nirs/sub-01_task-rest_eeg.snirf
- rule: rules.files.raw.nirs.nirs
passes:
- context: {path: ...}
- context: {path: ...}
fails:
- context: {path: ...}
- context: {path: ...}
doesnotapply:
- context: {path: ...}
- context: {path: ...}
- rule: rules.sidecars.anat.TaskMetadata
does: pass
files:
- data: ...
- sidecars: [...]