Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // env.test file:
- // DB_HOST="localhost"
- // DB_PORT="27017"
- // DB_NAME="dbname"
- // DB_USER="dbusername"
- // DB_PASS="dbpassword"
- require('custom-env').env(true)
- const mongoose = require('mongoose')
- exports.connect = async () => {
- try {
- let connectionString = await this.connectionString()
- mongoose.connection.on('error', (err) => {
- throw new Error(`Unable to connect to db: ${err.message}`)
- })
- return await mongoose.connect(connectionString, { useNewUrlParser: true, useFindAndModify: false })
- } catch (err) {
- throw new Error(`dbhelper.connect: ${err.message}`)
- }
- }
- exports.connectionString = () => {
- let connectionString = ''
- try {
- if (process.env.DB_PROTOCOL) {
- connectionString += `${process.env.DB_PROTOCOL}://`
- } else {
- connectionString += `mongodb://`
- }
- if (process.env.DB_USER && process.env.DB_PASS) {
- connectionString += `${process.env.DB_USER}:${process.env.DB_PASS}@`
- }
- connectionString += `${process.env.DB_HOST}:${process.env.DB_PORT}/${process.env.DB_NAME}`
- } catch (err) {
- throw new Error(`dbhelper.connectionString: ${err.message}`)
- }
- return connectionString
- }
Add Comment
Please, Sign In to add comment