Skip to content

Commit c29b079

Browse files
committed
MLE-24825 Convert basic and complete dm removeAllUris tests to async/await.
1 parent 5e8b43f commit c29b079

File tree

2 files changed

+183
-200
lines changed

2 files changed

+183
-200
lines changed

test-basic/documents-data-movement-removeAllUris.js

Lines changed: 87 additions & 98 deletions
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,7 @@ let removeStream = new Stream.PassThrough({objectMode: true});
1515
let uris = [];
1616

1717
describe('data movement removeAllUris', function() {
18-
this.timeout(15000);
19-
beforeEach(function (done) {
18+
beforeEach(async function() {
2019
let readable = new Stream.Readable({objectMode: true});
2120
removeStream = new Stream.PassThrough({objectMode: true});
2221
uris = [];
@@ -33,142 +32,132 @@ describe('data movement removeAllUris', function() {
3332
readable.push(null);
3433
removeStream.push(null);
3534

36-
dbWriter.documents.writeAll(readable,{
37-
onCompletion: ((summary) => {
38-
done();
39-
})
35+
await new Promise((resolve) => {
36+
dbWriter.documents.writeAll(readable, {
37+
onCompletion: resolve
38+
});
4039
});
4140
});
4241

43-
it('should removeAllUris documents with onCompletion, concurrentRequests options', done => {
44-
dbWriter.documents.removeAllUris(removeStream,{
45-
concurrentRequests : {multipleOf:'hosts', multiplier:4},
46-
onCompletion: ((summary) => {
47-
try {
48-
summary.docsRemovedSuccessfully.should.be.equal(100);
49-
summary.docsFailedToBeRemoved.should.be.equal(0);
50-
summary.timeElapsed.should.be.greaterThanOrEqual(0);
51-
verifyDocs(done);
52-
} catch(err) {
53-
done(err);
54-
}
55-
})
42+
it('should removeAllUris documents with onCompletion, concurrentRequests options', async () => {
43+
const summary = await new Promise((resolve) => {
44+
dbWriter.documents.removeAllUris(removeStream, {
45+
concurrentRequests: {multipleOf: 'hosts', multiplier: 4},
46+
onCompletion: resolve
47+
});
5648
});
49+
summary.docsRemovedSuccessfully.should.be.equal(100);
50+
summary.docsFailedToBeRemoved.should.be.equal(0);
51+
summary.timeElapsed.should.be.greaterThanOrEqual(0);
52+
await verifyDocs();
5753
});
5854

59-
it('should removeAllUris documents with onBatchSuccess and batchSize options', done => {
60-
61-
dbWriter.documents.removeAllUris(removeStream, {
62-
onBatchSuccess: (function(progress, documents) {
63-
progress.docsRemovedSuccessfully.should.be.greaterThanOrEqual(10);
64-
progress.docsFailedToBeRemoved.should.be.equal(0);
65-
progress.timeElapsed.should.be.greaterThanOrEqual(0);
66-
documents.length.should.equal(10);
67-
}),
68-
batchSize:10,
69-
onCompletion: ((summary) => {
70-
summary.docsRemovedSuccessfully.should.be.equal(100);
71-
summary.docsFailedToBeRemoved.should.be.equal(0);
72-
summary.timeElapsed.should.be.greaterThanOrEqual(0);
73-
verifyDocs(done);
74-
})
55+
it('should removeAllUris documents with onBatchSuccess and batchSize options', async () => {
56+
const summary = await new Promise((resolve, reject) => {
57+
dbWriter.documents.removeAllUris(removeStream, {
58+
onBatchSuccess: (function (progress, documents) {
59+
try {
60+
progress.docsRemovedSuccessfully.should.be.greaterThanOrEqual(10);
61+
progress.docsFailedToBeRemoved.should.be.equal(0);
62+
progress.timeElapsed.should.be.greaterThanOrEqual(0);
63+
documents.length.should.equal(10);
64+
} catch (err) {
65+
reject(err);
66+
}
67+
}),
68+
batchSize: 10,
69+
onCompletion: resolve
70+
});
7571
});
72+
summary.docsRemovedSuccessfully.should.be.equal(100);
73+
summary.docsFailedToBeRemoved.should.be.equal(0);
74+
summary.timeElapsed.should.be.greaterThanOrEqual(0);
75+
await verifyDocs();
7676
});
7777

78-
it('should throw error with invalid batchSize and inputKind as array option', function(done){
78+
it('should throw error with invalid batchSize and inputKind as array option', async function(){
7979
try{
80-
dbWriter.documents.removeAllUris(removeStream,{
80+
await dbWriter.documents.removeAllUris(removeStream,{
8181
batchSize:10,
8282
inputKind:'array'
8383
});
8484
} catch(err){
8585
err.toString().should.equal('Error: batchSize not expected when inputKind is array.');
86-
dbWriter.documents.remove(uris)
87-
.result(function(response) {done();})
88-
.catch(error => done(error));
86+
await dbWriter.documents.remove(uris).result();
8987
}
9088
});
9189

92-
it('should removeAllUris documents with inputKind as array', done => {
93-
90+
it('should removeAllUris documents with inputKind as array', async () => {
9491
removeStream = new Stream.Readable({objectMode: true});
95-
for(let i=0; i+10<=uris.length; i=i+10){
96-
removeStream.push(uris.slice(i,i+10));
92+
for (let i = 0; i + 10 <= uris.length; i = i + 10) {
93+
removeStream.push(uris.slice(i, i + 10));
9794
}
9895
removeStream.push(null);
9996

100-
dbWriter.documents.removeAllUris(removeStream,{
101-
inputKind:'aRRaY',
102-
onBatchSuccess: (function(progress, documents) {
103-
try{
104-
documents.length.should.equal(10);
105-
} catch(error){
106-
done(error);
107-
}
108-
}),
109-
onCompletion: ((summary) => {
110-
try{
111-
summary.docsRemovedSuccessfully.should.be.equal(100);
112-
summary.docsFailedToBeRemoved.should.be.equal(0);
113-
summary.timeElapsed.should.be.greaterThanOrEqual(0);
114-
verifyDocs(done);
115-
} catch(error){
116-
done(error);
117-
}
118-
})
97+
await new Promise((resolve, reject) => {
98+
dbWriter.documents.removeAllUris(removeStream, {
99+
inputKind: 'aRRaY',
100+
onBatchSuccess: (function (progress, documents) {
101+
try {
102+
documents.length.should.equal(10);
103+
} catch (error) {
104+
reject(error);
105+
}
106+
}),
107+
onCompletion: ((summary) => {
108+
try {
109+
summary.docsRemovedSuccessfully.should.be.equal(100);
110+
summary.docsFailedToBeRemoved.should.be.equal(0);
111+
summary.timeElapsed.should.be.greaterThanOrEqual(0);
112+
resolve(summary);
113+
} catch (error) {
114+
reject(error);
115+
}
116+
})
117+
});
119118
});
119+
await verifyDocs();
120120
});
121121

122-
it('should throw error with invalid concurrentRequests option', function(done){
122+
it('should throw error with invalid concurrentRequests option', async function(){
123123
try{
124-
dbWriter.documents.removeAllUris(removeStream,{
124+
await dbWriter.documents.removeAllUris(removeStream,{
125125
concurrentRequests: {multipleOf: 'invalid', multiplier: 4}
126126
});
127127
} catch(err){
128128
err.toString().should.equal('Error: Invalid value for multipleOf. Value must be forests or hosts.');
129-
dbWriter.documents.remove(uris)
130-
.result(function(response) {done();})
131-
.catch(error => done(error));
129+
await dbWriter.documents.remove(uris).result();
132130
}
133131
});
134132

135-
it('should queryToRemoveAll documents with onCompletion option', function(done){
136-
137-
dbWriter.documents.queryToRemoveAll(query,{
138-
onCompletion:((summary) => {
139-
summary.docsRemovedSuccessfully.should.be.equal(100);
140-
summary.docsFailedToBeRemoved.should.be.equal(0);
141-
summary.timeElapsed.should.be.greaterThanOrEqual(0);
142-
verifyDocs(done);
143-
})
133+
it('should queryToRemoveAll documents with onCompletion option', async function(){
134+
const summary = await new Promise((resolve) => {
135+
dbWriter.documents.queryToRemoveAll(query, {
136+
onCompletion: resolve
137+
});
144138
});
139+
summary.docsRemovedSuccessfully.should.be.equal(100);
140+
summary.docsFailedToBeRemoved.should.be.equal(0);
141+
summary.timeElapsed.should.be.greaterThanOrEqual(0);
142+
await verifyDocs();
145143
});
146144

147-
it('should queryToRemoveAll documents with onCompletion, concurrentRequestsas',
148-
done => {
149-
145+
it('should queryToRemoveAll documents with onCompletion, concurrentRequestsas', async () => {
146+
const summary = await new Promise((resolve) => {
150147
dbWriter.documents.queryToRemoveAll(query, {
151-
concurrentRequests : {multipleOf:'hosts', multiplier:4},
152-
onCompletion: ((summary) => {
153-
try {
154-
summary.docsRemovedSuccessfully.should.be.equal(100);
155-
summary.docsFailedToBeRemoved.should.be.equal(0);
156-
summary.timeElapsed.should.be.greaterThanOrEqual(0);
157-
verifyDocs(done);
158-
} catch(err) {
159-
done(err);
160-
}
161-
})
148+
concurrentRequests: {multipleOf: 'hosts', multiplier: 4},
149+
onCompletion: resolve
162150
});
163151
});
152+
summary.docsRemovedSuccessfully.should.be.equal(100);
153+
summary.docsFailedToBeRemoved.should.be.equal(0);
154+
summary.timeElapsed.should.be.greaterThanOrEqual(0);
155+
await verifyDocs();
156+
});
164157

165158
});
166159

167-
function verifyDocs(done){
168-
dbWriter.documents.read(uris)
169-
.result(function (documents) {
170-
documents.length.should.equal(0);
171-
})
172-
.then(()=> done())
173-
.catch(err=> done(err));
160+
async function verifyDocs(){
161+
const documents = await dbWriter.documents.read(uris).result();
162+
documents.length.should.equal(0);
174163
}

0 commit comments

Comments
 (0)