/* * SPDX-FileCopyrightText: 2021 The HedgeDoc developers (see AUTHORS file) * * SPDX-License-Identifier: AGPL-3.0-only */ declare namespace Cypress { interface Chainable { getIframeBody(): Chainable getReveal(): Chainable getMarkdownBody(): Chainable } } Cypress.Commands.add('getIframeBody', () => { return cy .get(`iframe[data-cy="documentIframe"][data-content-ready="true"]`) .should('be.visible') .its('0.contentDocument') .should('exist') .its('body') .should('not.be.undefined') .then(cy.wrap.bind(cy)) }) Cypress.Commands.add('getReveal', () => { return cy.getIframeBody().find('.reveal') }) Cypress.Commands.add('getMarkdownBody', () => { return cy.getIframeBody().find('.markdown-body') })