Skip to content

Commit dd62bb7

Browse files
author
zhubo
committed
fix: update error message for checkDevEngines
1 parent bde8d4f commit dd62bb7

File tree

2 files changed

+13
-13
lines changed

2 files changed

+13
-13
lines changed

lib/dev-engines.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -90,14 +90,14 @@ function checkDependency (wanted, current, opts) {
9090
/** checks devEngines package property and returns array of warnings / errors */
9191
function checkDevEngines (wanted, current = {}, opts = {}) {
9292
if ((typeof wanted !== 'object' || wanted === null) || Array.isArray(wanted)) {
93-
throw new Error(`Invalid non-object value for devEngines`)
93+
throw new Error(`Invalid non-object value for "devEngines"`)
9494
}
9595

9696
const errors = []
9797

9898
for (const engine of Object.keys(wanted)) {
9999
if (!recognizedEngines.includes(engine)) {
100-
throw new Error(`Invalid property "${engine}"`)
100+
throw new Error(`Invalid property "devEngines.${engine}"`)
101101
}
102102
const dependencyAsAuthored = wanted[engine]
103103
const dependencies = [dependencyAsAuthored].flat()
@@ -125,7 +125,7 @@ function checkDevEngines (wanted, current = {}, opts = {}) {
125125
onFail = 'error'
126126
}
127127

128-
const err = Object.assign(new Error(`Invalid engine "${engine}"`), {
128+
const err = Object.assign(new Error(`Invalid devEngines.${engine}`), {
129129
errors: depErrors,
130130
engine,
131131
isWarn: onFail === 'warn',

test/check-dev-engines.js

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ t.test('unrecognized property', async t => {
1212
const current = { name: `alpha` }
1313
t.throws(
1414
() => checkDevEngines({ unrecognized: wanted }, { os: current }),
15-
new Error('Invalid property "unrecognized"')
15+
new Error('Invalid property "devEngines.unrecognized"')
1616
)
1717
})
1818

@@ -24,7 +24,7 @@ t.test('invalid name', async t => {
2424
const wanted = { name: `alpha`, onFail: 'download' }
2525
const current = { name: `beta` }
2626
t.same(checkDevEngines({ os: wanted }, { os: current }), [
27-
Object.assign(new Error(`Invalid engine "os"`), {
27+
Object.assign(new Error(`Invalid devEngines.os`), {
2828
errors: [
2929
new Error(`Invalid name "alpha" does not match "beta" for "os"`),
3030
],
@@ -52,7 +52,7 @@ t.test('tests non-object', async t => {
5252
version: '14',
5353
},
5454
}),
55-
new Error(`Invalid non-object value for devEngines`)
55+
new Error(`Invalid non-object value for "devEngines"`)
5656
)
5757
})
5858

@@ -153,7 +153,7 @@ t.test('tests all the right fields', async t => {
153153
const wanted = { name: `test-name`, version: 'test-version-wanted' }
154154
const current = { name: `test-name`, version: 'test-version-current' }
155155
t.same(checkDevEngines({ [env]: wanted }, { [env]: current }), [
156-
Object.assign(new Error(`Invalid engine "${env}"`), {
156+
Object.assign(new Error(`Invalid devEngines.${env}`), {
157157
errors: [
158158
// eslint-disable-next-line max-len
159159
new Error(`Invalid version "test-version-wanted" does not match "test-version-current" for "${env}"`),
@@ -175,7 +175,7 @@ t.test('tests all the right fields', async t => {
175175
const wanted = { name: `test-name`, version: '^1.0.0' }
176176
const current = { name: `test-name`, version: '2.0.0' }
177177
t.same(checkDevEngines({ [env]: wanted }, { [env]: current }), [
178-
Object.assign(new Error(`Invalid engine "${env}"`), {
178+
Object.assign(new Error(`Invalid devEngines.${env}`), {
179179
errors: [
180180
// eslint-disable-next-line max-len
181181
new Error(`Invalid semver version "^1.0.0" does not match "2.0.0" for "${env}"`),
@@ -200,7 +200,7 @@ t.test('tests all the right fields', async t => {
200200
]
201201
const current = { name: `test-name`, version: 'test-version-three' }
202202
t.same(checkDevEngines({ [env]: wanted }, { [env]: current }), [
203-
Object.assign(new Error(`Invalid engine "${env}"`), {
203+
Object.assign(new Error(`Invalid devEngines.${env}`), {
204204
errors: [
205205
// eslint-disable-next-line max-len
206206
new Error(`Invalid version "test-version-one" does not match "test-version-three" for "${env}"`),
@@ -238,7 +238,7 @@ t.test('tests all the right fields', async t => {
238238
const wanted = { name: `alpha` }
239239
const current = { name: `beta` }
240240
t.same(checkDevEngines({ [env]: wanted }, { [env]: current }), [
241-
Object.assign(new Error(`Invalid engine "${env}"`), {
241+
Object.assign(new Error(`Invalid devEngines.${env}`), {
242242
errors: [
243243
new Error(`Invalid name "alpha" does not match "beta" for "${env}"`),
244244
],
@@ -343,7 +343,7 @@ t.test('spec 2', async t => {
343343
runtime: { name: 'node', version: '20.0.0' },
344344
packageManager: { name: 'yarn', version: '3.2.3' },
345345
}), [
346-
Object.assign(new Error(`Invalid engine "os"`), {
346+
Object.assign(new Error(`Invalid devEngines.os`), {
347347
errors: [
348348
// eslint-disable-next-line max-len
349349
new Error(`Invalid semver version ">= 23.0.0" does not match "10.0.0" for "os"`),
@@ -366,7 +366,7 @@ t.test('spec 2', async t => {
366366
runtime: { name: 'nondescript', version: '20.0.0' },
367367
packageManager: { name: 'yarn', version: '3.2.3' },
368368
}), [
369-
Object.assign(new Error(`Invalid engine "runtime"`), {
369+
Object.assign(new Error(`Invalid devEngines.runtime`), {
370370
errors: [
371371
// eslint-disable-next-line max-len
372372
new Error(`Invalid name "bun" does not match "nondescript" for "runtime"`),
@@ -403,7 +403,7 @@ t.test('empty array along side error', async t => {
403403
}, {
404404
cpu: { name: 'arm' },
405405
runtime: { name: 'node', version: '20.0.0' },
406-
}), [Object.assign(new Error(`Invalid engine "runtime"`), {
406+
}), [Object.assign(new Error(`Invalid devEngines.runtime`), {
407407
errors: [
408408
new Error(`Invalid name "bun" does not match "node" for "runtime"`),
409409
],

0 commit comments

Comments
 (0)