Skip to content

Commit

Permalink
Fix issue with dotenv in tests
Browse files Browse the repository at this point in the history
https://eaflood.atlassian.net/browse/WATER-3833

In [Refactor dotenv require](#10) it was identified that we were requiring [dotnev](https://github.com/motdotla/dotenv) in multiple places and ideally we should do it once, as early as possible.

It was spotted in [Move location where 'dotenv' is being required](#21) that some of the tests were effected by this move, and we bumped it from `index.js` to `/app/server.js`.

We then created our first DB migrations and realised we also needed to include it in `config/database.config.js` else migrations wouldn't work.

What we now realise is that controller tests work because they require `/app/server.js` which requires **dotenv**. Also, any test that connects with the DB pulls in `config/database.config.js` so those are fine.

But when working on [Request new bill run in Charging Module API](request-new-bill-run-in-charging-module) and running tests that need `config/services.config.js` to be populated they were breaking. This is because **dotenv** is never getting `required()` so none of our env vars are getting read in.

TL;DR; there was a reason we `require('dotenv')` in all our config files in [sroc-charging-module-api
](https://github.com/DEFRA/sroc-charging-module-api); it's to make both the app _and_ tests work as expected!

This change reverts [Refactor dotenv require](#10) to get everything working again.
  • Loading branch information
Cruikshanks committed Jan 16, 2023
1 parent 967b634 commit a48e1b2
Showing 0 changed files with 0 additions and 0 deletions.

0 comments on commit a48e1b2

Please sign in to comment.