Skip to content

Commit 7a05446

Browse files
authored
ci: add nodejs v18 - v24 to test matrix (#127)
1 parent 6dfaf49 commit 7a05446

File tree

2 files changed

+64
-4
lines changed

2 files changed

+64
-4
lines changed

.github/workflows/ci.yml

Lines changed: 35 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ jobs:
1414
contents: read # for actions/checkout to fetch code
1515
runs-on: ubuntu-latest
1616
strategy:
17+
fail-fast: false
1718
matrix:
1819
name:
1920
- Node.js 0.8
@@ -36,6 +37,13 @@ jobs:
3637
- Node.js 15.x
3738
- Node.js 16.x
3839
- Node.js 17.x
40+
- Node.js 18.x
41+
- Node.js 19.x
42+
- Node.js 20.x
43+
- Node.js 21.x
44+
- Node.js 22.x
45+
- Node.js 23.x
46+
- Node.js 24.x
3947

4048
include:
4149
- name: Node.js 0.8
@@ -112,6 +120,27 @@ jobs:
112120

113121
- name: Node.js 17.x
114122
node-version: "17.2"
123+
124+
- name: Node.js 18.x
125+
node-version: "18"
126+
127+
- name: Node.js 19.x
128+
node-version: "19"
129+
130+
- name: Node.js 20.x
131+
node-version: "20"
132+
133+
- name: Node.js 21.x
134+
node-version: "21"
135+
136+
- name: Node.js 22.x
137+
node-version: "22"
138+
139+
- name: Node.js 23.x
140+
node-version: "23"
141+
142+
- name: Node.js 24.x
143+
node-version: "24"
115144

116145
steps:
117146
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
@@ -129,7 +158,12 @@ jobs:
129158
dirname "$(nvm which ${{ matrix.node-version }})" >> "$GITHUB_PATH"
130159
131160
- name: Configure npm
132-
run: npm config set shrinkwrap false
161+
run: |
162+
if [[ "$(npm config get package-lock)" == "true" ]]; then
163+
npm config set package-lock false
164+
else
165+
npm config set shrinkwrap false
166+
fi
133167
134168
- name: Remove npm module(s) ${{ matrix.npm-rm }}
135169
run: npm rm --silent --save-dev ${{ matrix.npm-rm }}

test/test.js

Lines changed: 29 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,29 @@ var util = require('util')
66

77
var createError = require('..')
88

9+
var isError = typeof Error.isError === 'function'
10+
? Error.isError
11+
// eslint-disable-next-line node/no-deprecated-api
12+
: typeof util.isError === 'function'
13+
// eslint-disable-next-line node/no-deprecated-api
14+
? util.isError
15+
// Fallback for Node.js v23: util.isError was removed in Node.js v23 (EOL), and Error.isError was introduced in Node.js v24
16+
: function (err) {
17+
return err instanceof Error
18+
}
19+
20+
var itErrorIsError = typeof Error.isError === 'function'
21+
? it
22+
: it.skip
23+
24+
// eslint-disable-next-line node/no-deprecated-api
25+
var itUtilIsError = typeof util.isError === 'function'
26+
? it
27+
: it.skip
28+
929
describe('createError(status)', function () {
1030
it('should create error object', function () {
11-
assert.ok(util.isError(createError(500))) // eslint-disable-line node/no-deprecated-api
31+
assert.ok(isError(createError(500)))
1232
})
1333

1434
describe('Extending Existing Errors with HTTP Properties', function () {
@@ -126,7 +146,7 @@ describe('createError(status, message)', function () {
126146
})
127147

128148
it('should create error object', function () {
129-
assert.ok(util.isError(this.error)) // eslint-disable-line node/no-deprecated-api
149+
assert.ok(isError(this.error))
130150
})
131151

132152
it('should have "message" property with message', function () {
@@ -419,11 +439,17 @@ describe('HTTP Errors', function () {
419439
assert((new createError['500']()) instanceof createError.HttpError)
420440
})
421441

422-
it('should support util.isError()', function () {
442+
itUtilIsError('should support util.isError()', function () {
423443
/* eslint-disable node/no-deprecated-api */
424444
assert(util.isError(createError(404)))
425445
assert(util.isError(new createError['404']()))
426446
assert(util.isError(new createError['500']()))
427447
/* eslint-enable node/no-deprecated-api */
428448
})
449+
450+
itErrorIsError('should support Error.isError()', function () {
451+
assert(Error.isError(createError(404)))
452+
assert(Error.isError(new createError['404']()))
453+
assert(Error.isError(new createError['500']()))
454+
})
429455
})

0 commit comments

Comments
 (0)