Each Ruby application has its own set of unit tests which get run whenever a change is made to its project.
The end to end tests aren't yet run automatically by the individual apps. They are run whenever a change is made to this, govwifi-build, repository is made. To run the acceptance tests manually follow the instructions below:
make clean test
would recommend to tear down the environment after use to free up resources, to do so run
make clean destroy
If you make changes to any of the checked out apps you will want to rerun the above command to rebuild and test your changes.
The GitHub action is triggered when creating a PR which calls 'make test' and the AWS CodeBuild job which runs the acceptance tests when building images for the tested apps which calls make test-ci
to allow for custom branches to be tested, which can be set via the codebuild job.
When making changes to an app it is useful to keep a tight feedback loop by making your changes to the version in the version checked out here, running end to end tests, and pushing up to GitHub when all passing.
./acceptance_tests
- The Docker setup directory for the testing environment./testdatabase
- All .sql scripts inside this directory will be executed for the main database
These is the FreeRadius configuration, pulled from
govwifi-frontend into .frontend
.
This is the Authentication API, checking user details against the Database
It is pulled from the govwifi-authentication-api repository
and placed into the .authentication-api
folder.
This is the Logging API, also known as PostAuth in the Radius domain
It is pulled from the govwifi-logging-api repository
and placed into the .logging-api
folder.