Guest User

Untitled

a guest
Jan 25th, 2019
129
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.23 KB | None | 0 0
  1. // env.test file:
  2. // DB_HOST="localhost"
  3. // DB_PORT="27017"
  4. // DB_NAME="dbname"
  5. // DB_USER="dbusername"
  6. // DB_PASS="dbpassword"
  7.  
  8. require('custom-env').env(true)
  9. const mongoose = require('mongoose')
  10.  
  11. exports.connect = async () => {
  12. try {
  13. let connectionString = await this.connectionString()
  14.  
  15. mongoose.connection.on('error', (err) => {
  16. throw new Error(`Unable to connect to db: ${err.message}`)
  17. })
  18.  
  19. return await mongoose.connect(connectionString, { useNewUrlParser: true, useFindAndModify: false })
  20. } catch (err) {
  21. throw new Error(`dbhelper.connect: ${err.message}`)
  22. }
  23. }
  24.  
  25. exports.connectionString = () => {
  26. let connectionString = ''
  27. try {
  28. if (process.env.DB_PROTOCOL) {
  29. connectionString += `${process.env.DB_PROTOCOL}://`
  30. } else {
  31. connectionString += `mongodb://`
  32. }
  33. if (process.env.DB_USER && process.env.DB_PASS) {
  34. connectionString += `${process.env.DB_USER}:${process.env.DB_PASS}@`
  35. }
  36. connectionString += `${process.env.DB_HOST}:${process.env.DB_PORT}/${process.env.DB_NAME}`
  37. } catch (err) {
  38. throw new Error(`dbhelper.connectionString: ${err.message}`)
  39. }
  40. return connectionString
  41. }
Add Comment
Please, Sign In to add comment