diff --git a/bids-validator/src/issues/list.ts b/bids-validator/src/issues/list.ts index 0f3336094..779a7cdef 100644 --- a/bids-validator/src/issues/list.ts +++ b/bids-validator/src/issues/list.ts @@ -162,6 +162,20 @@ export const bidsIssues: IssueDefinitionRecord = { severity: 'error', reason: 'A json sidecar file was found without a corresponding data file', }, + BLACKLISTED_MODALITY: { + severity: 'error', + reason: 'The modality in this file is blacklisted through validator configuration.', + }, + CITATION_CFF_VALIDATION_ERROR: { + severity: 'error', + reason: + "The file does not pass validation using the citation.cff standard's schema." + + 'https://github.com/citation-file-format/citation-file-format/blob/main/schema-guide.md' + }, + FILE_READ: { + severity: 'error', + reason: 'We were unable to read this file.' + } } const hedIssues: IssueDefinitionRecord = { @@ -191,10 +205,6 @@ const hedIssues: IssueDefinitionRecord = { reason: "You should define 'HEDVersion' for this file. If you don't provide this information, the HED validation will use the latest version available.", }, - BLACKLISTED_MODALITY: { - severity: 'error', - reason: 'The modality in this file is blacklisted through validator configuration.', - }, } export const hedOldToNewLookup: Record> = { diff --git a/bids-validator/src/validators/citation.test.ts b/bids-validator/src/validators/citation.test.ts index eea82b51d..7ec959e50 100644 --- a/bids-validator/src/validators/citation.test.ts +++ b/bids-validator/src/validators/citation.test.ts @@ -20,6 +20,6 @@ Deno.test('citation validation', async (t) => { const file = new BIDSFileDeno('tests/data/citation', 'bad.cff') tree.files[0].text = () => file.text() await citationValidate({} as GenericSchema, dsContext) - assert(dsContext.issues.size === 1) + assert(dsContext.issues.get({ code: 'CITATION_CFF_VALIDATION_ERROR' }).length === 1) }) }) diff --git a/bids-validator/src/validators/citation.ts b/bids-validator/src/validators/citation.ts index 94c891e35..905ef80ef 100644 --- a/bids-validator/src/validators/citation.ts +++ b/bids-validator/src/validators/citation.ts @@ -18,7 +18,11 @@ export async function citationValidate( try { citation = parse(await citationFile.text()) } catch (error) { - throw error + dsContext.issues.add({ + code: 'FILE_READ', + issueMessage: `Error from attempted read of file:\n${error}`, + location: citationFilename, + }) return } const validate = compile(citationSchema)