Ghost/test/regression
Nazar Gargol 5582d030e3 Added routes.yaml content checksum storage to the db
closes #11999

- When the routes.yaml file changes (manually or through API) we need
to store a checksum to be able to optimize routes reloads in the future
- Added mechanism to detect differences between stored and current routes.yaml hash value
- Added routes.yaml sync on server boot
- Added routes.yaml handling in controllers
- Added routes hash synchronization method in core settings. It lives in core settings
as it needs access to model layer. To avoid coupling with the frontend settings it accepts
a function which has to resolve to a routes hash
- Added note about settings validation side-effect. It mutates input!
- Added async check for currently loaded routes hash
- Extended frontend settings loader with async loader. The default behavior of the loader is
to load settings syncronously for reasons spelled in 0ac19dcf84
To avoid blocking the eventloop added async loading method
- Refactored frontend setting loader for reusability of  settings file path
- Added integrity check test for routes.yaml file
2020-09-10 10:54:57 +12:00
..
api 🐛 Fixed error caused by accepting invitation with existing email (#12172) 2020-09-09 11:58:53 +12:00
exporter Updated var declarations to const/let and no lists 2020-04-29 16:51:13 +01:00
importer 🐛 Fixed importing Stripe Plans with amount 0 (#12062) 2020-07-20 14:59:23 +02:00
migrations Fixed broken regression tests from #11861 2020-06-02 16:20:57 +02:00
models 🐛 Fixed incorrect status used for trial subscription query 2020-09-02 13:07:48 +01:00
settings Added routes_hash setting (#12171) 2020-09-07 21:54:55 +12:00
site Added routes.yaml content checksum storage to the db 2020-09-10 10:54:57 +12:00
update-check Updated var declarations to const/let and no lists 2020-04-29 16:51:13 +01:00
README.md Move tests from core to root (#11700) 2020-03-30 16:26:47 +01:00

Regression Tests

This folder should contain packages which we test in a cron job once per day. These tests should ensure that we don't break Ghost.

The goal is that most of these packages use Ghost's API's to test behaviours, otherwise transform the tests into unit tests.