n8n/cypress/composables/modals/credential-modal.ts
कारतोफ्फेलस्क्रिप्ट™ 96b95ef5e5
ci: When saving credentials in e2e tests, wait for the save operation to finish (no-changelog) (#11850)
Co-authored-by: Csaba Tuncsik <csaba.tuncsik@gmail.com>
2024-11-22 15:13:45 +01:00

59 lines
1.4 KiB
TypeScript

/**
* Getters
*/
export function getCredentialConnectionParameterInputs() {
return cy.getByTestId('credential-connection-parameter');
}
export function getCredentialConnectionParameterInputByName(name: string) {
return cy.getByTestId(`parameter-input-${name}`);
}
export function getEditCredentialModal() {
return cy.getByTestId('editCredential-modal', { timeout: 5000 });
}
export function getCredentialSaveButton() {
return cy.getByTestId('credential-save-button', { timeout: 5000 });
}
export function getCredentialDeleteButton() {
return cy.getByTestId('credential-delete-button');
}
export function getCredentialModalCloseButton() {
return getEditCredentialModal().find('.el-dialog__close').first();
}
/**
* Actions
*/
export function setCredentialConnectionParameterInputByName(name: string, value: string) {
getCredentialConnectionParameterInputByName(name).type(value);
}
export function saveCredential() {
getCredentialSaveButton()
.click({ force: true })
.within(() => {
cy.get('button').should('not.exist');
});
}
export function closeCredentialModal() {
getCredentialModalCloseButton().click();
}
export function setCredentialValues(values: Record<string, string>, save = true) {
Object.entries(values).forEach(([key, value]) => {
setCredentialConnectionParameterInputByName(key, value);
});
if (save) {
saveCredential();
closeCredentialModal();
}
}