59 lines
1.9 KiB
JavaScript
59 lines
1.9 KiB
JavaScript
if (process.env.PARSE_SERVER_TEST_CACHE === 'redis') {
|
|
describe('ParseLiveQuery redis', () => {
|
|
afterEach(async () => {
|
|
const client = await Parse.CoreManager.getLiveQueryController().getDefaultLiveQueryClient();
|
|
client.close();
|
|
});
|
|
it('can connect', async () => {
|
|
await reconfigureServer({
|
|
appId: 'redis_live_query',
|
|
startLiveQueryServer: true,
|
|
liveQuery: {
|
|
classNames: ['TestObject'],
|
|
redisURL: 'redis://localhost:6379',
|
|
},
|
|
liveQueryServerOptions: {
|
|
redisURL: 'redis://localhost:6379',
|
|
},
|
|
});
|
|
const subscription = await new Parse.Query('TestObject').subscribe();
|
|
const [object] = await Promise.all([
|
|
new Parse.Object('TestObject').save(),
|
|
new Promise(resolve =>
|
|
subscription.on('create', () => {
|
|
resolve();
|
|
})
|
|
),
|
|
]);
|
|
await Promise.all([
|
|
new Promise(resolve =>
|
|
subscription.on('delete', () => {
|
|
resolve();
|
|
})
|
|
),
|
|
object.destroy(),
|
|
]);
|
|
});
|
|
|
|
it('can call connect twice', async () => {
|
|
const server = await reconfigureServer({
|
|
appId: 'redis_live_query',
|
|
startLiveQueryServer: true,
|
|
liveQuery: {
|
|
classNames: ['TestObject'],
|
|
redisURL: 'redis://localhost:6379',
|
|
},
|
|
liveQueryServerOptions: {
|
|
redisURL: 'redis://localhost:6379',
|
|
},
|
|
});
|
|
expect(server.config.liveQueryController.liveQueryPublisher.parsePublisher.isOpen).toBeTrue();
|
|
await server.config.liveQueryController.connect();
|
|
expect(server.config.liveQueryController.liveQueryPublisher.parsePublisher.isOpen).toBeTrue();
|
|
expect(server.liveQueryServer.subscriber.isOpen).toBe(true);
|
|
await server.liveQueryServer.connect();
|
|
expect(server.liveQueryServer.subscriber.isOpen).toBe(true);
|
|
});
|
|
});
|
|
}
|