mirror of
https://github.com/ToolJet/ToolJet
synced 2026-04-25 15:37:37 +00:00
112 lines
3.4 KiB
JavaScript
112 lines
3.4 KiB
JavaScript
import { fake } from "Fixtures/fake";
|
|
import { commonSelectors, commonWidgetSelector } from "Selectors/common";
|
|
import { buttonText } from "Texts/button";
|
|
|
|
import { addBasicData, verifyBasicData } from "Support/utils/button";
|
|
|
|
import { openEditorSidebar } from "Support/utils/commonWidget";
|
|
|
|
describe("Editor- component duplication", () => {
|
|
const data = {};
|
|
beforeEach(() => {
|
|
cy.apiLogin();
|
|
cy.apiCreateApp(`${fake.companyName}-App`);
|
|
cy.openApp();
|
|
cy.dragAndDropWidget(buttonText.defaultWidgetText, 500, 500);
|
|
|
|
data.appName = `${fake.companyName}-App`;
|
|
data.alertMessage = fake.randomSentence;
|
|
data.widgetName = fake.widgetName;
|
|
data.customMessage = fake.randomSentence;
|
|
data.backgroundColor = fake.randomRgba;
|
|
data.textColor = fake.randomRgba;
|
|
data.loaderColor = fake.randomRgba;
|
|
data.boxShadowColor = fake.randomRgba;
|
|
data.boxShadowParam = fake.boxShadowParam;
|
|
data.tooltipText = fake.randomSentence;
|
|
});
|
|
afterEach(() => {
|
|
cy.apiDeleteApp(`${fake.companyName}-App`);
|
|
});
|
|
it("should verify duplication using copy and paste", () => {
|
|
addBasicData(data);
|
|
cy.forceClickOnCanvas();
|
|
openEditorSidebar("button1");
|
|
cy.realPress(["Control", "c"]);
|
|
cy.moveComponent("button1", 200, 200);
|
|
cy.verifyToastMessage(
|
|
commonSelectors.toastMessage,
|
|
"Component copied successfully"
|
|
);
|
|
cy.forceClickOnCanvas();
|
|
|
|
cy.get('[data-cy="real-canvas"]').realPress(["Control", "v"]);
|
|
|
|
verifyBasicData("button2", data);
|
|
|
|
cy.reload();
|
|
cy.wait(2500);
|
|
verifyBasicData("button2", data);
|
|
});
|
|
it("should verify componen paste to container", () => {
|
|
addBasicData(data);
|
|
cy.forceClickOnCanvas();
|
|
openEditorSidebar("button1");
|
|
cy.realPress(["Control", "c"]);
|
|
cy.moveComponent("button1", 200, 90);
|
|
cy.dragAndDropWidget("Container", 300, 200);
|
|
cy.resizeWidget("container1", 800, 500);
|
|
cy.verifyToastMessage(
|
|
commonSelectors.toastMessage,
|
|
"Component copied successfully",
|
|
false
|
|
);
|
|
cy.forceClickOnCanvas();
|
|
openEditorSidebar("container1");
|
|
cy.get(`${commonWidgetSelector.draggableWidget("container1")}>`)
|
|
.click({ force: true })
|
|
.within(() => {
|
|
cy.realPress(["Control", "v"]);
|
|
cy.wait(1000);
|
|
cy.get(commonWidgetSelector.draggableWidget("button2")).should(
|
|
"be.visible"
|
|
);
|
|
});
|
|
verifyBasicData("button2", data);
|
|
});
|
|
|
|
it("should verify duplication using right side panel", () => {
|
|
addBasicData(data);
|
|
cy.forceClickOnCanvas();
|
|
openEditorSidebar("button1");
|
|
cy.get('[data-cy="component-inspector-options"]>').click();
|
|
cy.get('[data-cy="component-inspector-duplicate-button"]').click();
|
|
cy.verifyToastMessage(
|
|
commonSelectors.toastMessage,
|
|
"Component cloned succesfully"
|
|
);
|
|
cy.moveComponent("button1", 200, 200);
|
|
cy.forceClickOnCanvas();
|
|
cy.wait(1000);
|
|
verifyBasicData("button2", data);
|
|
});
|
|
|
|
it("should verify duplication using keyboard", () => {
|
|
addBasicData(data);
|
|
cy.forceClickOnCanvas();
|
|
openEditorSidebar("button1");
|
|
cy.realPress(["Control", "d"]);
|
|
cy.verifyToastMessage(
|
|
commonSelectors.toastMessage,
|
|
"Component cloned succesfully"
|
|
);
|
|
cy.moveComponent("button1", 200, 200);
|
|
cy.forceClickOnCanvas();
|
|
cy.wait(1000);
|
|
verifyBasicData("button2", data);
|
|
|
|
cy.reload();
|
|
cy.wait(2500);
|
|
verifyBasicData("button2", data);
|
|
});
|
|
});
|