Skip to content

Commit c3fcc29

Browse files
committed
add parse server matrix
1 parent 2b21b55 commit c3fcc29

File tree

7 files changed

+37
-5
lines changed

7 files changed

+37
-5
lines changed

.github/workflows/ci.yml

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,21 +27,35 @@ jobs:
2727
include:
2828
- name: Node.js 18
2929
NODE_VERSION: 18.20.4
30+
PARSE_SERVER_VERSION: 7
3031
- name: Node.js 20
3132
NODE_VERSION: 20.15.1
33+
PARSE_SERVER_VERSION: 7
3234
- name: Node.js 22
3335
NODE_VERSION: 22.4.1
36+
PARSE_SERVER_VERSION: 7
37+
- name: Parse Server 6
38+
NODE_VERSION: 16
39+
PARSE_SERVER_VERSION: 6
40+
- name: Parse Server 5
41+
NODE_VERSION: 14
42+
PARSE_SERVER_VERSION: 5
3443
fail-fast: false
3544
name: ${{ matrix.name }}
3645
timeout-minutes: 15
3746
runs-on: ubuntu-latest
47+
env:
48+
NODE_VERSION: ${{ matrix.NODE_VERSION }}
49+
PARSE_SERVER_VERSION: ${{ matrix.PARSE_SERVER_VERSION }}
3850
steps:
3951
- uses: actions/checkout@v4
4052
- name: Use Node.js ${{ matrix.NODE_VERSION }}
4153
uses: actions/setup-node@v4
4254
with:
4355
node-version: ${{ matrix.NODE_VERSION }}
4456
cache: npm
57+
- name: Install Parse Server ${{ matrix.PARSE_SERVER_VERSION }}
58+
run: npm i -DE parse-server@${{ matrix.PARSE_SERVER_VERSION }}
4559
- name: Install dependencies
4660
run: npm ci
4761
- name: Run tests

package-lock.json

Lines changed: 2 additions & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,8 @@
3939
"parse": "3.3.1",
4040
"parse-server": "7.3.0",
4141
"prettier": "3.3.3",
42-
"semantic-release": "17.4.6"
42+
"semantic-release": "17.4.6",
43+
"semver": "7.6.3"
4344
},
4445
"scripts": {
4546
"lint": "eslint --cache ./",

spec/.eslintrc.json

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,11 @@
44
},
55
"globals": {
66
"Parse": true,
7-
"reconfigureServer": true
7+
"reconfigureServer": true,
8+
"it_only_parse_server_version": true,
9+
"fit_only_parse_server_version": true,
10+
"describe_only_parse_server_version": true,
11+
"fdescribe_only_parse_server_version": true
812
},
913
"rules": {
1014
"no-console": [0],

spec/integration.spec.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ const { httpRequest } = require('./support/request');
33
const fileName = 'file.txt';
44
const fileData = 'hello world';
55

6-
describe('Parse Server 7 integration test', () => {
6+
describe_only_parse_server_version('<=7')('Parse Server <=7 integration test', () => {
77
it('stores a file', async () => {
88
const base64 = Buffer.from(fileData).toString('base64');
99
const file = new Parse.File(fileName, { base64 });

spec/support/jasmine.js

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
const semver = require('semver');
2+
3+
const satisfiesParseServerVersion = version => {
4+
const envVersion = process.env.PARSE_SERVER_VERSION;
5+
return !envVersion || semver.satisfies(envVersion, version);
6+
}
7+
8+
global.it_only_parse_server_version = version => satisfiesParseServerVersion(version) ? it : xit;
9+
global.fit_only_parse_server_version = version => satisfiesParseServerVersion(version) ? fit : xit;
10+
global.describe_only_parse_server_version = version => satisfiesParseServerVersion(version) ? describe : xdescribe;
11+
global.fdescribe_only_parse_server_version = version => satisfiesParseServerVersion(version) ? fdescribe : xdescribe;

spec/support/jasmine.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,8 @@
44
"**/*[sS]pec.js"
55
],
66
"helpers": [
7-
"support/helper.js"
7+
"support/helper.js",
8+
"support/jasmine.js"
89
],
910
"random": true
1011
}

0 commit comments

Comments
 (0)