b6582e6623
ref https://linear.app/tryghost/issue/PLG-176 - we recently had to revert code because it caused unexpected problems despite the unit tests passing - the setup for the editor unit tests was very basic and did not represent the real world because it tested a simple EmberObject instance rather than an Ember Model instance meaning the tests weren't covering the real code paths - updated the unit test with a more realistic environment ready for re-working the reverted code+tests |
||
---|---|---|
.. | ||
app | ||
config | ||
lib | ||
mirage | ||
public/assets | ||
tests | ||
.editorconfig | ||
.ember-cli | ||
.eslintignore | ||
.eslintrc.js | ||
.lint-todo | ||
.lint-todorc.js | ||
.template-lintrc.js | ||
.watchmanconfig | ||
ember-cli-build.js | ||
ember-cli-update.json | ||
jsconfig.json | ||
package.json | ||
README.md | ||
testem.js |
Ghost-Admin
This is the home of the Ember.js-based Admin app that ships with Ghost.
Test
Running tests in the browser
Run all tests in the browser by running yarn dev
in the Ghost monorepo and visiting http://localhost:4200/tests. The code is hotloaded on change and you can filter which tests to run.
Tip: You can use this.timeout(0); await this.pauseTest();
in your tests to temporarily pause the execution of browser tests. Use the browser console to inspect and debug the DOM, then resume tests by running resumeTest()
directly in the browser console (docs)
Running tests in the CLI
To build and run tests in the CLI, you can use:
TZ=UTC yarn test
Note the TZ=UTC
environment variable which is currently required to get tests working if your system timezone doesn't match UTC.
However, this is very slow when writing tests, as it requires the app to be rebuilt on every change. Instead, create a separate watching build with:
yarn build --environment=test -w -o="dist-test"
Then run tests with:
TZ=UTC yarn test 1 --reporter dot --path="dist-test"
The --reporter dot
shows a dot (.
) for every successful test, and F
for every failed test. It renders the output of the failed tests only.
To run a specific test file:
TZ=UTC yarn test 1 --reporter dot --path="dist-test" -mp=tests/unit/helpers/gh-count-characters-test.js
To have a full list of the available options, run
ember exam --help
Copyright & License
Copyright (c) 2013-2024 Ghost Foundation - Released under the MIT license. Ghost and the Ghost Logo are trademarks of Ghost Foundation Ltd. Please see our trademark policy for info on acceptable usage.