emailonacid-snapshot
Mail Visual Regression library based on Email on Acid API service.
Quick Start
- Install
emailonacid-snapshot
package as devDependency:
# yarn yarn add --dev emailonacid-snapshot # npm npm install --save-dev emailonacid-snapshot
-
Define
process.env.EOA_API_KEY
andprocess.env.EOA_ACCOUNT_PASSWORD
API credentials. -
Use
createEmail
with your favorite test runner:
const createEmail = ; { const email = await ; const screenshot = await email; // assert screenshot at this point await email;} ;
Check options docs and examples for futher setup.
Options
You can provide config with either one of package.json#emailonacid
,
emailonacid.config.js
, and .emailonacidrc.json
.
Note: clients
and plugins
options are not merged but overridden.
clients
<?Array<string>> List of default clients to create tests with.credentials
<Object>apiKey
<string> EoA API key. Defaults toprocess.env.EOA_API_KEY
.accountPassword
EoA API password. Defaults toprocess.env.EOA_ACCOUNT_PASSWORD
.
debug
<?boolean> Enables verbose debug logging. Defaults toprocess.env.DEBUG
orprocess.env.EOA_DEBUG
.plugins
<?Array<Function>> List of plugins to apply for each test. Default plugins are ThreadBustingPlugin, ContentRendererPlugin, LocalCopyPlugin, ContentCroppingPlugin. If you're willing to implement custom plugin, check one of those plugins for reference.poll
<?Object> Polling options
API
See TypeScript typings for more API details.
createEmail
;
Creates new email with default and global options. Returns email instance object.
configureCreateEmail
;
Creates new email factory with default, global and provided options. Helpful for
creating multiple createEmail
functions to defined different set of targets or
different renderers.
withDefaultPlugins
;
Merges user-provided config with list of default plugins.
withOverridableClients
;
Merges user-provided config with a dynamic list of clients which can be
overridden via EOA_CLIENTS
environment variable.
License
MIT © ResearchGate