| 1234567891011121314151617181920212223242526272829303132333435363738394041424344 |
- // ***********************************************
- // This example commands.js shows you how to
- // create various custom commands and overwrite
- // existing commands.
- //
- // For more comprehensive examples of custom
- // commands please read more here:
- // https://on.cypress.io/custom-commands
- // ***********************************************
- //
- //
- // -- This is a parent command --
- // Cypress.Commands.add('login', (email, password) => { ... })
- //
- //
- // -- This is a child command --
- // Cypress.Commands.add('drag', { prevSubject: 'element'}, (subject, options) => { ... })
- //
- //
- // -- This is a dual command --
- // Cypress.Commands.add('dismiss', { prevSubject: 'optional'}, (subject, options) => { ... })
- //
- //
- // -- This will overwrite an existing command --
- // Cypress.Commands.overwrite('visit', (originalFn, url, options) => { ... })
- Cypress.Commands.add('clearIndexedDB', async () => {
- const databases = await window.indexedDB.databases();
- await Promise.all(
- databases.map(
- ({ name }) =>
- new Promise((resolve, reject) => {
- const request = window.indexedDB.deleteDatabase(name);
- request.addEventListener('success', resolve);
- // Note: we need to also listen to the "blocked" event
- // (and resolve the promise) due to https://stackoverflow.com/a/35141818
- request.addEventListener('blocked', resolve);
- request.addEventListener('error', reject);
- }),
- ),
- );
- });
|