[x] Update documentation and document breaking changes
Change Log
Added
Add --no-volumes flag to start command for environments that don't support Docker volume mounting. When using this flag any changes will not be reflected in the test container and it will be slower to create a test container [#42]
Validation for configuration object.
Added configFile option to config object which allows a path to be provided to a php file to define configuration expected in wp-config.php.
Allow seeds directory to have sub directories for managing larger projects
Added support for WordPress Multisite. Defaults to false but can be set to true for subdirectory or subdomain installs. A url is option is available to set a custom domain which is needed if you plan to use subdomain.
Changed
When using cy.switchUser it uses the bypass auth logic instead of visiting wp-login.php which helps to speed up tests
Caches WP versions to prevent re-downloading all the WP versions defined in wp.version if it changes.
Cache vip mu plugins if used
Perform soft reset between tests for performance benefits.
Fixed
Mount wp-content directory directly as a volume (ignoring uploads and upgrade directories), instead of flaky intermediary step
A more aggressive bypass auth logic is used to prevent previous issues [#25]
Re-generate default values for each post in post fixture
Only duplicate tests if there are multiple wp versions supplied in config
Breaking Changes
Can no longer mount additional plugins or themes when mounting a wp-content folder, this is an intentional design decision to simplify things.
Remove cypress retries plugin and default number of retries. It is now recommended you configure this yourself using the native support in Cypress versions 5 & above https://docs.cypress.io/guides/guides/test-retries.html
Config object schema has changed. The new schema should be more stable moving forwards. See below examples of how various different config combinations using the new schema can be utilised for different projects.
To do before merge
Change Log
Added
--no-volumes
flag to start command for environments that don't support Docker volume mounting. When using this flag any changes will not be reflected in the test container and it will be slower to create a test container [#42]configFile
option to config object which allows a path to be provided to a php file to define configuration expected inwp-config.php
.false
but can be set totrue
for subdirectory orsubdomain
installs. Aurl
is option is available to set a custom domain which is needed if you plan to usesubdomain
.Changed
cy.switchUser
it uses the bypass auth logic instead of visitingwp-login.php
which helps to speed up testswp.version
if it changes.Fixed
Breaking Changes
Example configs
Plugins/Theme
Plugins/Theme with VIP
Plugins/Theme/Mu-plugins
Plugins/Theme/Mu-plugins with VIP
WP Content
WP Content with VIP
Types of changes (if applicable):
Checklist (if applicable):