## Description - Locator fixes for cy tests - Missing saga for discard and merge - New component for hot keys Fixes https://github.com/appsmithorg/appsmith/issues/37821 Fixes https://github.com/appsmithorg/appsmith/issues/37822 Fixes https://github.com/appsmithorg/appsmith/issues/37824 ## Automation /ok-to-test tags="@tag.Git" ### 🔍 Cypress test results <!-- This is an auto-generated comment: Cypress test results --> > [!TIP] > 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉 > Workflow run: <https://github.com/appsmithorg/appsmith/actions/runs/12649057943> > Commit: 94c57d0a2398fca8e6cbb4be573586aa98dffbe1 > <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=12649057943&attempt=1" target="_blank">Cypress dashboard</a>. > Tags: `@tag.Git` > Spec: > <hr>Tue, 07 Jan 2025 10:42:55 UTC <!-- end of auto-generated comment: Cypress test results --> ## Communication Should the DevRel and Marketing teams inform users about this change? - [ ] Yes - [ ] No <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit ## Release Notes - **New Features** - Added repository limit error modal to handle scenarios when repository limits are reached. - Introduced Git hot keys for quick access to Git operations. - Enhanced Git synchronization functionality with new merge and discard change capabilities. - Integrated feature flag handling in test suites for Git-related functionalities. - **Improvements** - Standardized test identifiers across Git-related components. - Refined Git modal interactions and state management. - Updated locator references for more consistent testing. - Improved user feedback with success notifications for branch deletions. - **Bug Fixes** - Resolved issues with branch switching and URL handling. - Improved error handling in Git synchronization processes. - **Testing** - Updated Cypress test suites with new feature flag interceptors. - Enhanced test coverage for Git operations and modal interactions. <!-- end of auto-generated comment: release notes by coderabbit.ai -->
109 lines
5.4 KiB
JavaScript
109 lines
5.4 KiB
JavaScript
export default {
|
|
CreateApp: "span[class='bp3-button-text']",
|
|
searchInput: "input[type='text']",
|
|
appEditIcon: ".t--application-edit-link",
|
|
publishButton: ".t--application-publish-btn",
|
|
shareButton: ".t--application-share-btn",
|
|
deployPopupOptionTrigger: ".t--deploy-popup-option-trigger",
|
|
currentDeployedPreviewBtn: ".t--current-deployed-preview-btn",
|
|
publishCrossButton: "span[icon='small-cross']",
|
|
homePageID: "//div[@id='root']",
|
|
appMoreIcon: ".t--application-card .ads-v2-button__content",
|
|
forkAppFromMenu: "[data-testid=t--fork-app]",
|
|
exportAppFromMenu: "[data-testid=t--export-app]",
|
|
forkAppWorkspaceButton: ".t--fork-app-to-workspace-button",
|
|
selectAction: "#Base",
|
|
deleteApp: "[data-testid=t--delete]",
|
|
createNewAppButton: ".t--new-button",
|
|
deleteAppConfirm: "[data-testid=t--delete-confirm]",
|
|
homeIcon: ".t--appsmith-logo",
|
|
inputAppName: "input[name=applicationName]",
|
|
createNew: ".createnew",
|
|
createWorkspace: "[data-testid=t--workspace-new-workspace-auto-create]",
|
|
inputWorkspaceName: "//input[@name='name']",
|
|
submitBtn: "//span[text()='Submit']",
|
|
workspaceMenu: "//span[text()='TestShareWorkspace']",
|
|
members: "//span[contains(text(),'Members')]",
|
|
share: "//span[contains(text(),'Share')]",
|
|
WorkspaceSettings: "//span[contains(text(),'Workspace Settings')]",
|
|
MemberSettings: "//span[contains(text(),'Members')]",
|
|
inviteUser: "//span[text()='Invite Users']",
|
|
inviteUserMembersPage: "[data-testid=t--page-header-input]",
|
|
email: "//input[@type='email']",
|
|
selectRole: "[data-testid='t--invite-role-input']",
|
|
adminRole: `//div[contains(@class, 'rc-select-item-option-content')]//span[1][text()='Administrator']`,
|
|
viewerRole:
|
|
"//div[contains(@class, 'rc-select-item-option-content')]//span[1][text()='App Viewer']",
|
|
developerRole:
|
|
"//div[contains(@class, 'rc-select-item-option-content')]//span[1][text()='Developer']",
|
|
inviteBtn: "//button//span[text()='Invite']",
|
|
manageUsers: ".manageUsers",
|
|
DeleteBtn: "[data-testid=t--deleteUser]",
|
|
ShareBtn: "//button//span[2][text()='Share']",
|
|
launchBtn: "//span[text()='Launch']",
|
|
appView: ".t--application-view-link",
|
|
applicationCard: ".t--application-card",
|
|
appsContainer: ".t--applications-container",
|
|
appHome: "//a[@href='/applications']",
|
|
emailList: "[data-colindex='0']",
|
|
workspaceList: ".t--workspace-section:contains(",
|
|
workspaceSectionBtn: ".t--workspace-section .bp3-button",
|
|
shareWorkspace: ") button:contains('Share')",
|
|
workspaceSection: "a:contains(",
|
|
createAppFrWorkspace: ") .t--new-button",
|
|
shareApp: ".t--application-share-btn",
|
|
enablePublicAccess:
|
|
"//div[contains(@class, 't--share-public-toggle')]//input[@role='switch']",
|
|
enablePublicAccessSettingsPage: "[data-testid=t--embed-settings-application-public]",
|
|
switchLabel: ".ads-v2-switch__label",
|
|
closeBtn: ".ads-v2-modal__content-header-close-button",
|
|
editModeInviteModalCloseBtn: ".ads-v2-modal__content-header-close-button",
|
|
applicationName: ".t--application-name",
|
|
applicationEditMenu: ".ads-v2-menu__menu-item-children",
|
|
editingAppName: "bp3-editable-text-editing",
|
|
portalMenuItem: ".ads-v2-menu__menu-item-children",
|
|
profileMenu: ".t--profile-menu-icon",
|
|
signOutIcon: ".t--sign-out",
|
|
headerAppSmithLogo: ".t--Appsmith-logo-image",
|
|
applicationCardName: "[data-testid=t--app-card-name]",
|
|
applicationIconSelector: ".t--icon-not-selected",
|
|
applicationColorSelector: ".t--color-not-selected",
|
|
applicationBackgroundColor: ".t--application-card-background",
|
|
workspaceSettingOption: "[data-testid=t--workspace-setting]",
|
|
workspaceImportAppOption: "[data-testid=t--workspace-import-app]",
|
|
workspaceImportAppModal: ".t--import-application-modal",
|
|
workspaceImportAppButton: "[data-testid=t--workspace-import-app-button]",
|
|
leaveWorkspaceConfirmModal: ".t--member-delete-confirmation-modal",
|
|
leaveWorkspaceConfirmButton: "[data-testid=t--workspace-leave-button]",
|
|
workspaceNameInput: "[data-testid=t--workspace-name-input]",
|
|
renameWorkspaceInput: ".t--workspace-rename-input",
|
|
workspaceEmailInput: "[data-testid=t--workspace-email-input]",
|
|
workspaceWebsiteInput: "[data-testid=t--workspace-website-input]",
|
|
workspaceHeaderName: "[data-testid='t--page-title']",
|
|
leftPanelContainer: "[data-testid=t--left-panel]",
|
|
themeText: "label div",
|
|
shareUserIcons: ".t--workspace-share-user-icons",
|
|
toastMessage: "div.Toastify__toast",
|
|
uploadLogo: "//div/form/input",
|
|
removeLogo: "[data-testid=t--remove-logo]",
|
|
generalTab: "//li//span[text()='General']",
|
|
membersTab: "//li//span[text()='Members']",
|
|
cancelBtn: "//span[text()='Cancel']",
|
|
submit: "button:contains('Submit')",
|
|
workspaceNamePopover: ".ads-v2-button__content-icon-start",
|
|
workspaceNamePopoverContent: ".ads-v2-menu",
|
|
workspaceCompleteSection: ".t--workspace-section",
|
|
workspaceNameText: ".t--workspace-name-text",
|
|
workspaceHeading: "//span[text()='Workspaces']",
|
|
optionsIcon: ".t--options-icon",
|
|
reconnectDatasourceModal: "[data-testid='reconnect-datasource-modal']",
|
|
importAppProgressWrapper: ".t-import-app-progress-wrapper",
|
|
backtoHome: ".t--app-viewer-back-to-apps-button",
|
|
newButtonCreateApplication: "[data-testid=t--workspace-action-create-app]",
|
|
helpButton:".t--help-menu-option",
|
|
noEntityFound:".no-search-results",
|
|
initialWorkspace:"[data-testid^='Untitled workspace']",
|
|
initialApplication:"[data-testid^='Untitled application']",
|
|
_entitySearchBar:"[data-testid='t--application-search-input']"
|
|
};
|