From 63b90e51a6ae15b039f21f42e86f47e60d81ae92 Mon Sep 17 00:00:00 2001 From: Rhys Arkins <rhys@arkins.net> Date: Mon, 16 Dec 2019 11:02:47 +0100 Subject: [PATCH] fix(config): throw config validation if invalid allowedVersions --- lib/workers/repository/process/lookup/filter.ts | 11 +++++++---- test/workers/repository/process/lookup/index.spec.js | 4 +++- 2 files changed, 10 insertions(+), 5 deletions(-) diff --git a/lib/workers/repository/process/lookup/filter.ts b/lib/workers/repository/process/lookup/filter.ts index cd6c6c01a9..641d22abb9 100644 --- a/lib/workers/repository/process/lookup/filter.ts +++ b/lib/workers/repository/process/lookup/filter.ts @@ -66,10 +66,13 @@ export function filterVersions( semver.satisfies(semver.coerce(v), allowedVersions) ); } else { - logger.warn( - { depName: config.depName }, - `Invalid allowedVersions: "${allowedVersions}"` - ); + const error = new Error('config-validation'); + error.configFile = 'config'; + error.validationError = 'Invalid `allowedVersions`'; + error.validationMessage = + 'The following allowedVersions does not parse as a valid version or range: ' + + JSON.stringify(allowedVersions); + throw error; } } diff --git a/test/workers/repository/process/lookup/index.spec.js b/test/workers/repository/process/lookup/index.spec.js index a215651fd1..7db0e55342 100644 --- a/test/workers/repository/process/lookup/index.spec.js +++ b/test/workers/repository/process/lookup/index.spec.js @@ -178,7 +178,9 @@ describe('workers/repository/process/lookup', () => { nock('https://registry.npmjs.org') .get('/q') .reply(200, qJson); - expect((await lookup.lookupUpdates(config)).updates).toHaveLength(2); + await expect(lookup.lookupUpdates(config)).rejects.toThrow( + Error('config-validation') + ); }); it('returns minor update if separate patches not configured', async () => { config.currentValue = '0.9.0'; -- GitLab