|
|
|
@ -9,14 +9,15 @@ import { roles } from "../../support/page_objects/projectConstants";
|
|
|
|
|
export function _advSettings(roleType, mode) { |
|
|
|
|
cy.log(roleType, mode); |
|
|
|
|
|
|
|
|
|
if(mode === 'baseShare') { |
|
|
|
|
|
|
|
|
|
if (mode === "baseShare") { |
|
|
|
|
// open modal
|
|
|
|
|
cy.get('.nc-project-menu').should('exist').click() |
|
|
|
|
cy.getActiveMenu(".nc-dropdown-project-menu").find(`[data-menu-id="language"]`).should('exist') |
|
|
|
|
cy.get(".nc-project-menu").should("exist").click(); |
|
|
|
|
cy.getActiveMenu(".nc-dropdown-project-menu") |
|
|
|
|
.find(`[data-menu-id="language"]`) |
|
|
|
|
.should("exist"); |
|
|
|
|
|
|
|
|
|
// click again to close modal
|
|
|
|
|
cy.get('.nc-project-menu').should('exist').click() |
|
|
|
|
cy.get(".nc-project-menu").should("exist").click(); |
|
|
|
|
return; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
@ -24,27 +25,34 @@ export function _advSettings(roleType, mode) {
|
|
|
|
|
true == roles[roleType].validations.advSettings ? "exist" : "not.exist"; |
|
|
|
|
|
|
|
|
|
// cy.get(".nc-team-settings").should(validationString);
|
|
|
|
|
cy.get('.nc-project-menu').should('exist').click() |
|
|
|
|
cy.getActiveMenu(".nc-dropdown-project-menu").find(`[data-menu-id="preview-as"]`).should(validationString) |
|
|
|
|
cy.getActiveMenu(".nc-dropdown-project-menu").find(`[data-menu-id="teamAndSettings"]:visible`).should(validationString) |
|
|
|
|
cy.get(".nc-project-menu").should("exist").click(); |
|
|
|
|
cy.getActiveMenu(".nc-dropdown-project-menu") |
|
|
|
|
.find(`[data-menu-id="preview-as"]`) |
|
|
|
|
.should(validationString); |
|
|
|
|
cy.getActiveMenu(".nc-dropdown-project-menu") |
|
|
|
|
.find(`[data-menu-id="teamAndSettings"]:visible`) |
|
|
|
|
.should(validationString); |
|
|
|
|
|
|
|
|
|
if (true === roles[roleType].validations.advSettings) { |
|
|
|
|
cy.getActiveMenu(".nc-dropdown-project-menu").find(`[data-menu-id="teamAndSettings"]:visible`).should(validationString).click() |
|
|
|
|
cy.getActiveMenu(".nc-dropdown-project-menu") |
|
|
|
|
.find(`[data-menu-id="teamAndSettings"]:visible`) |
|
|
|
|
.should(validationString) |
|
|
|
|
.click(); |
|
|
|
|
|
|
|
|
|
cy.get(`[data-menu-id="teamAndAuth"]`).should('exist') |
|
|
|
|
cy.get(`[data-menu-id="appStore"]`).should('exist') |
|
|
|
|
cy.get(`[data-menu-id="metaData"]`).should('exist') |
|
|
|
|
cy.get(`[data-menu-id="audit"]`).should('exist') |
|
|
|
|
cy.get(`[data-menu-id="teamAndAuth"]`).should("exist"); |
|
|
|
|
cy.get(`[data-menu-id="appStore"]`).should("exist"); |
|
|
|
|
cy.get(`[data-menu-id="metaData"]`).should("exist"); |
|
|
|
|
cy.get(`[data-menu-id="audit"]`).should("exist"); |
|
|
|
|
|
|
|
|
|
settingsPage.closeMenu() |
|
|
|
|
settingsPage.closeMenu(); |
|
|
|
|
} else { |
|
|
|
|
cy.get('.nc-project-menu').should('exist').click() |
|
|
|
|
cy.get(".nc-project-menu").should("exist").click(); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
// float menu in preview mode
|
|
|
|
|
if ("preview" === mode) { |
|
|
|
|
cy.get(".nc-floating-preview-btn").should("exist"); |
|
|
|
|
cy.get('.nc-floating-preview-btn') |
|
|
|
|
cy.get(".nc-floating-preview-btn") |
|
|
|
|
.find(`[type="radio"][value="${roles[roleType].name}"]`) |
|
|
|
|
.should("be.checked"); |
|
|
|
|
} |
|
|
|
@ -67,8 +75,14 @@ export function _editSchema(roleType, mode) {
|
|
|
|
|
cy.get(".ant-dropdown-content:visible").should(validationString); |
|
|
|
|
|
|
|
|
|
if (validationString === "exist") { |
|
|
|
|
cy.getActiveMenu(".nc-dropdown-tree-view-context-menu").find('[role="menuitem"]').contains("Delete").should("exist"); |
|
|
|
|
cy.getActiveMenu(".nc-dropdown-tree-view-context-menu").find('[role="menuitem"]').contains("Rename").should("exist"); |
|
|
|
|
cy.getActiveMenu(".nc-dropdown-tree-view-context-menu") |
|
|
|
|
.find('[role="menuitem"]') |
|
|
|
|
.contains("Delete") |
|
|
|
|
.should("exist"); |
|
|
|
|
cy.getActiveMenu(".nc-dropdown-tree-view-context-menu") |
|
|
|
|
.find('[role="menuitem"]') |
|
|
|
|
.contains("Rename") |
|
|
|
|
.should("exist"); |
|
|
|
|
|
|
|
|
|
// click on a cell to close table context menu
|
|
|
|
|
mainPage.getCell(columnName, 3).click(); |
|
|
|
@ -79,15 +93,23 @@ export function _editSchema(roleType, mode) {
|
|
|
|
|
cy.get(".nc-column-add").should(validationString); |
|
|
|
|
|
|
|
|
|
// update column (edit/ delete menu)
|
|
|
|
|
cy.get('.nc-ui-dt-dropdown').should(validationString) |
|
|
|
|
cy.get(".nc-ui-dt-dropdown").should(validationString); |
|
|
|
|
|
|
|
|
|
if (validationString === "exist") { |
|
|
|
|
cy.get('.nc-import-menu').should('exist').click(); |
|
|
|
|
cy.getActiveMenu(".nc-dropdown-import-menu").should('exist') |
|
|
|
|
cy.getActiveMenu(".nc-dropdown-import-menu").find('.ant-dropdown-menu-item').contains('Airtable') |
|
|
|
|
cy.getActiveMenu(".nc-dropdown-import-menu").find('.ant-dropdown-menu-item').contains('CSV file') |
|
|
|
|
cy.getActiveMenu(".nc-dropdown-import-menu").find('.ant-dropdown-menu-item').contains('JSON file') |
|
|
|
|
cy.getActiveMenu(".nc-dropdown-import-menu").find('.ant-dropdown-menu-item').contains('Microsoft Excel') |
|
|
|
|
cy.get(".nc-import-menu").should("exist").click(); |
|
|
|
|
cy.getActiveMenu(".nc-dropdown-import-menu").should("exist"); |
|
|
|
|
cy.getActiveMenu(".nc-dropdown-import-menu") |
|
|
|
|
.find(".ant-dropdown-menu-item") |
|
|
|
|
.contains("Airtable"); |
|
|
|
|
cy.getActiveMenu(".nc-dropdown-import-menu") |
|
|
|
|
.find(".ant-dropdown-menu-item") |
|
|
|
|
.contains("CSV file"); |
|
|
|
|
cy.getActiveMenu(".nc-dropdown-import-menu") |
|
|
|
|
.find(".ant-dropdown-menu-item") |
|
|
|
|
.contains("JSON file"); |
|
|
|
|
cy.getActiveMenu(".nc-dropdown-import-menu") |
|
|
|
|
.find(".ant-dropdown-menu-item") |
|
|
|
|
.contains("Microsoft Excel"); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
@ -99,11 +121,11 @@ export function _editData(roleType, mode) {
|
|
|
|
|
cy.openTableTab(columnName, 25); |
|
|
|
|
|
|
|
|
|
// add row button
|
|
|
|
|
cy.get('.nc-add-new-row-btn:visible').should(validationString); |
|
|
|
|
cy.get(".nc-add-new-row-btn:visible").should(validationString); |
|
|
|
|
|
|
|
|
|
// add button at bottom of page
|
|
|
|
|
mainPage.getCell(columnName, 25).scrollIntoView(); |
|
|
|
|
cy.get('.nc-grid-add-new-cell:visible').should(validationString); |
|
|
|
|
cy.get(".nc-grid-add-new-cell:visible").should(validationString); |
|
|
|
|
|
|
|
|
|
// update row option (right click)
|
|
|
|
|
//
|
|
|
|
@ -114,10 +136,18 @@ export function _editData(roleType, mode) {
|
|
|
|
|
if (validationString === "exist") { |
|
|
|
|
// right click options will exist (only for 'exist' case)
|
|
|
|
|
//
|
|
|
|
|
cy.getActiveMenu(".nc-dropdown-grid-context-menu").contains("Insert New Row").should(validationString); |
|
|
|
|
cy.getActiveMenu(".nc-dropdown-grid-context-menu").contains("Clear cell").should(validationString); |
|
|
|
|
cy.getActiveMenu(".nc-dropdown-grid-context-menu").contains("Delete Row").should(validationString); |
|
|
|
|
cy.getActiveMenu(".nc-dropdown-grid-context-menu").contains("Delete Selected Rows").should(validationString); |
|
|
|
|
cy.getActiveMenu(".nc-dropdown-grid-context-menu") |
|
|
|
|
.contains("Insert New Row") |
|
|
|
|
.should(validationString); |
|
|
|
|
cy.getActiveMenu(".nc-dropdown-grid-context-menu") |
|
|
|
|
.contains("Clear cell") |
|
|
|
|
.should(validationString); |
|
|
|
|
cy.getActiveMenu(".nc-dropdown-grid-context-menu") |
|
|
|
|
.contains("Delete Row") |
|
|
|
|
.should(validationString); |
|
|
|
|
cy.getActiveMenu(".nc-dropdown-grid-context-menu") |
|
|
|
|
.contains("Delete Selected Rows") |
|
|
|
|
.should(validationString); |
|
|
|
|
|
|
|
|
|
// cy.get("body").type("{esc}");
|
|
|
|
|
mainPage.getCell("City", 13).click(); |
|
|
|
@ -126,32 +156,38 @@ export function _editData(roleType, mode) {
|
|
|
|
|
//
|
|
|
|
|
mainPage |
|
|
|
|
.getRow(1) |
|
|
|
|
.find('.nc-row-no').should('exist') |
|
|
|
|
.find(".nc-row-no") |
|
|
|
|
.should("exist") |
|
|
|
|
.eq(0) |
|
|
|
|
.trigger('mouseover', { force: true }) |
|
|
|
|
cy.get(".nc-row-expand") |
|
|
|
|
.trigger("mouseover", { force: true }); |
|
|
|
|
cy.get(".nc-row-expand").should("exist").eq(10).click({ force: true }); |
|
|
|
|
cy.getActiveDrawer(".nc-drawer-expanded-form") |
|
|
|
|
.find("button") |
|
|
|
|
.contains("Save row") |
|
|
|
|
.should("exist"); |
|
|
|
|
cy.getActiveDrawer(".nc-drawer-expanded-form") |
|
|
|
|
.find("button") |
|
|
|
|
.contains("Cancel") |
|
|
|
|
.should("exist") |
|
|
|
|
.eq(10) |
|
|
|
|
.click({ force: true }); |
|
|
|
|
cy.getActiveDrawer().find("button").contains("Save row").should("exist"); |
|
|
|
|
cy.getActiveDrawer().find("button").contains("Cancel").should("exist").click(); |
|
|
|
|
.click(); |
|
|
|
|
} else { |
|
|
|
|
// update cell contents option using row expander should be disabled
|
|
|
|
|
//
|
|
|
|
|
cy.get(".nc-row-expand") |
|
|
|
|
cy.get(".nc-row-expand").should("exist").eq(10).click({ force: true }); |
|
|
|
|
cy.getActiveDrawer(".nc-drawer-expanded-form") |
|
|
|
|
.find("button:disabled") |
|
|
|
|
.contains("Save row") |
|
|
|
|
.should("exist"); |
|
|
|
|
cy.getActiveDrawer(".nc-drawer-expanded-form") |
|
|
|
|
.find("button") |
|
|
|
|
.contains("Cancel") |
|
|
|
|
.should("exist") |
|
|
|
|
.eq(10) |
|
|
|
|
.click({ force: true }); |
|
|
|
|
cy.getActiveDrawer().find("button:disabled").contains("Save row").should("exist"); |
|
|
|
|
cy.getActiveDrawer().find("button").contains("Cancel").should("exist").click(); |
|
|
|
|
.click(); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
// double click cell entries to edit
|
|
|
|
|
//
|
|
|
|
|
mainPage.getCell("City", 5) |
|
|
|
|
.dblclick() |
|
|
|
|
.find("input") |
|
|
|
|
.should(validationString); |
|
|
|
|
mainPage.getCell("City", 5).dblclick().find("input").should(validationString); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
// read &/ update comment
|
|
|
|
@ -171,10 +207,7 @@ export function _editComment(roleType, mode) {
|
|
|
|
|
|
|
|
|
|
// click on comment icon & type comment
|
|
|
|
|
//
|
|
|
|
|
cy.get(".nc-row-expand") |
|
|
|
|
.should("exist") |
|
|
|
|
.eq(10) |
|
|
|
|
.click({force:true}); |
|
|
|
|
cy.get(".nc-row-expand").should("exist").eq(10).click({ force: true }); |
|
|
|
|
|
|
|
|
|
// Expected response:
|
|
|
|
|
// Viewer: Not able to see comment option
|
|
|
|
@ -184,23 +217,28 @@ export function _editComment(roleType, mode) {
|
|
|
|
|
cy.wait(3000); |
|
|
|
|
|
|
|
|
|
if ("viewer" === roleType) { |
|
|
|
|
cy.getActiveDrawer() |
|
|
|
|
.should('exist') |
|
|
|
|
cy.getActiveDrawer(".nc-drawer-expanded-form") |
|
|
|
|
.should("exist") |
|
|
|
|
.find(".nc-toggle-comments") |
|
|
|
|
.should("not.exist"); |
|
|
|
|
} else { |
|
|
|
|
cy.getActiveDrawer() |
|
|
|
|
.should('exist') |
|
|
|
|
cy.getActiveDrawer(".nc-drawer-expanded-form") |
|
|
|
|
.should("exist") |
|
|
|
|
.find(".nc-toggle-comments") |
|
|
|
|
.should("exist") |
|
|
|
|
.click(); |
|
|
|
|
|
|
|
|
|
cy.getActiveDrawer().find(".nc-comment-box").should('exist').type("Comment-1{enter}"); |
|
|
|
|
cy.getActiveDrawer(".nc-drawer-expanded-form") |
|
|
|
|
.find(".nc-comment-box") |
|
|
|
|
.should("exist") |
|
|
|
|
.type("Comment-1{enter}"); |
|
|
|
|
// cy.toastWait('Comment added successfully')
|
|
|
|
|
cy.getActiveDrawer().find(".nc-toggle-comments").click(); |
|
|
|
|
cy.getActiveDrawer(".nc-drawer-expanded-form") |
|
|
|
|
.find(".nc-toggle-comments") |
|
|
|
|
.click(); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
cy.getActiveDrawer() |
|
|
|
|
cy.getActiveDrawer(".nc-drawer-expanded-form") |
|
|
|
|
.find("button") |
|
|
|
|
.contains("Cancel") |
|
|
|
|
.should("exist") |
|
|
|
@ -228,12 +266,12 @@ export function _viewMenu(roleType, mode) {
|
|
|
|
|
// Download / Upload CSV
|
|
|
|
|
menuWithSubmenuCount = 2; |
|
|
|
|
// Get API Snippet
|
|
|
|
|
menuWithoutSubmenuCount = 1 |
|
|
|
|
if(mode === 'baseShare') menuWithoutSubmenuCount = 0 |
|
|
|
|
menuWithoutSubmenuCount = 1; |
|
|
|
|
if (mode === "baseShare") menuWithoutSubmenuCount = 0; |
|
|
|
|
} else if (roleType === "commenter" || roleType === "viewer") { |
|
|
|
|
// Download CSV & Download excel
|
|
|
|
|
menuWithSubmenuCount = 0; |
|
|
|
|
menuWithoutSubmenuCount = 2 |
|
|
|
|
menuWithoutSubmenuCount = 2; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
// view list field (default GRID view)
|
|
|
|
@ -249,10 +287,10 @@ export function _viewMenu(roleType, mode) {
|
|
|
|
|
// actions menu (more), only download csv should be visible for non-previlaged users
|
|
|
|
|
cy.get(".nc-actions-menu-btn").click(); |
|
|
|
|
cy.getActiveMenu(".nc-dropdown-actions-menu") |
|
|
|
|
.find('.ant-dropdown-menu-submenu:visible') |
|
|
|
|
.find(".ant-dropdown-menu-submenu:visible") |
|
|
|
|
.should("have.length", menuWithSubmenuCount); |
|
|
|
|
cy.getActiveMenu(".nc-dropdown-actions-menu") |
|
|
|
|
.find('.ant-dropdown-menu-item:visible') |
|
|
|
|
.find(".ant-dropdown-menu-item:visible") |
|
|
|
|
.should("have.length", menuWithoutSubmenuCount); |
|
|
|
|
// click again to close menu
|
|
|
|
|
cy.get(".nc-actions-menu-btn").click(); |
|
|
|
@ -289,6 +327,6 @@ export function enableTableAccess(tbl, role) {
|
|
|
|
|
export function _accessControl(roleType, previewMode) { |
|
|
|
|
let validationString = roleType === "creator" ? "exist" : "not.exist"; |
|
|
|
|
|
|
|
|
|
cy.get(`.nc-project-tree-tbl-Language`).should(validationString) |
|
|
|
|
cy.get(`.nc-project-tree-tbl-CustomerList`).should(validationString) |
|
|
|
|
cy.get(`.nc-project-tree-tbl-Language`).should(validationString); |
|
|
|
|
cy.get(`.nc-project-tree-tbl-CustomerList`).should(validationString); |
|
|
|
|
} |
|
|
|
|