Skip to content

Commit 065facd

Browse files
authored
test: fix failing tests on 4.x LTS branch (#7661)
1 parent 4ac4b7f commit 065facd

File tree

6 files changed

+38
-5
lines changed

6 files changed

+38
-5
lines changed

package-lock.json

Lines changed: 9 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -84,6 +84,7 @@
8484
"form-data": "3.0.0",
8585
"husky": "4.2.5",
8686
"jasmine": "3.5.0",
87+
"jasmine-spec-reporter": "7.0.0",
8788
"jsdoc": "3.6.7",
8889
"jsdoc-babel": "0.5.0",
8990
"lint-staged": "10.2.3",

spec/ParseLiveQuery.spec.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -949,7 +949,7 @@ describe('ParseLiveQuery', function () {
949949
const response = (obj, prev) => {
950950
expect(obj.get('sessionToken')).toBeUndefined();
951951
expect(obj.sessionToken).toBeUndefined();
952-
expect(prev?.sessionToken).toBeUndefined();
952+
expect(prev && prev.sessionToken).toBeUndefined();
953953
if (prev && prev.get) {
954954
expect(prev.get('sessionToken')).toBeUndefined();
955955
}
@@ -968,7 +968,7 @@ describe('ParseLiveQuery', function () {
968968
user.set('yolo', 'bar');
969969
await user.save();
970970
await user.destroy();
971-
await new Promise(resolve => process.nextTick(resolve));
971+
await new Promise(resolve => setTimeout(resolve, 10));
972972
for (const key of events) {
973973
expect(calls[key]).toHaveBeenCalled();
974974
}

spec/ParseUser.spec.js

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3948,7 +3948,7 @@ describe('Parse.User testing', () => {
39483948
const response = (obj, prev) => {
39493949
expect(obj.get('authData')).toBeUndefined();
39503950
expect(obj.authData).toBeUndefined();
3951-
expect(prev?.authData).toBeUndefined();
3951+
expect(prev && prev.authData).toBeUndefined();
39523952
if (prev && prev.get) {
39533953
expect(prev.get('authData')).toBeUndefined();
39543954
}
@@ -3960,18 +3960,21 @@ describe('Parse.User testing', () => {
39603960
subscription.on(key, calls[key]);
39613961
}
39623962
const user = await Parse.User._logInWith('facebook');
3963-
39643963
user.set('foo', 'bar');
39653964
await user.save();
39663965
user.unset('foo');
39673966
await user.save();
39683967
user.set('yolo', 'bar');
39693968
await user.save();
39703969
await user.destroy();
3971-
await new Promise(resolve => process.nextTick(resolve));
3970+
await new Promise(resolve => setTimeout(resolve, 10));
39723971
for (const key of events) {
39733972
expect(calls[key]).toHaveBeenCalled();
39743973
}
3974+
subscription.unsubscribe();
3975+
const client = await Parse.CoreManager.getLiveQueryController().getDefaultLiveQueryClient();
3976+
client.close();
3977+
await new Promise(resolve => setTimeout(resolve, 10));
39753978
});
39763979

39773980
describe('issue #4897', () => {

spec/helper.js

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,11 @@
11
'use strict';
2+
const CurrentSpecReporter = require('./support/CurrentSpecReporter.js');
3+
const { SpecReporter } = require('jasmine-spec-reporter');
4+
25
// Sets up a Parse API server for testing.
36
jasmine.DEFAULT_TIMEOUT_INTERVAL = process.env.PARSE_SERVER_TEST_TIMEOUT || 5000;
7+
jasmine.getEnv().addReporter(new CurrentSpecReporter());
8+
jasmine.getEnv().addReporter(new SpecReporter());
49

510
global.on_db = (db, callback, elseCallback) => {
611
if (process.env.PARSE_SERVER_TEST_DB == db) {

spec/support/CurrentSpecReporter.js

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
// Sets a global variable to the current test spec
2+
// ex: global.currentSpec.description
3+
4+
global.currentSpec = null;
5+
6+
class CurrentSpecReporter {
7+
specStarted(spec) {
8+
global.currentSpec = spec;
9+
}
10+
specDone() {
11+
global.currentSpec = null;
12+
}
13+
}
14+
15+
module.exports = CurrentSpecReporter;

0 commit comments

Comments
 (0)