| 15 | * @return {Promise} Runner state |
| 16 | */ |
| 17 | export async function startParseServer() { |
| 18 | delete config.databaseAdapter; |
| 19 | const parseServerOptions = Object.assign(config, { |
| 20 | databaseURI: 'mongodb://localhost:27017/parse-test', |
| 21 | masterKey: 'test', |
| 22 | javascriptKey: 'test', |
| 23 | appId: 'test', |
| 24 | port: 30001, |
| 25 | mountPath: '/test', |
| 26 | serverURL: `http://localhost:30001/test`, |
| 27 | logLevel: 'error', |
| 28 | silent: true, |
| 29 | allowClientClassCreation: true, |
| 30 | }); |
| 31 | const parseServer = new ParseServer(parseServerOptions); |
| 32 | await parseServer.start(); |
| 33 | |
| 34 | const app = express(); |
| 35 | app.use(parseServerOptions.mountPath, parseServer.app); |
| 36 | const httpServer = http.createServer(app); |
| 37 | await new Promise(resolve => httpServer.listen(parseServerOptions.port, resolve)); |
| 38 | |
| 39 | Object.assign(parseServerState, { |
| 40 | parseServer, |
| 41 | httpServer, |
| 42 | parseServerOptions, |
| 43 | }); |
| 44 | |
| 45 | return parseServerOptions; |
| 46 | } |
| 47 | |
| 48 | /** |
| 49 | * Stops the ParseServer instance |