* Removes need to use babel-register - Adds watch to watch changes when running the test to regenerate - Tests are now pure node 8 * Adds timing to helper.js * Update contribution guide * Adds inline sourcemaps generation to restore coverage * nits
75 lines
2.2 KiB
JavaScript
75 lines
2.2 KiB
JavaScript
const Parse = require('parse/node').Parse;
|
|
const PostgresStorageAdapter = require('../lib/Adapters/Storage/Postgres/PostgresStorageAdapter').default;
|
|
const postgresURI = 'postgres://localhost:5432/parse_server_postgres_adapter_test_database';
|
|
const ParseServer = require("../lib/index");
|
|
const express = require('express');
|
|
//public schema
|
|
const databaseOptions1 = {
|
|
initOptions: {
|
|
schema: 'public'
|
|
}
|
|
};
|
|
|
|
//not exists schema
|
|
const databaseOptions2 = {
|
|
initOptions: {
|
|
schema: 'not_exists_schema'
|
|
}
|
|
};
|
|
|
|
const GameScore = Parse.Object.extend({
|
|
className: "GameScore"
|
|
});
|
|
|
|
function createParseServer(options) {
|
|
return new Promise((resolve, reject) => {
|
|
const parseServer = new ParseServer.default(Object.assign({},
|
|
defaultConfiguration, options, {
|
|
serverURL: "http://localhost:12666/parse",
|
|
__indexBuildCompletionCallbackForTests: promise => {
|
|
promise
|
|
.then(() => {
|
|
expect(Parse.applicationId).toEqual("test");
|
|
const app = express();
|
|
app.use('/parse', parseServer.app);
|
|
|
|
const server = app.listen(12666);
|
|
Parse.serverURL = "http://localhost:12666/parse";
|
|
resolve(server);
|
|
}, reject);
|
|
}}));
|
|
});
|
|
}
|
|
|
|
describe_only_db('postgres')('Postgres database init options', () => {
|
|
let server;
|
|
|
|
afterEach(() => {
|
|
if (server) {
|
|
server.close();
|
|
}
|
|
})
|
|
|
|
it('should create server with public schema databaseOptions', (done) => {
|
|
const adapter = new PostgresStorageAdapter({
|
|
uri: postgresURI, collectionPrefix: 'test_',
|
|
databaseOptions: databaseOptions1
|
|
})
|
|
|
|
createParseServer({ databaseAdapter: adapter }).then((newServer) => {
|
|
server = newServer;
|
|
const score = new GameScore({ "score": 1337, "playerName": "Sean Plott", "cheatMode": false });
|
|
return score.save();
|
|
}).then(done, done.fail);
|
|
});
|
|
|
|
it('should fail to create server if schema databaseOptions does not exist', (done) => {
|
|
const adapter = new PostgresStorageAdapter({
|
|
uri: postgresURI, collectionPrefix: 'test_',
|
|
databaseOptions: databaseOptions2
|
|
})
|
|
|
|
createParseServer({ databaseAdapter: adapter }).then(done.fail, () => done());
|
|
});
|
|
});
|