mirror of
https://github.com/ToolJet/ToolJet
synced 2026-04-21 21:47:17 +00:00
263 lines
No EOL
7.7 KiB
JavaScript
263 lines
No EOL
7.7 KiB
JavaScript
import { groupsSelector } from "Selectors/manageGroups";
|
|
import { groupsText } from "Texts/manageGroups";
|
|
import { commonSelectors } from "Selectors/common";
|
|
import { commonText } from "Texts/common";
|
|
import { navigateToAllUserGroup } from "../utils/common";
|
|
|
|
export const manageGroupsElements = () => {
|
|
cy.get(groupsSelector.groupLink("All users")).verifyVisibleElement(
|
|
"have.text",
|
|
groupsText.allUsers
|
|
);
|
|
cy.get(groupsSelector.groupLink("Admin")).verifyVisibleElement(
|
|
"have.text",
|
|
groupsText.admin
|
|
);
|
|
|
|
navigateToAllUserGroup();
|
|
|
|
cy.get(groupsSelector.groupPageTitle("All Users")).verifyVisibleElement(
|
|
"have.text",
|
|
groupsText.allUsers
|
|
);
|
|
cy.get(groupsSelector.createNewGroupButton).verifyVisibleElement(
|
|
"have.text",
|
|
groupsText.createNewGroupButton
|
|
);
|
|
|
|
cy.get(groupsSelector.appsLink).verifyVisibleElement(
|
|
"have.text",
|
|
groupsText.appsLink
|
|
);
|
|
cy.get(groupsSelector.usersLink).verifyVisibleElement(
|
|
"have.text",
|
|
groupsText.usersLink
|
|
);
|
|
cy.get(groupsSelector.permissionsLink).verifyVisibleElement(
|
|
"have.text",
|
|
groupsText.permissionsLink
|
|
);
|
|
|
|
cy.get(groupsSelector.appsLink).click();
|
|
|
|
cy.get(groupsSelector.textDefaultGroup).verifyVisibleElement(
|
|
"have.text",
|
|
groupsText.textDefaultGroup
|
|
);
|
|
|
|
cy.get(groupsSelector.searchBox).should("be.visible");
|
|
cy.get(groupsSelector.selectAddButton).verifyVisibleElement(
|
|
"have.text",
|
|
groupsText.addButton
|
|
);
|
|
|
|
cy.get(groupsSelector.nameTableHeader).verifyVisibleElement(
|
|
"have.text",
|
|
groupsText.textAppName
|
|
);
|
|
|
|
cy.get(groupsSelector.permissionstableHedaer).verifyVisibleElement(
|
|
"have.text",
|
|
groupsText.permissionstableHedaer
|
|
);
|
|
|
|
cy.get("body").then(($title) => {
|
|
if ($title.text().includes(groupsText.helperTextNoAppsAdded)) {
|
|
cy.get(groupsSelector.helperTextNoAppsAdded).verifyVisibleElement(
|
|
"have.text",
|
|
groupsText.helperTextNoAppsAdded
|
|
);
|
|
cy.get(groupsSelector.helperTextPermissions).verifyVisibleElement(
|
|
"have.text",
|
|
groupsText.helperTextPermissions
|
|
);
|
|
}
|
|
});
|
|
|
|
cy.get(groupsSelector.createNewGroupButton).should("be.visible").click();
|
|
cy.get(groupsSelector.addNewGroupModalTitle).verifyVisibleElement(
|
|
"have.text",
|
|
groupsText.cardTitle
|
|
);
|
|
cy.get(groupsSelector.groupNameInput).should("be.visible");
|
|
cy.get(groupsSelector.cancelButton).verifyVisibleElement(
|
|
"have.text",
|
|
groupsText.cancelButton
|
|
);
|
|
cy.get(groupsSelector.createGroupButton).verifyVisibleElement(
|
|
"have.text",
|
|
groupsText.createGroupButton
|
|
);
|
|
cy.get(groupsSelector.cancelButton).click();
|
|
cy.get(groupsSelector.searchBox).should("be.visible");
|
|
|
|
cy.get(groupsSelector.usersLink).click();
|
|
cy.get(groupsSelector.helperTextAllUsersIncluded).verifyVisibleElement(
|
|
"have.text",
|
|
groupsText.helperTextAllUsersIncluded
|
|
);
|
|
cy.get(groupsSelector.nameTableHeader).verifyVisibleElement(
|
|
"have.text",
|
|
groupsText.userNameTableHeader
|
|
);
|
|
cy.get(groupsSelector.emailTableHeader).verifyVisibleElement(
|
|
"have.text",
|
|
groupsText.emailTableHeader
|
|
);
|
|
|
|
cy.get(groupsSelector.permissionsLink).click();
|
|
cy.get(groupsSelector.resourcesApps).verifyVisibleElement(
|
|
"have.text",
|
|
groupsText.resourcesApps
|
|
);
|
|
cy.get(groupsSelector.permissionstableHedaer).verifyVisibleElement(
|
|
"have.text",
|
|
groupsText.permissionstableHedaer
|
|
);
|
|
|
|
cy.get(groupsSelector.resourcesApps).verifyVisibleElement(
|
|
"have.text",
|
|
groupsText.resourcesApps
|
|
);
|
|
cy.get(groupsSelector.appsCreateCheck).should("be.visible").check();
|
|
cy.verifyToastMessage(
|
|
commonSelectors.toastMessage,
|
|
groupsText.permissionUpdatedToast
|
|
);
|
|
cy.get(groupsSelector.appsCreateLabel).verifyVisibleElement(
|
|
"have.text",
|
|
groupsText.createLabel
|
|
);
|
|
cy.get(groupsSelector.appsCreateCheck).uncheck();
|
|
cy.get(groupsSelector.appsDeleteCheck).should("be.visible").check();
|
|
cy.get(groupsSelector.appsDeleteLabel).verifyVisibleElement(
|
|
"have.text",
|
|
groupsText.deleteLabel
|
|
);
|
|
cy.get(groupsSelector.appsDeleteCheck).uncheck();
|
|
|
|
cy.get(groupsSelector.resourcesFolders).verifyVisibleElement(
|
|
"have.text",
|
|
groupsText.resourcesFolders
|
|
);
|
|
cy.get(groupsSelector.foldersCreateCheck).should("be.visible").check();
|
|
cy.get(groupsSelector.foldersCreateLabel).verifyVisibleElement(
|
|
"have.text",
|
|
groupsText.folderCreateLabel
|
|
);
|
|
cy.get(groupsSelector.foldersCreateCheck).uncheck();
|
|
|
|
cy.get(groupsSelector.resourcesWorkspaceVar).verifyVisibleElement(
|
|
"have.text",
|
|
groupsText.resourcesWorkspaceVar
|
|
);
|
|
cy.get(groupsSelector.workspaceVarCheckbox).check();
|
|
cy.verifyToastMessage(
|
|
commonSelectors.toastMessage,
|
|
groupsText.permissionUpdatedToast
|
|
);
|
|
cy.get(groupsSelector.workspaceVarCheckbox).uncheck();
|
|
|
|
navigateToAllUserGroup();
|
|
cy.get(groupsSelector.groupLink("Admin")).click();
|
|
cy.get(groupsSelector.groupLink("Admin")).verifyVisibleElement(
|
|
"have.text",
|
|
groupsText.admin
|
|
);
|
|
|
|
cy.get(groupsSelector.appsLink).click();
|
|
cy.get(groupsSelector.textDefaultGroup).verifyVisibleElement(
|
|
"have.text",
|
|
groupsText.textDefaultGroup
|
|
);
|
|
|
|
cy.get(groupsSelector.nameTableHeader).verifyVisibleElement(
|
|
"have.text",
|
|
groupsText.textAppName
|
|
);
|
|
|
|
cy.get(groupsSelector.permissionstableHedaer).verifyVisibleElement(
|
|
"have.text",
|
|
groupsText.permissionstableHedaer
|
|
);
|
|
|
|
cy.get("body").then(($title) => {
|
|
if ($title.text().includes(groupsText.helperTextNoAppsAdded)) {
|
|
cy.get(groupsSelector.helperTextNoAppsAdded).verifyVisibleElement(
|
|
"have.text",
|
|
groupsText.helperTextNoAppsAdded
|
|
);
|
|
cy.get(groupsSelector.helperTextPermissions).verifyVisibleElement(
|
|
"have.text",
|
|
groupsText.helperTextPermissions
|
|
);
|
|
}
|
|
});
|
|
|
|
cy.get(groupsSelector.usersLink).click();
|
|
cy.get(groupsSelector.multiSelectSearch).should("be.visible");
|
|
cy.get(groupsSelector.mutiSelectAddButton("Admin")).verifyVisibleElement(
|
|
"have.text",
|
|
groupsText.addUsersButton
|
|
);
|
|
cy.get(groupsSelector.nameTableHeader).verifyVisibleElement(
|
|
"have.text",
|
|
groupsText.userNameTableHeader
|
|
);
|
|
cy.get(groupsSelector.emailTableHeader).verifyVisibleElement(
|
|
"have.text",
|
|
groupsText.emailTableHeader
|
|
);
|
|
|
|
cy.get(groupsSelector.permissionsLink).click();
|
|
cy.get(groupsSelector.resourcesApps).verifyVisibleElement(
|
|
"have.text",
|
|
groupsText.resourcesApps
|
|
);
|
|
cy.get(groupsSelector.permissionstableHedaer).verifyVisibleElement(
|
|
"have.text",
|
|
groupsText.permissionstableHedaer
|
|
);
|
|
|
|
cy.get(groupsSelector.resourcesApps).verifyVisibleElement(
|
|
"have.text",
|
|
groupsText.resourcesApps
|
|
);
|
|
cy.get(groupsSelector.appsCreateCheck).verifyVisibleElement("be.disabled");
|
|
cy.get(groupsSelector.appsDeleteCheck).verifyVisibleElement("be.disabled");
|
|
cy.get(groupsSelector.foldersCreateLabel).verifyVisibleElement(
|
|
"have.text",
|
|
groupsText.folderCreateLabel
|
|
);
|
|
cy.get(groupsSelector.foldersCreateCheck).verifyVisibleElement("be.disabled");
|
|
cy.get(groupsSelector.workspaceVarCheckbox).verifyVisibleElement(
|
|
"be.disabled"
|
|
);
|
|
};
|
|
|
|
export const addAppToGroup = (appName) => {
|
|
cy.get(groupsSelector.appsLink).click();
|
|
cy.wait(500);
|
|
cy.get(groupsSelector.appSearchBox).realClick();
|
|
cy.wait(500);
|
|
cy.get(groupsSelector.searchBoxOptions).contains(appName).click();
|
|
cy.get(groupsSelector.selectAddButton).click();
|
|
cy.contains("tr", appName)
|
|
.parent()
|
|
.within(() => {
|
|
cy.get("td input").eq(1).check();
|
|
});
|
|
cy.verifyToastMessage(
|
|
commonSelectors.toastMessage,
|
|
"App permissions updated"
|
|
);
|
|
};
|
|
|
|
export const addUserToGroup = (groupName, email) => {
|
|
cy.get(groupsSelector.usersLink).click();
|
|
cy.get(".select-search__input").type(email);
|
|
cy.get(".item-renderer").within(() => {
|
|
cy.get("input").check();
|
|
});
|
|
cy.get(`[data-cy="${groupName}-group-add-button"]`).click();
|
|
}; |