mirror of
https://github.com/GSA/notifications-admin.git
synced 2026-04-07 02:51:06 -04:00
d5656a4dc22fe89ef2034ea4d2af2e617b31ea5d
get_services to test_client.login
Because the redirect after logging in checks the number of services a user has, this now needs to be mocked. Right now this means adding `mock_get_login` to any tests that need a login. This must be one of the first mocks, so that it can be overridden by any use of `mock_get_services`, for tests that specifically want to rely on a quantity of mocked services, or their contents. This is a bit fragile, but there’s already a TODO in the code to make it better so ¯\_(ツ)_/¯
…
…
…
…
notifications-admin
Application to handle the admin functions of the notifications application.
Features of this application
- Register users
- Register services
- Download CSV for an email or SMS batch
- Show history of notifications
- Reports
First-time setup
You need Node which will also get you NPM, Node's package management tool.
brew install node
n is a tool for managing different versions of node. The following installs n and uses the latest version of node.
npm install -g n
n latest
npm rebuild node-sass
The frontend dependencies are managed using NPM and Bower. To install or update all the things, run
npm install
npm run build
The app runs within a virtual environment. To install virtualenv, run
[sudo] pip install virtualenv
To make a virtualenv for this app, run
mkvirtualenv -p /usr/local/bin/python3 notifications-admin
pip install -r requirements.txt
./scripts/bootstrap.sh
Building the frontend
If you want the front end assets to re-compile on changes, leave this running in a separate terminal from the app
npm run watch
Running the application
workon notifications-admin
./scripts/run_app.sh
Then visit localhost:6012
Domain model
All the domain models are defined in the models.py file.
Description
Languages
Python
69.3%
HTML
16.6%
JavaScript
11.1%
SCSS
0.9%
Nunjucks
0.7%
Other
1.4%