Silences warnings from mongodb client (#5025)

* Silences warnings from mongodb client

* Update count, delete and finds to recommended implementations

* With new parser, readPref will be null by default

* Update flaky specs wih async/await style

* Adds gridstore adapter spec

* Use GridFSBucketStorage adapter
This commit is contained in:
Florent Vilmart
2018-09-04 16:15:09 -04:00
committed by GitHub
parent d83a0b6808
commit a42101531a
14 changed files with 265 additions and 109 deletions

View File

@@ -14,33 +14,36 @@ describe_only_db('mongo')('Read preference option', () => {
const obj1 = new Parse.Object('MyObject');
obj1.set('boolKey', true);
Parse.Object.saveAll([obj0, obj1]).then(() => {
spyOn(databaseAdapter.database.serverConfig, 'cursor').and.callThrough();
Parse.Object.saveAll([obj0, obj1])
.then(() => {
spyOn(
databaseAdapter.database.serverConfig,
'cursor'
).and.callThrough();
const query = new Parse.Query('MyObject');
query.equalTo('boolKey', false);
const query = new Parse.Query('MyObject');
query.equalTo('boolKey', false);
query.find().then(results => {
expect(results.length).toBe(1);
expect(results[0].get('boolKey')).toBe(false);
return query.find().then(results => {
expect(results.length).toBe(1);
expect(results[0].get('boolKey')).toBe(false);
let myObjectReadPreference = null;
databaseAdapter.database.serverConfig.cursor.calls
.all()
.forEach(call => {
if (call.args[0].indexOf('MyObject') >= 0) {
myObjectReadPreference = true;
expect(call.args[2].readPreference.preference).toBe(
ReadPreference.PRIMARY
);
}
});
let myObjectReadPreference = null;
databaseAdapter.database.serverConfig.cursor.calls
.all()
.forEach(call => {
if (call.args[0].indexOf('MyObject') >= 0) {
myObjectReadPreference = true;
expect(call.args[2].readPreference).toBe(null);
}
});
expect(myObjectReadPreference).toBe(true);
expect(myObjectReadPreference).toBe(true);
done();
});
});
done();
});
})
.catch(done.fail);
});
it('should preserve the read preference set (#4831)', async () => {
@@ -453,7 +456,7 @@ describe_only_db('mongo')('Read preference option', () => {
obj1.set('boolKey', true);
Parse.Object.saveAll([obj0, obj1]).then(() => {
spyOn(databaseAdapter.database.serverConfig, 'command').and.callThrough();
spyOn(databaseAdapter.database.serverConfig, 'cursor').and.callThrough();
Parse.Cloud.beforeFind('MyObject', req => {
req.readPreference = 'SECONDARY';
@@ -466,10 +469,12 @@ describe_only_db('mongo')('Read preference option', () => {
expect(result).toBe(1);
let myObjectReadPreference = null;
databaseAdapter.database.serverConfig.command.calls
databaseAdapter.database.serverConfig.cursor.calls
.all()
.forEach(call => {
myObjectReadPreference = call.args[2].readPreference.preference;
if (call.args[0].indexOf('MyObject') >= 0) {
myObjectReadPreference = call.args[2].readPreference.preference;
}
});
expect(myObjectReadPreference).toEqual(ReadPreference.SECONDARY);
@@ -523,15 +528,11 @@ describe_only_db('mongo')('Read preference option', () => {
.forEach(call => {
if (call.args[0].indexOf('MyObject0') >= 0) {
myObjectReadPreference0 = true;
expect(call.args[2].readPreference.preference).toBe(
ReadPreference.PRIMARY
);
expect(call.args[2].readPreference).toBe(null);
}
if (call.args[0].indexOf('MyObject1') >= 0) {
myObjectReadPreference1 = true;
expect(call.args[2].readPreference.preference).toBe(
ReadPreference.PRIMARY
);
expect(call.args[2].readPreference).toBe(null);
}
if (call.args[0].indexOf('MyObject2') >= 0) {
myObjectReadPreference2 = call.args[2].readPreference.preference;
@@ -652,15 +653,11 @@ describe_only_db('mongo')('Read preference option', () => {
.forEach(call => {
if (call.args[0].indexOf('MyObject0') >= 0) {
myObjectReadPreference0 = true;
expect(call.args[2].readPreference.preference).toBe(
ReadPreference.PRIMARY
);
expect(call.args[2].readPreference).toBe(null);
}
if (call.args[0].indexOf('MyObject1') >= 0) {
myObjectReadPreference1 = true;
expect(call.args[2].readPreference.preference).toBe(
ReadPreference.PRIMARY
);
expect(call.args[2].readPreference).toBe(null);
}
if (call.args[0].indexOf('MyObject2') >= 0) {
myObjectReadPreference2 = call.args[2].readPreference.preference;