Skip to content

ReliefApplications/ems-backend

Repository files navigation

OORT Back-end

GitHub version CodeQL

Introduction

This back-end uses Node.js and runs an Express server. The app data is stored in a MongoDB database. It exposes a GraphQL API.

It was made for a Proof of Concept of a UI Builder for WHO.

To read more about the project, and how to setup the back-end, please refer to the documentation of the project.

Utilities

Docker-compose executes nodemon command, which provides an inspector tool.

9229 port is allocated to back-end inspection. You can use inspector with browser tools.

For Chrome, go to chrome://inspect) and click on inspect below the remote target.

Testing

In order to execute tests locally, you can execute the command:

docker-compose -f docker-compose.test.yml run test-server npm run test

Or this command:

npm run test

It is also possible to run tests on a single file, by passing it as a parameter:

docker-compose -f docker-compose.test.yml run test-server npm run test -- <path_to_file>

Or with this command:

npm run test -- <path_to_file>

You can also limit the tests to one specific folder. For example:

npm run test -- --testPathPattern=models

Note: If you're running the tests on Windows, make sure the test command in your package.json file is set up correctly. Here's the command that should be in the scripts section of your package.json file:

"test": "node --max-old-space-size=8192 ./node_modules/jest/bin/jest.js --logHeapUsage --forceExit"

Will only run tests in the models folder.

RabbitMQ

If management platform is not reachable at 15672, you can use this command ( while containers are running ):

docker-compose exec rabbitmq rabbitmq-plugins enable rabbitmq_management