0
Fork 0
mirror of https://github.com/TryGhost/Ghost.git synced 2025-03-11 02:12:21 -05:00
ghost/apps/admin-x-settings
Ronald Langeveld 1c95acfd57
Fixed flaky Admin X design tests (#21426)
ref ONC-478

- Admin X design tests became flaky largely due to the implementation of
a debounce.
- Initially running a `waitForTimeout` helped to give the environment
enough time to ensure that the specific requests are made, however it
proved to be unpredictable across CI and locally.
- We then replaced `waitForTimeout` in with `waitForRequest` to ensure
tests reliably wait for specific requests.
- Updated logic to check `x-ghost-preview` headers directly, ensuring
the correct response headers are captured and tested against
- Improved stability by using request interception and matching,
preventing debounce issues in the tests.
2024-10-28 17:25:05 +09:00
..
src Improved hover styling for list items in Settings (#21387) 2024-10-26 09:00:14 +02:00
test Fixed flaky Admin X design tests (#21426) 2024-10-28 17:25:05 +09:00
.eslintignore
.eslintrc.cjs
.yarnrc
index.html
node-shim.cjs
package.json Custom fonts (#21337) 2024-10-24 07:43:08 -04:00
playwright.config.mjs Updated files with mixed named/default exports to use only named exports (#19385) 2023-12-14 16:01:28 +00:00
postcss.config.cjs
README.md
tailwind.config.cjs
tsconfig.json
vite.config.mjs Custom fonts (#21337) 2024-10-24 07:43:08 -04:00

Admin X Settings

Ghost Admin Settings in React

Development

Pre-requisites

  • Run yarn in Ghost monorepo root

Running the development version

Run yarn dev to start the development server to test/develop the settings standalone. This will generate a demo site from the index.html file which renders the app and makes it available on http://localhost:5173

Running inside Admin

Run yarn dev (like you would run Ghost dev normally) from the top-level repo. AdminX will automatically rebuild when you make changes.

Develop

This is a monorepo package.

Follow the instructions for the top-level repo.

  1. git clone this repo & cd into it as usual
  2. Run yarn to install top-level dependencies.

Test

  • yarn lint run just eslint
  • yarn test:acceptance runs acceptance tests
  • yarn test:unit runs unit tests
  • yarn test:acceptance path/to/test runs a specific test
  • yarn test:acceptance:slowmo runs acceptance tests in slow motion and headed mode, useful for debugging and developing tests