mirror of
https://github.com/ToolJet/ToolJet
synced 2026-04-21 21:47:17 +00:00
122 lines
4.9 KiB
JavaScript
122 lines
4.9 KiB
JavaScript
import { appVersionText } from "Texts/exportImport";
|
|
import { appVersionSelectors } from "Selectors/exportImport";
|
|
import { commonSelectors, commonWidgetSelector } from "Selectors/common";
|
|
import { commonText } from "Texts/common";
|
|
import { verifyModal, closeModal } from "Support/utils/common"
|
|
import { deleteVersionSelectors, editVersionSelectors } from "Selectors/version";
|
|
import { deleteVersionText, editVersionText, releasedVersionText } from "Texts/version";
|
|
import { verifyComponent } from "Support/utils/basicComponents";
|
|
|
|
export const navigateToCreateNewVersionModal = (value) => {
|
|
cy.get(appVersionSelectors.currentVersionField(value)).should("be.visible").click();
|
|
cy.contains(appVersionText.createNewVersion).should("be.visible");
|
|
cy.contains(appVersionText.createNewVersion).click();
|
|
}
|
|
|
|
export const navigateToEditVersionModal = (value) => {
|
|
cy.get(appVersionSelectors.currentVersionField(value)).should("be.visible").click();
|
|
cy.get('[style="padding: 8px 12px;"] .row').should("be.visible")
|
|
.within(() => {
|
|
cy.get(".icon").trigger("mouseover").click();
|
|
})
|
|
}
|
|
|
|
export const verifyElementsOfCreateNewVersionModal = (version = []) => {
|
|
|
|
cy.get(appVersionSelectors.createNewVersion).verifyVisibleElement("have.text", appVersionText.createNewVersion);
|
|
cy.get(appVersionSelectors.versionNamelabel).verifyVisibleElement("have.text", appVersionText.versionNameLabel);
|
|
cy.get(appVersionSelectors.createVersionFromLabel).verifyVisibleElement("have.text", appVersionText.createVersionFromLabel);
|
|
cy.get(appVersionSelectors.versionNameInputField).should("be.visible");
|
|
cy.get(appVersionSelectors.createVersionInputField).verifyVisibleElement("have.text", version[0]);
|
|
cy.get(
|
|
commonSelectors.buttonSelector(appVersionText.createNewVersion)
|
|
).verifyVisibleElement("have.text", appVersionText.createNewVersion);
|
|
cy.get(commonSelectors.buttonSelector(commonText.cancelButton))
|
|
.should("be.visible")
|
|
.and("have.text", commonText.cancelButton);
|
|
cy.get(commonSelectors.buttonSelector(commonText.closeButton)).should(
|
|
"be.visible"
|
|
).click();
|
|
|
|
}
|
|
|
|
export const editVersionAndVerify = (currentVersion, newVersion = [], toastMessageText) => {
|
|
cy.reload();
|
|
cy.get(appVersionSelectors.currentVersionField(currentVersion)).then(($ele) => {
|
|
if ($ele.hasClass("color-light-green")) {
|
|
cy.contains(releasedVersionText.releasedModalText).should("be.visible");
|
|
closeModal(commonText.closeButton);
|
|
}
|
|
})
|
|
navigateToEditVersionModal(currentVersion)
|
|
cy.get(editVersionSelectors.versionNameInputField).verifyVisibleElement("have.value", currentVersion);
|
|
|
|
cy.clearAndType(
|
|
editVersionSelectors.versionNameInputField,
|
|
newVersion[0]
|
|
);
|
|
cy.get(editVersionSelectors.saveButton).click();
|
|
cy.wait(500);
|
|
cy.verifyToastMessage(
|
|
commonSelectors.toastMessage,
|
|
toastMessageText
|
|
);
|
|
}
|
|
export const deleteVersionAndVerify = (value, toastMessageText) => {
|
|
cy.get(appVersionSelectors.currentVersionField(value)).should("be.visible").click();
|
|
cy.contains(`[id*="react-select-"]`, value).should("be.visible")
|
|
.within(() => {
|
|
cy.get(" .app-version-list-item")
|
|
.trigger('mouseover')
|
|
.trigger("mouseenter")
|
|
.find(".app-version-delete")
|
|
.click({ force: true });
|
|
})
|
|
cy.get(deleteVersionSelectors.modalMessage).verifyVisibleElement("have.text", deleteVersionText.deleteModalText(value));
|
|
cy.get(deleteVersionSelectors.yesButton).click();
|
|
cy.verifyToastMessage(
|
|
commonSelectors.toastMessage,
|
|
toastMessageText
|
|
);
|
|
};
|
|
|
|
export const verifyDuplicateVersion = (newVersion = [], version) => {
|
|
cy.contains(appVersionText.createNewVersion).should("be.visible").click();
|
|
verifyModal(
|
|
appVersionText.createNewVersion,
|
|
appVersionText.createNewVersion,
|
|
appVersionSelectors.createVersionInputField
|
|
);
|
|
cy.get(appVersionSelectors.createVersionInputField).click()
|
|
cy.contains(`[id*="react-select-"]`, version).click();
|
|
cy.get(appVersionSelectors.versionNameInputField).click().type(newVersion[0]);
|
|
cy.get(appVersionSelectors.createNewVersionButton).click();
|
|
cy.verifyToastMessage(
|
|
commonSelectors.toastMessage,
|
|
appVersionText.versionNameAlreadyExists
|
|
);
|
|
};
|
|
export const releasedVersionAndVerify = (currentVersion) => {
|
|
cy.contains("Release").click();
|
|
cy.verifyToastMessage(
|
|
commonSelectors.toastMessage,
|
|
releasedVersionText.releasedToastMessage(currentVersion)
|
|
);
|
|
verifyModal(
|
|
appVersionText.createNewVersion,
|
|
appVersionText.createNewVersion,
|
|
appVersionSelectors.versionNameInputField
|
|
);
|
|
cy.contains(releasedVersionText.releasedModalText).should("be.visible");
|
|
cy.wait(500);
|
|
closeModal(commonText.closeButton);
|
|
cy.get(appVersionSelectors.currentVersionField(currentVersion)).should("have.class", "color-light-green");
|
|
};
|
|
|
|
export const verifyVersionAfterPreview = (currentVersion) => {
|
|
cy.get(appVersionSelectors.currentVersionField(currentVersion)).should("be.visible")
|
|
cy.get(commonWidgetSelector.previewButton).invoke('removeAttr', 'target').click();
|
|
cy.url().should('include', '/home')
|
|
verifyComponent("button1");
|
|
cy.contains(currentVersion)
|
|
};
|