0
Fork 0
mirror of https://github.com/TryGhost/Ghost.git synced 2025-02-03 23:00:14 -05:00
ghost/core/test/regression
Hannah Wolfe 623c65c509 💡Changed static router - throw 400 for missing tpl
fixes #10990

- Changed the static router to throw a 400 error for a missing template file, rather than falling back to using the default.hbs file
- Falling back is weird and hard to understand, but throwing an error makes it clear that the user has to provide the matching template
- The new error reads 'Missing template [filename].hbs for route "[route]".'

Assume you have a route.yaml file something like:

```
routes:
  /: home
```

- In Ghost v2, if you don't have a home.hbs template, Ghost falls back to using the default.hbs file if it's available
- Most themes have a default.hbs, however this file is a layout file, depended on by other templates, not a template file itself
- In production mode, using the default.hbs as a template causes weird, intermittent layout issues depending on which order pages are loaded
- This is due to this issue: https://github.com/barc/express-hbs/issues/161
- In Ghost v3, we will throw a 400 error for missing template files instead of having a fallback
- In the example above, navigating to '/' would throw the error 'Missing template home.hbs for route "/".'
2019-09-06 15:41:42 +01:00
..
api 🔥 Dropped unused ghost_auth_* user fields 2019-09-03 20:48:42 +05:30
apps/subscribers
exporter
importer Updated tests eslint config to use eslint-plugin-ghost@0.5.0 2019-08-19 13:38:35 +01:00
migrations Fixed regression tests for v2/admin/db 2019-08-09 10:57:49 +08:00
models Updated tests eslint config to use eslint-plugin-ghost@0.5.0 2019-08-19 13:38:35 +01:00
site 💡Changed static router - throw 400 for missing tpl 2019-09-06 15:41:42 +01:00
update-check Fixed regression test 2019-05-02 21:04:16 +02:00
README.md

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.