## Description Adding cypress tests for divider widget as per this test plan: https://github.com/appsmithorg/TestSmith/issues/2480 and unskip git tests #### Type of change > Please delete options that are not relevant. - Bug fix (non-breaking change which fixes an issue) - New feature (non-breaking change which adds functionality) - Breaking change (fix or feature that would cause existing functionality to not work as expected) - Chore (housekeeping or task changes that don't impact user perception) - This change requires a documentation update > > > #### How Has This Been Tested? locally #### Test Plan > Add Testsmith test cases links that relate to this PR > > #### Issues raised during DP testing > Link issues raised during DP testing for better visiblity and tracking (copy link from comments dropped on this PR) > > > ## Checklist: #### Dev activity - [ ] My code follows the style guidelines of this project - [ ] I have performed a self-review of my own code - [ ] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [ ] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [ ] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag #### QA activity: - [ ] [Speedbreak features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-) have been covered - [ ] Test plan covers all impacted features and [areas of interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-) - [ ] Test plan has been peer reviewed by project stakeholders and other QA members - [ ] Manually tested functionality on DP - [ ] We had an implementation alignment call with stakeholders post QA Round 2 - [ ] Cypress test cases have been added and approved by SDET/manual QA - [ ] Added `Test Plan Approved` label after Cypress tests were reviewed - [ ] Added `Test Plan Approved` label after JUnit tests were reviewed --------- Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
129 lines
4.5 KiB
TypeScript
129 lines
4.5 KiB
TypeScript
export const WIDGET = {
|
|
INPUT_V2: "inputwidgetv2",
|
|
TEXT: "textwidget",
|
|
TEXTNAME: (index: string) => `Text${index}`,
|
|
PHONE_INPUT: "phoneinputwidget",
|
|
CURRENCY_INPUT: "currencyinputwidget",
|
|
BUTTON: "buttonwidget",
|
|
BUTTONNAME: (index: string) => `Button${index}`,
|
|
CODESCANNER: "codescannerwidget",
|
|
CONTAINER: "containerwidget",
|
|
MULTISELECT: "multiselectwidgetv2",
|
|
BUTTON_GROUP: "buttongroupwidget",
|
|
TREESELECT: "singleselecttreewidget",
|
|
TAB: "tabswidget",
|
|
TABLE_V1: "tablewidget",
|
|
TABLE: "tablewidgetv2",
|
|
SWITCHGROUP: "switchgroupwidget",
|
|
SWITCH: "switchwidget",
|
|
SELECT: "selectwidget",
|
|
MULTITREESELECT: "multiselecttreewidget",
|
|
RADIO_GROUP: "radiogroupwidget",
|
|
LIST: "listwidget",
|
|
LIST_V2: "listwidgetv2",
|
|
RATING: "ratewidget",
|
|
CHECKBOXGROUP: "checkboxgroupwidget",
|
|
CHECKBOX: "checkboxwidget",
|
|
CHART: "chartwidget",
|
|
AUDIO: "audiowidget",
|
|
AUDIORECORDER: "audiorecorderwidget",
|
|
CAMERA: "camerawidget",
|
|
FILEPICKER: "filepickerwidgetv2",
|
|
DOCUMENT_VIEWER: "documentviewerwidget",
|
|
VIDEO: "videowidget",
|
|
CATEGORY_SLIDER: "categorysliderwidget",
|
|
NUMBER_SLIDER: "numbersliderwidget",
|
|
RANGE_SLIDER: "rangesliderwidget",
|
|
IFRAME: "iframewidget",
|
|
DIVIDER: "dividerwidget",
|
|
PROGRESS: "progresswidget",
|
|
MODAL: "modalwidget",
|
|
FORM: "formwidget",
|
|
ICONBUTTON: "iconbuttonwidget",
|
|
IMAGE: "imagewidget",
|
|
STATBOX: "statboxwidget",
|
|
JSONFORM: "jsonformwidget",
|
|
MENUBUTTON: "menubuttonwidget",
|
|
} as const;
|
|
|
|
// property pane element selector are maintained here
|
|
export const PROPERTY_SELECTOR = {
|
|
// input
|
|
onClick: ".t--property-control-onclick",
|
|
onSubmit: ".t--property-control-onsubmit",
|
|
text: ".t--property-control-text",
|
|
defaultValue: ".t--property-control-defaultselectedvalues",
|
|
propertyName: ".t--property-control-propertyname",
|
|
onClickFieldName: "onClick",
|
|
TextFieldName: "Text",
|
|
tableData: ".t--property-control-tabledata",
|
|
tableColumnNames: '[data-rbd-draggable-id] input[type="text"]',
|
|
};
|
|
|
|
export const WIDGETSKIT = {
|
|
recorderPrompt: "//button[@status='PERMISSION_PROMPT']",
|
|
recorderStart: "//button[@status='DEFAULT']",
|
|
recorderComplete: "//button[@status='COMPLETE']",
|
|
recorderStop: ".bp3-minimal",
|
|
video: "video",
|
|
iFrame: "iframe",
|
|
videoWidgetYoutubeMuteBtn: ".ytp-mute-button",
|
|
videoWidgetYoutubeLargePlayBtn: ".ytp-large-play-button",
|
|
videoWidgetYoutubePlayBtn: ".ytp-play-button",
|
|
videoWidgetYoutubeVolumeBtn: ".ytp-volume-panel",
|
|
image: "div[data-testid=styledImage]",
|
|
imageDownloadBtn: "//a[@data-testid='t--image-download']",
|
|
imageRotateAntiClockwiseBtn:
|
|
"//a[@data-testid='t--image-download']//parent::div/a[1]",
|
|
imageRotateClockwiseBtn:
|
|
"//a[@data-testid='t--image-download']//parent::div/a[2]",
|
|
styleResetBtn: ".reset-button",
|
|
styleOrangeIcon: ".rounded-full",
|
|
dividerVertical: "[data-testid=dividerVertical]",
|
|
dividerHorizontal: "[data-testid=dividerHorizontal]",
|
|
|
|
};
|
|
type ValueOf<T> = T[keyof T];
|
|
|
|
export const getWidgetSelector = (widget: ValueOf<typeof WIDGET>) =>
|
|
`.t--widget-${widget}`;
|
|
export const getWidgetInputSelector = (widget: ValueOf<typeof WIDGET>) =>
|
|
`.t--widget-${widget} input`;
|
|
|
|
export const modalWidgetSelector = ".t--modal-widget";
|
|
|
|
// export data-testid with user input
|
|
export const progressWidgetProgress = (input: any) =>
|
|
`[data-testid='${input}']`;
|
|
|
|
//switch widget locators
|
|
export const switchlocators = {
|
|
switchGroupLabel: ".switchgroup-label",
|
|
switchTooltip:
|
|
"//*[@data-testid='switchgroup-container']//*[@class='bp3-popover-target']",
|
|
switchWidget: "//*[@data-testid='switchgroup-container']",
|
|
switchWidgetHeight: (height: string) =>
|
|
`//*[@data-testid='switchgroup-container']//div[@height="${height}"]`,
|
|
switchGroupToggleChecked: (value: string) =>
|
|
`//*[text()='${value}']//input[@type="checkbox"]`,
|
|
};
|
|
|
|
export const checkboxlocators = {
|
|
// read Blue here
|
|
checkBoxLabel: (value: string) =>
|
|
`//*[contains(@class,'t--checkbox-widget-label') and text()='${value}']`,
|
|
}
|
|
|
|
export const buttongroupwidgetlocators = {
|
|
buttongroup: ".t--buttongroup-widget",
|
|
buttonSettingInPropPane: ".t--property-control-buttons .t--edit-column-btn",
|
|
menuSettingInPropPane:".t--edit-column-btn",
|
|
newButton:"//*[text()='Add new button']",
|
|
groupButtonValue: "//input[contains(@value,'Group Button')]",
|
|
buttonText: (value: string) => `//*[@class="bp3-button-text" and text()='${value}']`,
|
|
menu: "[data-value='MENU']",
|
|
buttonMenuOptions: (text: string) => `//*[contains(@class,'bp3-menu-item')]//*[text()='${text}']`,
|
|
button:"//*[contains(@class,'t--widget-buttongroupwidget')]//button"
|
|
}
|
|
|