Add test for options being passed to MongoAdapter from DatabaseAdapter

This commit is contained in:
steven-supersolid
2016-03-11 17:08:39 +00:00
parent dbf2afc5ea
commit 6e65a8fc6f
3 changed files with 28 additions and 4 deletions

View File

@@ -0,0 +1,23 @@
'use strict';
let DatabaseAdapter = require('../src/DatabaseAdapter');
describe('DatabaseAdapter', () => {
it('options and URI are available to adapter', done => {
DatabaseAdapter.setAppDatabaseURI('optionsTest', 'mongodb://localhost:27017/optionsTest');
DatabaseAdapter.setAppDatabaseOptions('optionsTest', {foo: "bar"});
let optionsTestDatabaseConnection = DatabaseAdapter.getDatabaseConnection('optionsTest');
expect(optionsTestDatabaseConnection instanceof Object).toBe(true);
expect(optionsTestDatabaseConnection.adapter._options instanceof Object).toBe(true);
expect(optionsTestDatabaseConnection.adapter._options.foo).toBe("bar");
DatabaseAdapter.setAppDatabaseURI('noOptionsTest', 'mongodb://localhost:27017/noOptionsTest');
let noOptionsTestDatabaseConnection = DatabaseAdapter.getDatabaseConnection('noOptionsTest');
expect(noOptionsTestDatabaseConnection instanceof Object).toBe(true);
expect(noOptionsTestDatabaseConnection.adapter._options instanceof Object).toBe(false);
done();
});
});

View File

@@ -26,7 +26,7 @@ var defaultConfiguration = {
collectionPrefix: 'test_',
fileKey: 'test',
push: {
'ios': {
'ios': {
cert: 'prodCert.pem',
key: 'prodKey.pem',
production: true,
@@ -81,7 +81,7 @@ afterEach(function(done) {
Parse.User.logOut().then(() => {
return clearData();
}).then(() => {
DatabaseAdapter.clearDatabaseURIs();
DatabaseAdapter.clearDatabaseSettings();
done();
}, (error) => {
console.log('error in clearData', error);

View File

@@ -43,9 +43,10 @@ function setAppDatabaseOptions(appId: string, options: Object) {
}
//Used by tests
function clearDatabaseURIs() {
function clearDatabaseSettings() {
appDatabaseURIs = {};
dbConnections = {};
appDatabaseOptions = {};
}
function getDatabaseConnection(appId: string, collectionPrefix: string) {
@@ -69,6 +70,6 @@ module.exports = {
setDatabaseURI: setDatabaseURI,
setAppDatabaseOptions: setAppDatabaseOptions,
setAppDatabaseURI: setAppDatabaseURI,
clearDatabaseURIs: clearDatabaseURIs,
clearDatabaseSettings: clearDatabaseSettings,
defaultDatabaseURI: databaseURI
};