Skip to content

Commit

Permalink
Update checkpoint event test to use async/await instead of callbacks
Browse files Browse the repository at this point in the history
Co-Authored-By: James Coglan <9265+jcoglan@users.noreply.github.com>
  • Loading branch information
AlbaHerrerias and jcoglan committed Aug 3, 2021
1 parent 387cb38 commit 674048a
Showing 1 changed file with 23 additions and 26 deletions.
49 changes: 23 additions & 26 deletions tests/integration/test.replication_events.js
Expand Up @@ -401,39 +401,36 @@ adapters.forEach(function (adapters) {
// Note: Uppercase 'Unauthorized' response
describe('#5607 handle uppercase third-party error responses', replication401TestFunction('Unauthorized'));

it('Test checkpoint events', (done) => {
it('Test checkpoint events', async () => {
const docs = {
docs: [
{_id: '0', integer: 0, string: '0'},
{_id: '1', integer: 1, string: '1'},
{_id: '2', integer: 2, string: '2'},
],
};
let remote = new PouchDB(dbs.remote);
let checkpointEvents = [];

remote.bulkDocs(docs, {}, () => {
let replication = PouchDB.replicate(dbs.remote, dbs.name, {}, () => {
checkpointEvents[0]['pending_batch'].should.equal(1);
checkpointEvents[1]['pending_batch'].should.equal(2);
checkpointEvents[2]['pending_batch'].should.equal(3);
checkpointEvents[3]['start_next_batch'].should.equal(3);
checkpointEvents[4]['revs_diff'].should.have.property('id');
checkpointEvents[4]['revs_diff']['id'].should.equal('0');
checkpointEvents[4]['revs_diff']['seq'].should.equal(1);
checkpointEvents[5]['revs_diff'].should.have.property('changes');
checkpointEvents[5]['revs_diff']['id'].should.equal('1');
checkpointEvents[5]['revs_diff']['seq'].should.equal(2);
checkpointEvents[6]['revs_diff'].should.have.property('changes');
checkpointEvents[6]['revs_diff']['id'].should.equal('2');
checkpointEvents[6]['revs_diff']['seq'].should.equal(3);
checkpointEvents[7]['checkpoint'].should.equal(3);

done();
});

replication.on('checkpoint', result => checkpointEvents.push(result));
});
const remote = new PouchDB(dbs.remote);
const checkpointEvents = [];

await remote.bulkDocs(docs, {});
const replication = PouchDB.replicate(dbs.remote, dbs.name, {});
replication.on('checkpoint', result => checkpointEvents.push(result));
await replication;

checkpointEvents[0]['pending_batch'].should.equal(1);
checkpointEvents[1]['pending_batch'].should.equal(2);
checkpointEvents[2]['pending_batch'].should.equal(3);
checkpointEvents[3]['start_next_batch'].should.equal(3);
checkpointEvents[4]['revs_diff'].should.have.property('id');
checkpointEvents[4]['revs_diff']['id'].should.equal('0');
checkpointEvents[4]['revs_diff']['seq'].should.equal(1);
checkpointEvents[5]['revs_diff'].should.have.property('changes');
checkpointEvents[5]['revs_diff']['id'].should.equal('1');
checkpointEvents[5]['revs_diff']['seq'].should.equal(2);
checkpointEvents[6]['revs_diff'].should.have.property('changes');
checkpointEvents[6]['revs_diff']['id'].should.equal('2');
checkpointEvents[6]['revs_diff']['seq'].should.equal(3);
checkpointEvents[7]['checkpoint'].should.equal(3);
});
});
});

0 comments on commit 674048a

Please sign in to comment.