@chowdhury/vite-react-redux-ts-starter
Version:
A starter template for React with Typescript using Vite and Redux
56 lines (51 loc) • 1.85 kB
text/typescript
/// <reference types="cypress" />
// ***********************************************
// This example commands.ts 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
// ***********************************************
declare namespace Cypress {
interface Chainable<Subject> {
/**
* Custom command to select elements by data-testid attribute.
* @param dataTestSelector The value of the data-testid attribute to select elements.
* @example
* cy.getDataTest('decrement-button')
*/
getDataTest(dataTestSelector: string): Chainable<any>;
}
}
//
//
// -- 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) => { ... })
//
// declare global {
// namespace Cypress {
// interface Chainable {
// login(email: string, password: string): Chainable<void>
// drag(subject: string, options?: Partial<TypeOptions>): Chainable<Element>
// dismiss(subject: string, options?: Partial<TypeOptions>): Chainable<Element>
// visit(originalFn: CommandOriginalFn, url: string, options: Partial<VisitOptions>): Chainable<Element>
// }
// }
// }
Cypress.Commands.add("getDataTest", (dataTestSelector) => {
return cy.get(`[data-testid="${dataTestSelector}"]`);
});