Test suite for Svelte 3 HMR.
The whole project is only the tests. And a cool cli to run them on various targets.
git clone [email protected]:rixo/svelte-hmr-spec.git
cd svelte-hmr-spec
npm install
npm install --global .
cd app
npm install
See inline help for an up to date description of available cli options:
svhs --help
To run the tests on the default bundled app (which should be last versions of svelte-loader, svelte, everything...):
svhs --default
To run the tests on a custom target, use svhs ./path-to-your-app
(defaults to cwd). Example:
git clone https://github.com/rixo/demo-svelte-nollup
cd demo-svelte-nollup
npm install
svhs --watch
The tests expect a basic svelte + webpack (or rollup / nollup) application with HMR enabled. They also expect the app to contain a src/App.svelte
file, and a src/main.js
file that bootstraps this App component on the document's body.
This is actually the default structure of the webpack template app with some customization to allow for programmatic control of the webpack instance. In particular, the webpack dev server's config must be located in the webpack.config.js
file (the contentBase
option specifically).
Look at the provided default app for a precise reference of what is expected. My HMR demo app should also be kept in sync to be usable as a test target (so you can start from that if you want to create a custom test target app).