From e30d1ee10cc4729bc10ffdd77fb30bdca1670706 Mon Sep 17 00:00:00 2001 From: Shaikh Rezwan Rafid Ahmad <sa03267@surrey.ac.uk> Date: Thu, 16 Mar 2023 11:42:39 +0000 Subject: [PATCH] MongoDB Database Setup --- .../server/database/conn.js | 16 ++++++++++++++++ daily-thought-user-service/server/server.js | 14 ++++++++++++-- 2 files changed, 28 insertions(+), 2 deletions(-) create mode 100644 daily-thought-user-service/server/database/conn.js diff --git a/daily-thought-user-service/server/database/conn.js b/daily-thought-user-service/server/database/conn.js new file mode 100644 index 00000000..dc901992 --- /dev/null +++ b/daily-thought-user-service/server/database/conn.js @@ -0,0 +1,16 @@ +import mongoose from "mongoose"; +import { MongoMemoryServer } from "mongodb-memory-server"; + +async function connect(){ + + const mongod = await MongoMemoryServer.create(); + const getUri = mongod.getUri(); + + mongoose.set('strictQuery', true) + const db = await mongoose.connect(getUri); + console.log("Database Connected") + return db; + +} + +export default connect; \ No newline at end of file diff --git a/daily-thought-user-service/server/server.js b/daily-thought-user-service/server/server.js index 08c00215..8220cc51 100644 --- a/daily-thought-user-service/server/server.js +++ b/daily-thought-user-service/server/server.js @@ -1,6 +1,7 @@ import express from 'express'; import cors from 'cors'; import morgan from 'morgan'; +import connect from './database/conn.js' const app = express(); @@ -16,6 +17,15 @@ app.get('/', (req, res) => { res.status(201).json("Home GET Request") }); -app.listen(port, () => { - console.log(`Server connected to http://localhost:${port}`); +// Start server only when we have valid connection +connect().then(() => { + try { + app.listen(port, () => { + console.log(`Server connected to http://localhost:${port}`); + }) + } catch (error) { + console.log('Cannot connect to the server') + } +}).catch(error => { + console.log("Invalid database connection...!"); }) \ No newline at end of file -- GitLab