dimsum-e2e-tests 3.45.0-rc.0 → 3.45.0-rc.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +18 -0
- package/ds-apppicker/DSAppPickerCO.js +2 -0
- package/ds-apppicker/aria-disabled/DSAppPicker.aria-disabled.axe-core.func.spec.js +24 -0
- package/ds-apppicker/aria-disabled/DSAppPicker.aria-disabled.visual.spec.js +19 -0
- package/ds-autocomplete/DSAutocomplete.visual.spec.js +2 -1
- package/ds-button-v3/DSButtonV3CO.js +4 -0
- package/ds-controlled-form/ds-controlled-checkbox/aria-disabled/DSControlledCheckbox.axe-core.aria-disabled.func.spec.js +1 -1
- package/ds-controlled-form/ds-input-text/DSInputTextCO.js +2 -0
- package/ds-controlled-form/ds-input-text/placeholder/DSInputText.placeholder.visual.spec.js +15 -0
- package/ds-data-table-async/dnd/DSDataTable.dnd.func.spec.js +0 -24
- package/ds-data-table-async/dnd/DSDataTable.dnd_fixed-width.func.spec.js +53 -0
- package/ds-data-table-async/expandable/DSDataTable.expandable.visual.spec.js +1 -0
- package/ds-data-table-async/select/DSDataTable.select.axe-core.func.spec.js +3 -3
- package/ds-floating-context/DSFloatingContext.visual.spec.js +31 -0
- package/ds-floating-context/DSFloatingContextCO.js +17 -0
- package/ds-modal-slide/basic/ModalSlide.basic.func.spec.js +4 -0
- package/ds-side-panel/DSSidePanel.func.spec.js +0 -126
- package/ds-side-panel/DSSidePanel.kb-nav.func.spec.js +205 -0
- package/ds-tooltip-v3/DSTooltipV3.visual.spec.js +2 -1
- package/package.json +119 -119
- package/z-index/ZIndex.visual.spec.js +20 -10
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,24 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
## [3.45.0-rc.2](https://git.elliemae.io/platform-ui/dimsum/compare/v3.45.0-rc.1...v3.45.0-rc.2) (2024-09-03)
|
|
7
|
+
|
|
8
|
+
### Features
|
|
9
|
+
|
|
10
|
+
- ds-floating-context:: visual test added [PUI-14536](https://jira.elliemae.io/browse/PUI-14536) ([#7039](https://git.elliemae.io/platform-ui/dimsum/issues/7039)) ([f62b961](https://git.elliemae.io/platform-ui/dimsum/commit/f62b961fe6e8f6b41e05611bd592191205cb7c46))
|
|
11
|
+
- ds-form-input-text:: visual test added for placeholder prop [PUI-14441](https://jira.elliemae.io/browse/PUI-14441) ([#7043](https://git.elliemae.io/platform-ui/dimsum/issues/7043)) ([93ca48b](https://git.elliemae.io/platform-ui/dimsum/commit/93ca48b7741f7145e8b77e4b8bdda2d21280969f))
|
|
12
|
+
|
|
13
|
+
## [3.45.0-rc.1](https://git.elliemae.io/platform-ui/dimsum/compare/v3.45.0-rc.0...v3.45.0-rc.1) (2024-08-26)
|
|
14
|
+
|
|
15
|
+
### Features
|
|
16
|
+
|
|
17
|
+
- ds-app-picker:: add visual and axe-core test for applyAriaDisabled [PUI-14502](https://jira.elliemae.io/browse/PUI-14502) ([#7034](https://git.elliemae.io/platform-ui/dimsum/issues/7034)) ([ecc99ca](https://git.elliemae.io/platform-ui/dimsum/commit/ecc99ca1ed04941dbf5a50fba07791b7f3fb82cf))
|
|
18
|
+
|
|
19
|
+
### Bug Fixes
|
|
20
|
+
|
|
21
|
+
- dimsum:: fix broken e2e test cases - DataTable, SidePanel, Autocomplete and ZIndex [PUI-14479](https://jira.elliemae.io/browse/PUI-14479) ([#7033](https://git.elliemae.io/platform-ui/dimsum/issues/7033)) ([edf329b](https://git.elliemae.io/platform-ui/dimsum/commit/edf329bb83eaa8262424f71ab5a9cca0e9b12b12))
|
|
22
|
+
- dimsum:: fix broken e2e test cases for Tooltip, DataTable, ModalSlide and TooltipV3 [PUI-14511](https://jira.elliemae.io/browse/PUI-14511) ([#7037](https://git.elliemae.io/platform-ui/dimsum/issues/7037)) ([4eb3074](https://git.elliemae.io/platform-ui/dimsum/commit/4eb30740240e9af260f6690b2e00d95d74e26eaa))
|
|
23
|
+
|
|
6
24
|
## [3.45.0-rc.0](https://git.elliemae.io/platform-ui/dimsum/compare/v3.44.0-rc.1...v3.45.0-rc.0) (2024-08-23)
|
|
7
25
|
|
|
8
26
|
**Note:** Version bump only for package dimsum-e2e-tests
|
|
@@ -12,6 +12,8 @@ export default class DSAppPickerCO extends PageObject {
|
|
|
12
12
|
|
|
13
13
|
static minHeightURL = new Urlbuilder(`${PATH_E2E_APP_PICKER}`, 'min-height-test');
|
|
14
14
|
|
|
15
|
+
static applyAriaDisabledURL = new Urlbuilder(`${PATH_E2E_APP_PICKER}`, 'apply-aria-disabled-test');
|
|
16
|
+
|
|
15
17
|
// Snapshots
|
|
16
18
|
static snapshotPath(example = 'basic') {
|
|
17
19
|
return PageObject.getSnapshotPathBuilder('AppPicker', example);
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/* eslint-disable max-len */
|
|
2
|
+
import { Key } from 'webdriverio';
|
|
3
|
+
import DSAppPickerCO from '../DSAppPickerCO';
|
|
4
|
+
import { axeCoreCheck } from '../../helpers';
|
|
5
|
+
|
|
6
|
+
if (
|
|
7
|
+
(!browser.capabilities['ice:options'].isPhone &&
|
|
8
|
+
!browser.capabilities['ice:options'].isTablet &&
|
|
9
|
+
browser.capabilities.browserName === 'Chrome') ||
|
|
10
|
+
browser.capabilities.browserName === 'chrome'
|
|
11
|
+
) {
|
|
12
|
+
describe('PUI-14500 - AppPicker:: applyAriaDisabled prop - axe-core test', () => {
|
|
13
|
+
before('loading page', async () => {
|
|
14
|
+
const errorOnGo = await DSAppPickerCO.applyAriaDisabledURL.go();
|
|
15
|
+
if (errorOnGo) throw errorOnGo;
|
|
16
|
+
});
|
|
17
|
+
it('01: should display chip with aria-disabled focused in AppPicker and pass axe-core scan', async () => {
|
|
18
|
+
await browser.keys(Key.Tab);
|
|
19
|
+
await browser.keys(Key.Enter);
|
|
20
|
+
const result = await axeCoreCheck();
|
|
21
|
+
expect(result.length).toBe(0);
|
|
22
|
+
});
|
|
23
|
+
});
|
|
24
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/* eslint-disable wdio/no-pause */
|
|
2
|
+
import { Key } from 'webdriverio';
|
|
3
|
+
import DSAppPickerCO from '../DSAppPickerCO';
|
|
4
|
+
|
|
5
|
+
if (!browser.capabilities['ice:options'].isPhone && !browser.capabilities['ice:options'].isTablet) {
|
|
6
|
+
describe('PUI-14499 - AppPicker:: aria disabled -visual', () => {
|
|
7
|
+
before('loading page', async () => {
|
|
8
|
+
const errorOnGo = await DSAppPickerCO.applyAriaDisabledURL.go();
|
|
9
|
+
if (errorOnGo) throw errorOnGo;
|
|
10
|
+
await browser.maximizeWindow();
|
|
11
|
+
});
|
|
12
|
+
it('01: should display AppPicker item with aria-disabled focused', async () => {
|
|
13
|
+
await browser.keys(Key.Tab);
|
|
14
|
+
await browser.keys(Key.Enter);
|
|
15
|
+
const snapshot = await browser.checkSnapshot(DSAppPickerCO.snapshotPath('appPicker-aria-disabled-focused'));
|
|
16
|
+
await expect(snapshot).toEqual(0);
|
|
17
|
+
});
|
|
18
|
+
});
|
|
19
|
+
}
|
|
@@ -9,11 +9,12 @@ if (!browser.capabilities['ice:options'].isPhone && !browser.capabilities['ice:o
|
|
|
9
9
|
if (errorOnGo) throw errorOnGo;
|
|
10
10
|
});
|
|
11
11
|
it('01: should display section titles correctly', async () => {
|
|
12
|
+
await browser.eyesOpen();
|
|
12
13
|
await browser.keys(Key.Tab);
|
|
13
14
|
await type('4');
|
|
14
15
|
const menulist = await DSAutocompleteCO.getAutocompleteMenuList();
|
|
15
16
|
await menulist.waitForDisplayed({ timeout: 2000 });
|
|
16
|
-
const snapshot = await browser.
|
|
17
|
+
const snapshot = await browser.eyesCheckSnapshot(DSAutocompleteCO.snapshotPath('autocomplete-section-titles'));
|
|
17
18
|
await expect(snapshot).toEqual(0);
|
|
18
19
|
});
|
|
19
20
|
});
|
|
@@ -18,6 +18,10 @@ export default class DSButtonV3CO extends PageObject {
|
|
|
18
18
|
return $$('[data-testid="ds-button"]')[index];
|
|
19
19
|
}
|
|
20
20
|
|
|
21
|
+
static async getButton() {
|
|
22
|
+
return $('[data-testid="ds-button"]');
|
|
23
|
+
}
|
|
24
|
+
|
|
21
25
|
// Snapshot
|
|
22
26
|
static snapshotPath(example = 'basic') {
|
|
23
27
|
return PageObject.getSnapshotPathBuilder('ButtonV3', example);
|
|
@@ -21,6 +21,8 @@ export default class DSLargeInputCO extends PageObject {
|
|
|
21
21
|
|
|
22
22
|
static applyAriaDisabled = new Urlbuilder(PATH_E2E_CONTROLLEDINPUT, 'apply-aria-disabled-test');
|
|
23
23
|
|
|
24
|
+
static placeholderURL = new Urlbuilder(PATH_E2E_CONTROLLEDINPUT, 'place-holder-test');
|
|
25
|
+
|
|
24
26
|
static async getAutocompleteMenuList() {
|
|
25
27
|
return $('[data-testid="autocomplete-menu-list"]');
|
|
26
28
|
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import DSInputTextCO from '../DSInputTextCO';
|
|
2
|
+
|
|
3
|
+
if (!browser.capabilities['ice:options'].isPhone && !browser.capabilities['ice:options'].isTablet) {
|
|
4
|
+
describe('PUI-14538 - [InputText] placeholder prop - visual Test', () => {
|
|
5
|
+
before('loading page', async () => {
|
|
6
|
+
const errorOnGo = await DSInputTextCO.placeholderURL.go();
|
|
7
|
+
if (errorOnGo) throw errorOnGo;
|
|
8
|
+
});
|
|
9
|
+
it('01: should display a showcase of InputText component with the prop placeholder', async () => {
|
|
10
|
+
await browser.eyesOpen();
|
|
11
|
+
const snapshot = await browser.eyesCheckSnapshot(DSInputTextCO.snapshotPath('input-text-placeholder'));
|
|
12
|
+
await expect(snapshot).toEqual(0);
|
|
13
|
+
});
|
|
14
|
+
});
|
|
15
|
+
}
|
|
@@ -3,7 +3,6 @@
|
|
|
3
3
|
import { Key } from 'webdriverio';
|
|
4
4
|
import DSDataTableCO from '../DSDataTableCO';
|
|
5
5
|
import { RowCO, CellCO, HeaderCO } from '../components';
|
|
6
|
-
import { tabStops, sendKeyRepeat } from '../../helpers';
|
|
7
6
|
|
|
8
7
|
// Keyboard behavior is subject to changes once the UX team determines which's the way to go in terms of accessibility
|
|
9
8
|
|
|
@@ -109,29 +108,6 @@ if (!browser.capabilities['ice:options'].isPhone && !browser.capabilities['ice:o
|
|
|
109
108
|
});
|
|
110
109
|
});
|
|
111
110
|
|
|
112
|
-
describe('PUI-9773 - DataTable, Dnd columns - fixed widht and scrollbar', () => {
|
|
113
|
-
before('loading page', async () => {
|
|
114
|
-
const errorOnGo = await DSDataTableCO.DndColumnsFixedWidth.go();
|
|
115
|
-
if (errorOnGo) throw errorOnGo;
|
|
116
|
-
await DSDataTableCO.waitForDataTable();
|
|
117
|
-
});
|
|
118
|
-
it('01: should drop name column in the last position', async () => {
|
|
119
|
-
await tabStops(3);
|
|
120
|
-
await browser.keys(Key.Return);
|
|
121
|
-
await browser.keys(Key.Return);
|
|
122
|
-
await sendKeyRepeat(Key.ArrowRight, 9);
|
|
123
|
-
await browser.keys(Key.Return);
|
|
124
|
-
const lastHeader = await HeaderCO.getHeaderCellByIndex(8);
|
|
125
|
-
await expect(lastHeader).toHaveTextContaining(['NAME', 'Name']);
|
|
126
|
-
});
|
|
127
|
-
it('02: should drop name column in the first position', async () => {
|
|
128
|
-
await browser.keys(Key.Return);
|
|
129
|
-
await sendKeyRepeat(Key.ArrowLeft, 8);
|
|
130
|
-
await browser.keys(Key.Return);
|
|
131
|
-
const firstHeader = await HeaderCO.getHeaderCellByIndex(0);
|
|
132
|
-
await expect(firstHeader).toHaveTextContaining(['NAME', 'Name']);
|
|
133
|
-
});
|
|
134
|
-
});
|
|
135
111
|
describe('PUI-9849 - DataTable, Dnd click on DND button', () => {
|
|
136
112
|
before('loading page', async () => {
|
|
137
113
|
const errorOnGo = await DSDataTableCO.DNDRestricted.go();
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
/* eslint-disable func-names */
|
|
2
|
+
/* eslint-disable prefer-arrow-callback */
|
|
3
|
+
/* eslint-disable no-await-in-loop */
|
|
4
|
+
import { Key } from 'webdriverio';
|
|
5
|
+
import DSDataTableCO from '../DSDataTableCO';
|
|
6
|
+
import { HeaderCO } from '../components';
|
|
7
|
+
import { tabStops, sendKeyRepeat } from '../../helpers';
|
|
8
|
+
|
|
9
|
+
// Keyboard behavior is subject to changes once the UX team determines which's the way to go in terms of accessibility
|
|
10
|
+
if (!browser.capabilities['ice:options'].isPhone && !browser.capabilities['ice:options'].isTablet) {
|
|
11
|
+
describe('PUI-9773 - DataTable, Dnd columns - fixed widht and scrollbar', function () {
|
|
12
|
+
const maxRetries = 2;
|
|
13
|
+
let skipRemainingTests = false;
|
|
14
|
+
|
|
15
|
+
before('loading page', async () => {
|
|
16
|
+
const errorOnGo = await DSDataTableCO.DndColumnsFixedWidth.go();
|
|
17
|
+
if (errorOnGo) throw errorOnGo;
|
|
18
|
+
await DSDataTableCO.waitForDataTable();
|
|
19
|
+
});
|
|
20
|
+
|
|
21
|
+
beforeEach(async function () {
|
|
22
|
+
if (skipRemainingTests) {
|
|
23
|
+
this.skip();
|
|
24
|
+
} else if (this.currentTest.currentRetry() > 0) {
|
|
25
|
+
await browser.refresh();
|
|
26
|
+
}
|
|
27
|
+
});
|
|
28
|
+
|
|
29
|
+
afterEach(async function () {
|
|
30
|
+
if (this.currentTest.state === 'failed' && this.currentTest.currentRetry() >= maxRetries) {
|
|
31
|
+
skipRemainingTests = true;
|
|
32
|
+
}
|
|
33
|
+
});
|
|
34
|
+
|
|
35
|
+
it('01: should drop name column in the last position', async () => {
|
|
36
|
+
await tabStops(3);
|
|
37
|
+
await browser.keys(Key.Return);
|
|
38
|
+
await browser.keys(Key.Return);
|
|
39
|
+
await sendKeyRepeat(Key.ArrowRight, 9);
|
|
40
|
+
await browser.keys(Key.Return);
|
|
41
|
+
const lastHeader = await HeaderCO.getHeaderCellByIndex(8);
|
|
42
|
+
await expect(lastHeader).toHaveTextContaining(['NAME', 'Name']);
|
|
43
|
+
}).retries(maxRetries);
|
|
44
|
+
|
|
45
|
+
it('02: should drop name column in the first position', async () => {
|
|
46
|
+
await browser.keys(Key.Return);
|
|
47
|
+
await sendKeyRepeat(Key.ArrowLeft, 8);
|
|
48
|
+
await browser.keys(Key.Return);
|
|
49
|
+
const firstHeader = await HeaderCO.getHeaderCellByIndex(0);
|
|
50
|
+
await expect(firstHeader).toHaveTextContaining(['NAME', 'Name']);
|
|
51
|
+
}).retries(maxRetries);
|
|
52
|
+
});
|
|
53
|
+
}
|
|
@@ -112,6 +112,7 @@ if (!browser.capabilities['ice:options'].isPhone && !browser.capabilities['ice:o
|
|
|
112
112
|
await browser.keys(Key.End);
|
|
113
113
|
// defect End key is not going to last row in datatable
|
|
114
114
|
await browser.keys(Key.PageDown);
|
|
115
|
+
await browser.keys(Key.PageDown);
|
|
115
116
|
const lastRow = await RowCO.getRowAriaIndex(100);
|
|
116
117
|
// await lastRow.srollToView();
|
|
117
118
|
await lastRow.click();
|
|
@@ -63,12 +63,12 @@ if (
|
|
|
63
63
|
const thirdRow = await RowCO.getRowByIndex(2);
|
|
64
64
|
await thirdRow.click();
|
|
65
65
|
const result = await axeCoreCheck();
|
|
66
|
-
expect(result.length).toBe(0);
|
|
66
|
+
await expect(result.length).toBe(0);
|
|
67
67
|
});
|
|
68
68
|
it('02: should scroll to last row and pass axe-core', async () => {
|
|
69
69
|
await browser.keys(Key.End);
|
|
70
70
|
const result = await axeCoreCheck();
|
|
71
|
-
expect(result.length).toBe(0);
|
|
71
|
+
await expect(result.length).toBe(0);
|
|
72
72
|
});
|
|
73
73
|
});
|
|
74
74
|
|
|
@@ -138,7 +138,7 @@ if (
|
|
|
138
138
|
await browser.keys(Key.Tab);
|
|
139
139
|
await browser.keys(Key.Space);
|
|
140
140
|
const result = await axeCoreCheck();
|
|
141
|
-
expect(result.length).toBe(0);
|
|
141
|
+
await expect(result.length).toBe(0);
|
|
142
142
|
});
|
|
143
143
|
it('04: should display a datatable with selectable sections (all not checked) and pass axe-core', async () => {
|
|
144
144
|
await browser.keys(Key.Space);
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/* eslint-disable wdio/no-pause */
|
|
2
|
+
import { Key } from 'webdriverio';
|
|
3
|
+
import { mouseOver } from '../helpers';
|
|
4
|
+
import DSFloatingContextCO from './DSFloatingContextCO';
|
|
5
|
+
import DSButtonV3CO from '../ds-button-v3/DSButtonV3CO';
|
|
6
|
+
|
|
7
|
+
if (!browser.capabilities['ice:options'].isPhone && !browser.capabilities['ice:options'].isTablet) {
|
|
8
|
+
describe('PUI-14534 - DSFloatingContext:: basic - visual test', () => {
|
|
9
|
+
beforeEach('loading page', async () => {
|
|
10
|
+
const errorOnGo = await DSFloatingContextCO.basicURL.go();
|
|
11
|
+
if (errorOnGo) throw errorOnGo;
|
|
12
|
+
});
|
|
13
|
+
it('01: should display the tooltip correctly on hover', async () => {
|
|
14
|
+
await browser.eyesOpen();
|
|
15
|
+
const triggerButton = await DSButtonV3CO.getButton();
|
|
16
|
+
await mouseOver(triggerButton);
|
|
17
|
+
const tooltip = await DSFloatingContextCO.getFloatingContextWrapper();
|
|
18
|
+
await tooltip.waitForDisplayed();
|
|
19
|
+
const snapshot = await browser.eyesCheckSnapshot(DSFloatingContextCO.snapshotPath('floating-context-on-hover'));
|
|
20
|
+
await expect(snapshot).toEqual(0);
|
|
21
|
+
});
|
|
22
|
+
it('02: should display the tooltip correctly on tab', async () => {
|
|
23
|
+
await browser.eyesOpen();
|
|
24
|
+
await browser.keys(Key.Tab);
|
|
25
|
+
const tooltip = await DSFloatingContextCO.getFloatingContextWrapper();
|
|
26
|
+
await tooltip.waitForDisplayed();
|
|
27
|
+
const snapshot = await browser.eyesCheckSnapshot(DSFloatingContextCO.snapshotPath('floating-context-on-tab'));
|
|
28
|
+
await expect(snapshot).toEqual(0);
|
|
29
|
+
});
|
|
30
|
+
});
|
|
31
|
+
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/* eslint-disable no-dupe-class-members */
|
|
2
|
+
import { PATH_E2E_FLOATING_CONTEXT } from '../../environments/storybook/paths';
|
|
3
|
+
import { PageObject, Urlbuilder } from '../helpers';
|
|
4
|
+
|
|
5
|
+
export default class DSFloatingContextCO extends PageObject {
|
|
6
|
+
// STORIES
|
|
7
|
+
static basicURL = new Urlbuilder(PATH_E2E_FLOATING_CONTEXT, 'basic-test');
|
|
8
|
+
|
|
9
|
+
// COMBOBOX - INPUT
|
|
10
|
+
static async getFloatingContextWrapper() {
|
|
11
|
+
return $('[data-testid="ds-floating-wrapper-root"]');
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
static snapshotPath(example = 'basic') {
|
|
15
|
+
return PageObject.getSnapshotPathBuilder('DSFloatingContext', example, 'ds-floating-context');
|
|
16
|
+
}
|
|
17
|
+
}
|
|
@@ -43,6 +43,10 @@ if (!browser.capabilities['ice:options'].isPhone && !browser.capabilities['ice:o
|
|
|
43
43
|
await expect(closeBtn).toBeFocused();
|
|
44
44
|
});
|
|
45
45
|
it('02: should focus the body content as next tab stop', async () => {
|
|
46
|
+
if (browser.capabilities.browserName === 'firefox') {
|
|
47
|
+
// extra Tab stop for firefox https://bugzilla.mozilla.org/show_bug.cgi?id=1069739#c36
|
|
48
|
+
await browser.keys(Key.Tab);
|
|
49
|
+
}
|
|
46
50
|
await browser.keys(Key.Tab);
|
|
47
51
|
const contentBtn = await ModalSlideCO.getBodyContentBtn();
|
|
48
52
|
await expect(contentBtn).toBeFocused();
|
|
@@ -1,6 +1,4 @@
|
|
|
1
|
-
import { Key } from 'webdriverio';
|
|
2
1
|
import DSSidePanelCO from './DSSidePanelCO';
|
|
3
|
-
import DSButtonV3CO from '../ds-button-v3/DSButtonV3CO';
|
|
4
2
|
|
|
5
3
|
if (!browser.capabilities['ice:options'].isPhone) {
|
|
6
4
|
describe('PUI-3777 - SidePanel, display side panel elements -Func', () => {
|
|
@@ -27,128 +25,4 @@ if (!browser.capabilities['ice:options'].isPhone) {
|
|
|
27
25
|
await expect(slideBtn).toBeDisplayed();
|
|
28
26
|
});
|
|
29
27
|
});
|
|
30
|
-
if (!browser.capabilities['ice:options'].isTablet) {
|
|
31
|
-
describe('PUI-9197 - SidePanel, keyboard navigation -Func', () => {
|
|
32
|
-
before('loading page', async () => {
|
|
33
|
-
const errorOnGo = await DSSidePanelCO.addtionalActionURL.go();
|
|
34
|
-
if (errorOnGo) throw errorOnGo;
|
|
35
|
-
});
|
|
36
|
-
it('01: should focus close btn', async () => {
|
|
37
|
-
await browser.keys(Key.Tab);
|
|
38
|
-
await browser.keys(Key.Return);
|
|
39
|
-
const sidePanel = await DSSidePanelCO.getSidePanelWrapper();
|
|
40
|
-
await sidePanel.waitForDisplayed();
|
|
41
|
-
await browser.keys(Key.Tab);
|
|
42
|
-
const closeBtn = await DSSidePanelCO.getCloseBtn();
|
|
43
|
-
await expect(closeBtn).toBeFocused();
|
|
44
|
-
});
|
|
45
|
-
it('02: should focus fotter btn', async () => {
|
|
46
|
-
const FotterBtn = await DSSidePanelCO.getSlideBtn();
|
|
47
|
-
// 1 more Tab stop for Firefox
|
|
48
|
-
// https://bugzilla.mozilla.org/show_bug.cgi?id=616594
|
|
49
|
-
if (browser.capabilities.browserName === 'firefox') {
|
|
50
|
-
await browser.keys(Key.Tab);
|
|
51
|
-
}
|
|
52
|
-
await browser.keys(Key.Tab);
|
|
53
|
-
await browser.keys(Key.Tab);
|
|
54
|
-
await expect(FotterBtn).toBeFocused();
|
|
55
|
-
});
|
|
56
|
-
it('03: should close the SidePanel', async () => {
|
|
57
|
-
const triggerBtn = await DSSidePanelCO.getToggleBtn();
|
|
58
|
-
// 1 more Tab stop for Firefox
|
|
59
|
-
// https://bugzilla.mozilla.org/show_bug.cgi?id=616594
|
|
60
|
-
if (browser.capabilities.browserName === 'firefox') {
|
|
61
|
-
await browser.keys([Key.Shift, Key.Tab]);
|
|
62
|
-
}
|
|
63
|
-
await browser.keys([Key.Shift, Key.Tab]);
|
|
64
|
-
await browser.keys([Key.Shift, Key.Tab]);
|
|
65
|
-
await browser.keys(Key.Enter);
|
|
66
|
-
await expect(triggerBtn).toBeFocused();
|
|
67
|
-
});
|
|
68
|
-
if (browser.capabilities.browserName !== 'Firefox') {
|
|
69
|
-
it('04: should not focus elements inside the SidePabel when it is closed', async () => {
|
|
70
|
-
const triggerBtn = await DSSidePanelCO.getToggleBtn();
|
|
71
|
-
await browser.keys(Key.Tab);
|
|
72
|
-
await browser.keys(Key.Tab);
|
|
73
|
-
await expect(triggerBtn).toBeFocused();
|
|
74
|
-
});
|
|
75
|
-
}
|
|
76
|
-
});
|
|
77
|
-
describe('PUI-11692 - SidePanel, innerRef and OnKeyDown test -Func', () => {
|
|
78
|
-
before('loading page', async () => {
|
|
79
|
-
const errorOnGo = await DSSidePanelCO.innerRef.go();
|
|
80
|
-
if (errorOnGo) throw errorOnGo;
|
|
81
|
-
});
|
|
82
|
-
it('01: focus should be on close button after SidePanel is opened', async () => {
|
|
83
|
-
await browser.keys(Key.Tab);
|
|
84
|
-
await browser.keys(Key.Return);
|
|
85
|
-
const sidePanel = await DSSidePanelCO.getSidePanelWrapper();
|
|
86
|
-
await sidePanel.waitForDisplayed();
|
|
87
|
-
const closeBtn = await DSSidePanelCO.getCloseBtn();
|
|
88
|
-
await expect(closeBtn).toBeFocused();
|
|
89
|
-
});
|
|
90
|
-
it('02: focus should be on toggle button after SidePanel is closed', async () => {
|
|
91
|
-
await browser.keys(Key.Return);
|
|
92
|
-
const toggleBtn = await DSSidePanelCO.getToggleBtn();
|
|
93
|
-
await expect(toggleBtn).toBeFocused();
|
|
94
|
-
});
|
|
95
|
-
it('03: message with the last key presssed should be displayed - OnKeyDown', async () => {
|
|
96
|
-
const lastKeyPressed = await DSSidePanelCO.getLastKeyPressedMessage();
|
|
97
|
-
await expect(lastKeyPressed).toHaveTextContaining('Last Key Pressed: Enter');
|
|
98
|
-
});
|
|
99
|
-
});
|
|
100
|
-
describe('PUI-12779 - SidePanel, collapsable. Keyboard -Func', () => {
|
|
101
|
-
before('loading page', async () => {
|
|
102
|
-
const errorOnGo = await DSSidePanelCO.collapsableURL.go();
|
|
103
|
-
if (errorOnGo) throw errorOnGo;
|
|
104
|
-
});
|
|
105
|
-
it('01: Should expand sidePanel with KB', async () => {
|
|
106
|
-
await browser.keys(Key.Tab);
|
|
107
|
-
await browser.keys(Key.Return);
|
|
108
|
-
const sidePanel = await DSSidePanelCO.getSidePanelWrapper();
|
|
109
|
-
await sidePanel.waitForDisplayed();
|
|
110
|
-
const content = await DSSidePanelCO.getSlideBtn();
|
|
111
|
-
await expect(content).toBeDisplayedInViewport();
|
|
112
|
-
});
|
|
113
|
-
it('02: Should collapse sidePanel with ESC key', async () => {
|
|
114
|
-
await browser.keys(Key.Escape);
|
|
115
|
-
const content = await DSSidePanelCO.getSlideBtn();
|
|
116
|
-
await expect(content).not.toBeDisplayedInViewport();
|
|
117
|
-
});
|
|
118
|
-
});
|
|
119
|
-
describe('PUI-12786 - SidePanel, IE Content: TabStops (Keyboard) -Func', () => {
|
|
120
|
-
before('loading page', async () => {
|
|
121
|
-
const errorOnGo = await DSSidePanelCO.contentActionURL.go();
|
|
122
|
-
if (errorOnGo) throw errorOnGo;
|
|
123
|
-
});
|
|
124
|
-
it('01: Should be able tab into content IE', async () => {
|
|
125
|
-
await browser.keys(Key.Tab);
|
|
126
|
-
await browser.keys(Key.Return);
|
|
127
|
-
const sidePanel = await DSSidePanelCO.getSidePanelWrapper();
|
|
128
|
-
await sidePanel.waitForDisplayed();
|
|
129
|
-
const contentIE = await DSButtonV3CO.getButtonByIndex(1);
|
|
130
|
-
await contentIE.waitForDisplayed();
|
|
131
|
-
// 1 more Tab stop for Firefox
|
|
132
|
-
// https://bugzilla.mozilla.org/show_bug.cgi?id=616594
|
|
133
|
-
if (browser.capabilities.browserName === 'firefox') {
|
|
134
|
-
await browser.keys(Key.Tab);
|
|
135
|
-
}
|
|
136
|
-
await browser.keys(Key.Tab);
|
|
137
|
-
await browser.keys(Key.Tab);
|
|
138
|
-
await expect(contentIE).toBeFocused();
|
|
139
|
-
});
|
|
140
|
-
it('02: Should tab to second content IE', async () => {
|
|
141
|
-
await browser.keys(Key.Tab);
|
|
142
|
-
const contentIE2 = await DSButtonV3CO.getButtonByIndex(2);
|
|
143
|
-
await expect(contentIE2).toBeFocused();
|
|
144
|
-
});
|
|
145
|
-
it('03: Should trigger focus trap to cycle back to first sidepanel IE', async () => {
|
|
146
|
-
await browser.keys(Key.Tab);
|
|
147
|
-
await browser.keys(Key.Tab);
|
|
148
|
-
await browser.keys(Key.Tab);
|
|
149
|
-
const sidepanelIE1 = await DSButtonV3CO.getButtonByIndex(0);
|
|
150
|
-
await expect(sidepanelIE1).toBeFocused();
|
|
151
|
-
});
|
|
152
|
-
});
|
|
153
|
-
}
|
|
154
28
|
}
|
|
@@ -0,0 +1,205 @@
|
|
|
1
|
+
/* eslint-disable func-names */
|
|
2
|
+
/* eslint-disable prefer-arrow-callback */
|
|
3
|
+
import { Key } from 'webdriverio';
|
|
4
|
+
import DSSidePanelCO from './DSSidePanelCO';
|
|
5
|
+
import DSButtonV3CO from '../ds-button-v3/DSButtonV3CO';
|
|
6
|
+
|
|
7
|
+
if (!browser.capabilities['ice:options'].isPhone && !browser.capabilities['ice:options'].isTablet) {
|
|
8
|
+
describe('PUI-9197 - SidePanel, keyboard navigation -Func', function () {
|
|
9
|
+
const maxRetries = 2;
|
|
10
|
+
let skipRemainingTests = false;
|
|
11
|
+
|
|
12
|
+
before('loading page', async () => {
|
|
13
|
+
const errorOnGo = await DSSidePanelCO.addtionalActionURL.go();
|
|
14
|
+
if (errorOnGo) throw errorOnGo;
|
|
15
|
+
});
|
|
16
|
+
|
|
17
|
+
beforeEach(async function () {
|
|
18
|
+
if (skipRemainingTests) {
|
|
19
|
+
this.skip();
|
|
20
|
+
} else if (this.currentTest.currentRetry() > 0) {
|
|
21
|
+
await browser.refresh();
|
|
22
|
+
}
|
|
23
|
+
});
|
|
24
|
+
|
|
25
|
+
afterEach(async function () {
|
|
26
|
+
if (this.currentTest.state === 'failed' && this.currentTest.currentRetry() >= maxRetries) {
|
|
27
|
+
skipRemainingTests = true;
|
|
28
|
+
}
|
|
29
|
+
});
|
|
30
|
+
|
|
31
|
+
it('01: should focus close btn', async () => {
|
|
32
|
+
await browser.keys(Key.Tab);
|
|
33
|
+
await browser.keys(Key.Return);
|
|
34
|
+
const sidePanel = await DSSidePanelCO.getSidePanelWrapper();
|
|
35
|
+
await sidePanel.waitForDisplayed();
|
|
36
|
+
await browser.keys(Key.Tab);
|
|
37
|
+
const closeBtn = await DSSidePanelCO.getCloseBtn();
|
|
38
|
+
await expect(closeBtn).toBeFocused();
|
|
39
|
+
}).retries(maxRetries);
|
|
40
|
+
it('02: should focus fotter btn', async () => {
|
|
41
|
+
const FotterBtn = await DSSidePanelCO.getSlideBtn();
|
|
42
|
+
// 1 more Tab stop for Firefox
|
|
43
|
+
// https://bugzilla.mozilla.org/show_bug.cgi?id=616594
|
|
44
|
+
if (browser.capabilities.browserName === 'firefox') {
|
|
45
|
+
await browser.keys(Key.Tab);
|
|
46
|
+
}
|
|
47
|
+
await browser.keys(Key.Tab);
|
|
48
|
+
await browser.keys(Key.Tab);
|
|
49
|
+
await expect(FotterBtn).toBeFocused();
|
|
50
|
+
}).retries(maxRetries);
|
|
51
|
+
it('03: should close the SidePanel', async () => {
|
|
52
|
+
const triggerBtn = await DSSidePanelCO.getToggleBtn();
|
|
53
|
+
// 1 more Tab stop for Firefox
|
|
54
|
+
// https://bugzilla.mozilla.org/show_bug.cgi?id=616594
|
|
55
|
+
if (browser.capabilities.browserName === 'firefox') {
|
|
56
|
+
await browser.keys([Key.Shift, Key.Tab]);
|
|
57
|
+
}
|
|
58
|
+
await browser.keys([Key.Shift, Key.Tab]);
|
|
59
|
+
await browser.keys([Key.Shift, Key.Tab]);
|
|
60
|
+
await browser.keys(Key.Enter);
|
|
61
|
+
await expect(triggerBtn).toBeFocused();
|
|
62
|
+
}).retries(maxRetries);
|
|
63
|
+
if (browser.capabilities.browserName !== 'Firefox') {
|
|
64
|
+
it('04: should not focus elements inside the SidePabel when it is closed', async () => {
|
|
65
|
+
const triggerBtn = await DSSidePanelCO.getToggleBtn();
|
|
66
|
+
await browser.keys(Key.Tab);
|
|
67
|
+
await browser.keys(Key.Tab);
|
|
68
|
+
await expect(triggerBtn).toBeFocused();
|
|
69
|
+
}).retries(maxRetries);
|
|
70
|
+
}
|
|
71
|
+
});
|
|
72
|
+
|
|
73
|
+
describe('PUI-11692 - SidePanel, innerRef and OnKeyDown test -Func', function () {
|
|
74
|
+
const maxRetries = 2;
|
|
75
|
+
let skipRemainingTests = false;
|
|
76
|
+
|
|
77
|
+
before('loading page', async () => {
|
|
78
|
+
const errorOnGo = await DSSidePanelCO.innerRef.go();
|
|
79
|
+
if (errorOnGo) throw errorOnGo;
|
|
80
|
+
});
|
|
81
|
+
|
|
82
|
+
beforeEach(async function () {
|
|
83
|
+
if (skipRemainingTests) {
|
|
84
|
+
this.skip();
|
|
85
|
+
} else if (this.currentTest.currentRetry() > 0) {
|
|
86
|
+
await browser.refresh();
|
|
87
|
+
}
|
|
88
|
+
});
|
|
89
|
+
|
|
90
|
+
afterEach(async function () {
|
|
91
|
+
if (this.currentTest.state === 'failed' && this.currentTest.currentRetry() >= maxRetries) {
|
|
92
|
+
skipRemainingTests = true;
|
|
93
|
+
}
|
|
94
|
+
});
|
|
95
|
+
|
|
96
|
+
it('01: focus should be on close button after SidePanel is opened', async () => {
|
|
97
|
+
await browser.keys(Key.Tab);
|
|
98
|
+
await browser.keys(Key.Return);
|
|
99
|
+
const sidePanel = await DSSidePanelCO.getSidePanelWrapper();
|
|
100
|
+
await sidePanel.waitForDisplayed();
|
|
101
|
+
const closeBtn = await DSSidePanelCO.getCloseBtn();
|
|
102
|
+
await expect(closeBtn).toBeFocused();
|
|
103
|
+
}).retries(maxRetries);
|
|
104
|
+
it('02: focus should be on toggle button after SidePanel is closed', async () => {
|
|
105
|
+
await browser.keys(Key.Return);
|
|
106
|
+
const toggleBtn = await DSSidePanelCO.getToggleBtn();
|
|
107
|
+
await expect(toggleBtn).toBeFocused();
|
|
108
|
+
}).retries(maxRetries);
|
|
109
|
+
it('03: message with the last key presssed should be displayed - OnKeyDown', async () => {
|
|
110
|
+
const lastKeyPressed = await DSSidePanelCO.getLastKeyPressedMessage();
|
|
111
|
+
await expect(lastKeyPressed).toHaveTextContaining('Last Key Pressed: Enter');
|
|
112
|
+
}).retries(maxRetries);
|
|
113
|
+
});
|
|
114
|
+
|
|
115
|
+
describe('PUI-12779 - SidePanel, collapsable. Keyboard -Func', function () {
|
|
116
|
+
const maxRetries = 2;
|
|
117
|
+
let skipRemainingTests = false;
|
|
118
|
+
|
|
119
|
+
before('loading page', async () => {
|
|
120
|
+
const errorOnGo = await DSSidePanelCO.collapsableURL.go();
|
|
121
|
+
if (errorOnGo) throw errorOnGo;
|
|
122
|
+
});
|
|
123
|
+
|
|
124
|
+
beforeEach(async function () {
|
|
125
|
+
if (skipRemainingTests) {
|
|
126
|
+
this.skip();
|
|
127
|
+
} else if (this.currentTest.currentRetry() > 0) {
|
|
128
|
+
await browser.refresh();
|
|
129
|
+
}
|
|
130
|
+
});
|
|
131
|
+
|
|
132
|
+
afterEach(async function () {
|
|
133
|
+
if (this.currentTest.state === 'failed' && this.currentTest.currentRetry() >= maxRetries) {
|
|
134
|
+
skipRemainingTests = true;
|
|
135
|
+
}
|
|
136
|
+
});
|
|
137
|
+
|
|
138
|
+
it('01: Should expand sidePanel with KB', async () => {
|
|
139
|
+
await browser.keys(Key.Tab);
|
|
140
|
+
await browser.keys(Key.Return);
|
|
141
|
+
const sidePanel = await DSSidePanelCO.getSidePanelWrapper();
|
|
142
|
+
await sidePanel.waitForDisplayed();
|
|
143
|
+
const content = await DSSidePanelCO.getSlideBtn();
|
|
144
|
+
await expect(content).toBeDisplayedInViewport();
|
|
145
|
+
}).retries(maxRetries);
|
|
146
|
+
it('02: Should collapse sidePanel with ESC key', async () => {
|
|
147
|
+
await browser.keys(Key.Escape);
|
|
148
|
+
const content = await DSSidePanelCO.getSlideBtn();
|
|
149
|
+
await expect(content).not.toBeDisplayedInViewport();
|
|
150
|
+
}).retries(maxRetries);
|
|
151
|
+
});
|
|
152
|
+
|
|
153
|
+
describe('PUI-12786 - SidePanel, IE Content: TabStops (Keyboard) -Func', function () {
|
|
154
|
+
const maxRetries = 2;
|
|
155
|
+
let skipRemainingTests = false;
|
|
156
|
+
|
|
157
|
+
before('loading page', async () => {
|
|
158
|
+
const errorOnGo = await DSSidePanelCO.contentActionURL.go();
|
|
159
|
+
if (errorOnGo) throw errorOnGo;
|
|
160
|
+
});
|
|
161
|
+
|
|
162
|
+
beforeEach(async function () {
|
|
163
|
+
if (skipRemainingTests) {
|
|
164
|
+
this.skip();
|
|
165
|
+
} else if (this.currentTest.currentRetry() > 0) {
|
|
166
|
+
await browser.refresh();
|
|
167
|
+
}
|
|
168
|
+
});
|
|
169
|
+
|
|
170
|
+
afterEach(async function () {
|
|
171
|
+
if (this.currentTest.state === 'failed' && this.currentTest.currentRetry() >= maxRetries) {
|
|
172
|
+
skipRemainingTests = true;
|
|
173
|
+
}
|
|
174
|
+
});
|
|
175
|
+
|
|
176
|
+
it('01: Should be able tab into content IE', async () => {
|
|
177
|
+
await browser.keys(Key.Tab);
|
|
178
|
+
await browser.keys(Key.Return);
|
|
179
|
+
const sidePanel = await DSSidePanelCO.getSidePanelWrapper();
|
|
180
|
+
await sidePanel.waitForDisplayed();
|
|
181
|
+
const contentIE = await DSButtonV3CO.getButtonByIndex(1);
|
|
182
|
+
await contentIE.waitForDisplayed();
|
|
183
|
+
// 1 more Tab stop for Firefox
|
|
184
|
+
// https://bugzilla.mozilla.org/show_bug.cgi?id=616594
|
|
185
|
+
if (browser.capabilities.browserName === 'firefox') {
|
|
186
|
+
await browser.keys(Key.Tab);
|
|
187
|
+
}
|
|
188
|
+
await browser.keys(Key.Tab);
|
|
189
|
+
await browser.keys(Key.Tab);
|
|
190
|
+
await expect(contentIE).toBeFocused();
|
|
191
|
+
}).retries(maxRetries);
|
|
192
|
+
it('02: Should tab to second content IE', async () => {
|
|
193
|
+
await browser.keys(Key.Tab);
|
|
194
|
+
const contentIE2 = await DSButtonV3CO.getButtonByIndex(2);
|
|
195
|
+
await expect(contentIE2).toBeFocused();
|
|
196
|
+
}).retries(maxRetries);
|
|
197
|
+
it('03: Should trigger focus trap to cycle back to first sidepanel IE', async () => {
|
|
198
|
+
await browser.keys(Key.Tab);
|
|
199
|
+
await browser.keys(Key.Tab);
|
|
200
|
+
await browser.keys(Key.Tab);
|
|
201
|
+
const sidepanelIE1 = await DSButtonV3CO.getButtonByIndex(0);
|
|
202
|
+
await expect(sidepanelIE1).toBeFocused();
|
|
203
|
+
}).retries(maxRetries);
|
|
204
|
+
});
|
|
205
|
+
}
|
|
@@ -9,9 +9,10 @@ if (!browser.capabilities['ice:options'].isPhone && !browser.capabilities['ice:o
|
|
|
9
9
|
if (errorOnGo) throw errorOnGo;
|
|
10
10
|
});
|
|
11
11
|
it('tooltip with long word should be displayed', async () => {
|
|
12
|
+
await browser.eyesOpen();
|
|
12
13
|
await browser.keys(Key.Tab);
|
|
13
14
|
await browser.pause(500);
|
|
14
|
-
const snapshot = await browser.
|
|
15
|
+
const snapshot = await browser.eyesCheckSnapshot(DSTooltipV3CO.snapshotPath('tooltip-long-word'));
|
|
15
16
|
await expect(snapshot).toEqual(0);
|
|
16
17
|
});
|
|
17
18
|
});
|
package/package.json
CHANGED
|
@@ -1,125 +1,125 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "dimsum-e2e-tests",
|
|
3
|
-
"version": "3.45.0-rc.
|
|
3
|
+
"version": "3.45.0-rc.2",
|
|
4
4
|
"description": "End-to-end tests for dimsum library",
|
|
5
5
|
"dependencies": {
|
|
6
|
-
"@elliemae/ds-accessibility": "3.45.0-rc.
|
|
7
|
-
"@elliemae/ds-accordion": "3.45.0-rc.
|
|
8
|
-
"@elliemae/ds-backdrop": "3.45.0-rc.
|
|
9
|
-
"@elliemae/ds-
|
|
10
|
-
"@elliemae/ds-basic": "3.45.0-rc.
|
|
11
|
-
"@elliemae/ds-
|
|
12
|
-
"@elliemae/ds-button": "3.45.0-rc.
|
|
13
|
-
"@elliemae/ds-
|
|
14
|
-
"@elliemae/ds-
|
|
15
|
-
"@elliemae/ds-button-
|
|
16
|
-
"@elliemae/ds-button
|
|
17
|
-
"@elliemae/ds-card": "3.45.0-rc.
|
|
18
|
-
"@elliemae/ds-card
|
|
19
|
-
"@elliemae/ds-card-
|
|
20
|
-
"@elliemae/ds-card-
|
|
21
|
-
"@elliemae/ds-card-v2-
|
|
22
|
-
"@elliemae/ds-card-v2
|
|
23
|
-
"@elliemae/ds-chat": "3.45.0-rc.
|
|
24
|
-
"@elliemae/ds-chat-bubble": "3.45.0-rc.
|
|
25
|
-
"@elliemae/ds-chat-tile": "3.45.0-rc.
|
|
26
|
-
"@elliemae/ds-chip": "3.45.0-rc.
|
|
27
|
-
"@elliemae/ds-circular-progress-indicator": "3.45.0-rc.
|
|
28
|
-
"@elliemae/ds-codeeditor": "3.45.0-rc.
|
|
29
|
-
"@elliemae/ds-comments": "3.45.0-rc.
|
|
30
|
-
"@elliemae/ds-controlled-form": "3.45.0-rc.
|
|
31
|
-
"@elliemae/ds-
|
|
32
|
-
"@elliemae/ds-
|
|
33
|
-
"@elliemae/ds-
|
|
34
|
-
"@elliemae/ds-
|
|
35
|
-
"@elliemae/ds-
|
|
36
|
-
"@elliemae/ds-dataviz-pie": "3.45.0-rc.
|
|
37
|
-
"@elliemae/ds-date-picker": "3.45.0-rc.
|
|
38
|
-
"@elliemae/ds-date-range-
|
|
39
|
-
"@elliemae/ds-date-
|
|
40
|
-
"@elliemae/ds-
|
|
41
|
-
"@elliemae/ds-date-
|
|
42
|
-
"@elliemae/ds-
|
|
43
|
-
"@elliemae/ds-
|
|
44
|
-
"@elliemae/ds-
|
|
45
|
-
"@elliemae/ds-
|
|
46
|
-
"@elliemae/ds-
|
|
47
|
-
"@elliemae/ds-
|
|
48
|
-
"@elliemae/ds-
|
|
49
|
-
"@elliemae/ds-
|
|
50
|
-
"@elliemae/ds-form-date-range-picker": "3.45.0-rc.
|
|
51
|
-
"@elliemae/ds-form-date-time-picker": "3.45.0-rc.
|
|
52
|
-
"@elliemae/ds-form-layout-label": "3.45.0-rc.
|
|
53
|
-
"@elliemae/ds-
|
|
54
|
-
"@elliemae/ds-
|
|
55
|
-
"@elliemae/ds-group-box": "3.45.0-rc.
|
|
56
|
-
"@elliemae/ds-
|
|
57
|
-
"@elliemae/ds-header": "3.45.0-rc.
|
|
58
|
-
"@elliemae/ds-hooks-fontsize-detector": "3.45.0-rc.
|
|
59
|
-
"@elliemae/ds-
|
|
60
|
-
"@elliemae/ds-
|
|
61
|
-
"@elliemae/ds-icons": "3.45.0-rc.
|
|
62
|
-
"@elliemae/ds-image": "3.45.0-rc.
|
|
63
|
-
"@elliemae/ds-
|
|
64
|
-
"@elliemae/ds-
|
|
65
|
-
"@elliemae/ds-label-value": "3.45.0-rc.
|
|
66
|
-
"@elliemae/ds-
|
|
67
|
-
"@elliemae/ds-
|
|
68
|
-
"@elliemae/ds-loading-indicator": "3.45.0-rc.
|
|
69
|
-
"@elliemae/ds-menu": "3.45.0-rc.
|
|
70
|
-
"@elliemae/ds-
|
|
71
|
-
"@elliemae/ds-
|
|
72
|
-
"@elliemae/ds-modal": "3.45.0-rc.
|
|
73
|
-
"@elliemae/ds-
|
|
74
|
-
"@elliemae/ds-modal-slide": "3.45.0-rc.
|
|
75
|
-
"@elliemae/ds-number-range-field": "3.45.0-rc.
|
|
76
|
-
"@elliemae/ds-
|
|
77
|
-
"@elliemae/ds-
|
|
78
|
-
"@elliemae/ds-page-header-v1": "3.45.0-rc.
|
|
79
|
-
"@elliemae/ds-page-header-v2": "3.45.0-rc.
|
|
80
|
-
"@elliemae/ds-
|
|
81
|
-
"@elliemae/ds-page-
|
|
82
|
-
"@elliemae/ds-
|
|
83
|
-
"@elliemae/ds-
|
|
84
|
-
"@elliemae/ds-popover": "3.45.0-rc.
|
|
85
|
-
"@elliemae/ds-
|
|
86
|
-
"@elliemae/ds-popper": "3.45.0-rc.
|
|
87
|
-
"@elliemae/ds-
|
|
88
|
-
"@elliemae/ds-
|
|
89
|
-
"@elliemae/ds-read-more": "3.45.0-rc.
|
|
90
|
-
"@elliemae/ds-resizeable-container": "3.45.0-rc.
|
|
91
|
-
"@elliemae/ds-ribbon": "3.45.0-rc.
|
|
92
|
-
"@elliemae/ds-search-field": "3.45.0-rc.
|
|
93
|
-
"@elliemae/ds-
|
|
94
|
-
"@elliemae/ds-
|
|
95
|
-
"@elliemae/ds-
|
|
96
|
-
"@elliemae/ds-
|
|
97
|
-
"@elliemae/ds-skeleton": "3.45.0-rc.
|
|
98
|
-
"@elliemae/ds-
|
|
99
|
-
"@elliemae/ds-
|
|
100
|
-
"@elliemae/ds-square-indicator": "3.45.0-rc.
|
|
101
|
-
"@elliemae/ds-stepper": "3.45.0-rc.
|
|
102
|
-
"@elliemae/ds-
|
|
103
|
-
"@elliemae/ds-
|
|
104
|
-
"@elliemae/ds-tabs": "3.45.0-rc.
|
|
105
|
-
"@elliemae/ds-
|
|
106
|
-
"@elliemae/ds-
|
|
107
|
-
"@elliemae/ds-time-picker": "3.45.0-rc.
|
|
108
|
-
"@elliemae/ds-toast": "3.45.0-rc.
|
|
109
|
-
"@elliemae/ds-toolbar-v2": "3.45.0-rc.
|
|
110
|
-
"@elliemae/ds-toolbar": "3.45.0-rc.
|
|
111
|
-
"@elliemae/ds-tooltip": "3.45.0-rc.
|
|
112
|
-
"@elliemae/ds-
|
|
113
|
-
"@elliemae/ds-
|
|
114
|
-
"@elliemae/ds-truncated-
|
|
115
|
-
"@elliemae/ds-
|
|
116
|
-
"@elliemae/ds-
|
|
117
|
-
"@elliemae/ds-
|
|
118
|
-
"@elliemae/ds-
|
|
119
|
-
"@elliemae/ds-virtual-list": "3.45.0-rc.
|
|
120
|
-
"@elliemae/ds-wizard": "3.45.0-rc.
|
|
121
|
-
"@elliemae/ds-
|
|
122
|
-
"@elliemae/ds-
|
|
123
|
-
"@elliemae/ds-zoom": "3.45.0-rc.
|
|
6
|
+
"@elliemae/ds-accessibility": "3.45.0-rc.2",
|
|
7
|
+
"@elliemae/ds-accordion": "3.45.0-rc.2",
|
|
8
|
+
"@elliemae/ds-backdrop": "3.45.0-rc.2",
|
|
9
|
+
"@elliemae/ds-app-picker": "3.45.0-rc.2",
|
|
10
|
+
"@elliemae/ds-basic": "3.45.0-rc.2",
|
|
11
|
+
"@elliemae/ds-banner": "3.45.0-rc.2",
|
|
12
|
+
"@elliemae/ds-button-v1": "3.45.0-rc.2",
|
|
13
|
+
"@elliemae/ds-breadcrumb": "3.45.0-rc.2",
|
|
14
|
+
"@elliemae/ds-button-group": "3.45.0-rc.2",
|
|
15
|
+
"@elliemae/ds-button-v2": "3.45.0-rc.2",
|
|
16
|
+
"@elliemae/ds-button": "3.45.0-rc.2",
|
|
17
|
+
"@elliemae/ds-card-array": "3.45.0-rc.2",
|
|
18
|
+
"@elliemae/ds-card": "3.45.0-rc.2",
|
|
19
|
+
"@elliemae/ds-card-navigation": "3.45.0-rc.2",
|
|
20
|
+
"@elliemae/ds-card-v2-action-addon": "3.45.0-rc.2",
|
|
21
|
+
"@elliemae/ds-card-v2-group": "3.45.0-rc.2",
|
|
22
|
+
"@elliemae/ds-card-v2": "3.45.0-rc.2",
|
|
23
|
+
"@elliemae/ds-chat": "3.45.0-rc.2",
|
|
24
|
+
"@elliemae/ds-chat-bubble": "3.45.0-rc.2",
|
|
25
|
+
"@elliemae/ds-chat-tile": "3.45.0-rc.2",
|
|
26
|
+
"@elliemae/ds-chip": "3.45.0-rc.2",
|
|
27
|
+
"@elliemae/ds-circular-progress-indicator": "3.45.0-rc.2",
|
|
28
|
+
"@elliemae/ds-codeeditor": "3.45.0-rc.2",
|
|
29
|
+
"@elliemae/ds-comments": "3.45.0-rc.2",
|
|
30
|
+
"@elliemae/ds-controlled-form": "3.45.0-rc.2",
|
|
31
|
+
"@elliemae/ds-csv-converter": "3.45.0-rc.2",
|
|
32
|
+
"@elliemae/ds-datagrids": "3.45.0-rc.2",
|
|
33
|
+
"@elliemae/ds-data-table-cell-header": "3.45.0-rc.2",
|
|
34
|
+
"@elliemae/ds-dataviz": "3.45.0-rc.2",
|
|
35
|
+
"@elliemae/ds-date-picker": "3.45.0-rc.2",
|
|
36
|
+
"@elliemae/ds-dataviz-pie": "3.45.0-rc.2",
|
|
37
|
+
"@elliemae/ds-date-time-picker": "3.45.0-rc.2",
|
|
38
|
+
"@elliemae/ds-date-range-selector": "3.45.0-rc.2",
|
|
39
|
+
"@elliemae/ds-date-time-recurrence-picker": "3.45.0-rc.2",
|
|
40
|
+
"@elliemae/ds-decision-graph": "3.45.0-rc.2",
|
|
41
|
+
"@elliemae/ds-date-range-picker": "3.45.0-rc.2",
|
|
42
|
+
"@elliemae/ds-drag-and-drop": "3.45.0-rc.2",
|
|
43
|
+
"@elliemae/ds-dropdownmenu": "3.45.0-rc.2",
|
|
44
|
+
"@elliemae/ds-dropzone": "3.45.0-rc.2",
|
|
45
|
+
"@elliemae/ds-dialog": "3.45.0-rc.2",
|
|
46
|
+
"@elliemae/ds-fast-list": "3.45.0-rc.2",
|
|
47
|
+
"@elliemae/ds-form": "3.45.0-rc.2",
|
|
48
|
+
"@elliemae/ds-filterbar": "3.45.0-rc.2",
|
|
49
|
+
"@elliemae/ds-data-table": "3.45.0-rc.2",
|
|
50
|
+
"@elliemae/ds-form-date-range-picker": "3.45.0-rc.2",
|
|
51
|
+
"@elliemae/ds-form-date-time-picker": "3.45.0-rc.2",
|
|
52
|
+
"@elliemae/ds-form-layout-label": "3.45.0-rc.2",
|
|
53
|
+
"@elliemae/ds-global-header": "3.45.0-rc.2",
|
|
54
|
+
"@elliemae/ds-form-layout-blocks": "3.45.0-rc.2",
|
|
55
|
+
"@elliemae/ds-group-box": "3.45.0-rc.2",
|
|
56
|
+
"@elliemae/ds-grid": "3.45.0-rc.2",
|
|
57
|
+
"@elliemae/ds-header": "3.45.0-rc.2",
|
|
58
|
+
"@elliemae/ds-hooks-fontsize-detector": "3.45.0-rc.2",
|
|
59
|
+
"@elliemae/ds-icon": "3.45.0-rc.2",
|
|
60
|
+
"@elliemae/ds-hooks-fontsize-media": "3.45.0-rc.2",
|
|
61
|
+
"@elliemae/ds-icons": "3.45.0-rc.2",
|
|
62
|
+
"@elliemae/ds-image": "3.45.0-rc.2",
|
|
63
|
+
"@elliemae/ds-imagelibrarymodal": "3.45.0-rc.2",
|
|
64
|
+
"@elliemae/ds-indeterminate-progress-indicator": "3.45.0-rc.2",
|
|
65
|
+
"@elliemae/ds-label-value": "3.45.0-rc.2",
|
|
66
|
+
"@elliemae/ds-left-navigation": "3.45.0-rc.2",
|
|
67
|
+
"@elliemae/ds-list-section-header": "3.45.0-rc.2",
|
|
68
|
+
"@elliemae/ds-loading-indicator": "3.45.0-rc.2",
|
|
69
|
+
"@elliemae/ds-menu": "3.45.0-rc.2",
|
|
70
|
+
"@elliemae/ds-menu-items": "3.45.0-rc.2",
|
|
71
|
+
"@elliemae/ds-mini-toolbar": "3.45.0-rc.2",
|
|
72
|
+
"@elliemae/ds-modal": "3.45.0-rc.2",
|
|
73
|
+
"@elliemae/ds-mobile": "3.45.0-rc.2",
|
|
74
|
+
"@elliemae/ds-modal-slide": "3.45.0-rc.2",
|
|
75
|
+
"@elliemae/ds-number-range-field": "3.45.0-rc.2",
|
|
76
|
+
"@elliemae/ds-notification-badge": "3.45.0-rc.2",
|
|
77
|
+
"@elliemae/ds-page-header": "3.45.0-rc.2",
|
|
78
|
+
"@elliemae/ds-page-header-v1": "3.45.0-rc.2",
|
|
79
|
+
"@elliemae/ds-page-header-v2": "3.45.0-rc.2",
|
|
80
|
+
"@elliemae/ds-page-layout": "3.45.0-rc.2",
|
|
81
|
+
"@elliemae/ds-page-number": "3.45.0-rc.2",
|
|
82
|
+
"@elliemae/ds-pagination": "3.45.0-rc.2",
|
|
83
|
+
"@elliemae/ds-popperjs": "3.45.0-rc.2",
|
|
84
|
+
"@elliemae/ds-popover": "3.45.0-rc.2",
|
|
85
|
+
"@elliemae/ds-pills": "3.45.0-rc.2",
|
|
86
|
+
"@elliemae/ds-popper": "3.45.0-rc.2",
|
|
87
|
+
"@elliemae/ds-query-builder": "3.45.0-rc.2",
|
|
88
|
+
"@elliemae/ds-progress-indicator": "3.45.0-rc.2",
|
|
89
|
+
"@elliemae/ds-read-more": "3.45.0-rc.2",
|
|
90
|
+
"@elliemae/ds-resizeable-container": "3.45.0-rc.2",
|
|
91
|
+
"@elliemae/ds-ribbon": "3.45.0-rc.2",
|
|
92
|
+
"@elliemae/ds-search-field": "3.45.0-rc.2",
|
|
93
|
+
"@elliemae/ds-shuttle": "3.45.0-rc.2",
|
|
94
|
+
"@elliemae/ds-separator": "3.45.0-rc.2",
|
|
95
|
+
"@elliemae/ds-shuttle-v2": "3.45.0-rc.2",
|
|
96
|
+
"@elliemae/ds-side-panel": "3.45.0-rc.2",
|
|
97
|
+
"@elliemae/ds-skeleton": "3.45.0-rc.2",
|
|
98
|
+
"@elliemae/ds-spinner": "3.45.0-rc.2",
|
|
99
|
+
"@elliemae/ds-slider": "3.45.0-rc.2",
|
|
100
|
+
"@elliemae/ds-square-indicator": "3.45.0-rc.2",
|
|
101
|
+
"@elliemae/ds-stepper": "3.45.0-rc.2",
|
|
102
|
+
"@elliemae/ds-system": "3.45.0-rc.2",
|
|
103
|
+
"@elliemae/ds-svg": "3.45.0-rc.2",
|
|
104
|
+
"@elliemae/ds-tabs": "3.45.0-rc.2",
|
|
105
|
+
"@elliemae/ds-test-utils": "3.45.0-rc.2",
|
|
106
|
+
"@elliemae/ds-text-wrapper": "3.45.0-rc.2",
|
|
107
|
+
"@elliemae/ds-time-picker": "3.45.0-rc.2",
|
|
108
|
+
"@elliemae/ds-toast": "3.45.0-rc.2",
|
|
109
|
+
"@elliemae/ds-toolbar-v2": "3.45.0-rc.2",
|
|
110
|
+
"@elliemae/ds-toolbar": "3.45.0-rc.2",
|
|
111
|
+
"@elliemae/ds-tooltip": "3.45.0-rc.2",
|
|
112
|
+
"@elliemae/ds-treeview": "3.45.0-rc.2",
|
|
113
|
+
"@elliemae/ds-tree-model": "3.45.0-rc.2",
|
|
114
|
+
"@elliemae/ds-truncated-tooltip-text": "3.45.0-rc.2",
|
|
115
|
+
"@elliemae/ds-truncated-expandable-text": "3.45.0-rc.2",
|
|
116
|
+
"@elliemae/ds-transition": "3.45.0-rc.2",
|
|
117
|
+
"@elliemae/ds-uploader": "3.45.0-rc.2",
|
|
118
|
+
"@elliemae/ds-typography": "3.45.0-rc.2",
|
|
119
|
+
"@elliemae/ds-virtual-list": "3.45.0-rc.2",
|
|
120
|
+
"@elliemae/ds-wizard": "3.45.0-rc.2",
|
|
121
|
+
"@elliemae/ds-wysiwygeditor": "3.45.0-rc.2",
|
|
122
|
+
"@elliemae/ds-zipcode-search": "3.45.0-rc.2",
|
|
123
|
+
"@elliemae/ds-zoom": "3.45.0-rc.2"
|
|
124
124
|
}
|
|
125
125
|
}
|
|
@@ -10,32 +10,36 @@ if (!browser.capabilities['ice:options'].isPhone && !browser.capabilities['ice:o
|
|
|
10
10
|
if (errorOnGo) throw errorOnGo;
|
|
11
11
|
});
|
|
12
12
|
it('should display combobox correctly', async () => {
|
|
13
|
+
await browser.eyesOpen();
|
|
13
14
|
await (await ZIndexCO.getOpenSidePanel()).click();
|
|
14
15
|
await browser.pause(500);
|
|
15
16
|
const combobox = await ZIndexCO.getComboOnSidePanel();
|
|
16
17
|
await combobox.click();
|
|
17
|
-
const snapshot = await browser.
|
|
18
|
+
const snapshot = await browser.eyesCheckSnapshot(ZIndexCO.snapshotPath('zi-sidepanel-combobox'));
|
|
18
19
|
await expect(snapshot).toEqual(0);
|
|
19
20
|
});
|
|
20
21
|
it('should display dropdown correctly', async () => {
|
|
22
|
+
await browser.eyesOpen();
|
|
21
23
|
await browser.keys(Key.Escape);
|
|
22
24
|
const dropdownTrigger = await ZIndexCO.getDDButtonOnSidePanel();
|
|
23
25
|
await dropdownTrigger.click();
|
|
24
|
-
const snapshot = await browser.
|
|
26
|
+
const snapshot = await browser.eyesCheckSnapshot(ZIndexCO.snapshotPath('zi-sidepanel-dd'));
|
|
25
27
|
await expect(snapshot).toEqual(0);
|
|
26
28
|
});
|
|
27
29
|
it('should display picker correctly', async () => {
|
|
30
|
+
await browser.eyesOpen();
|
|
28
31
|
await browser.keys(Key.Escape);
|
|
29
32
|
const appPickerTrigger = await ZIndexCO.getAppPickerTriggerOnSidePanel();
|
|
30
33
|
await appPickerTrigger.click();
|
|
31
|
-
const snapshot = await browser.
|
|
34
|
+
const snapshot = await browser.eyesCheckSnapshot(ZIndexCO.snapshotPath('zi-sidepanel-apppicker'));
|
|
32
35
|
await expect(snapshot).toEqual(0);
|
|
33
36
|
});
|
|
34
37
|
it('should display date correctly', async () => {
|
|
38
|
+
await browser.eyesOpen();
|
|
35
39
|
await browser.keys(Key.Escape);
|
|
36
40
|
const dateTimeTrigger = await ZIndexCO.getDateTimeTriggerOnSidePanel();
|
|
37
41
|
await dateTimeTrigger.click();
|
|
38
|
-
const snapshot = await browser.
|
|
42
|
+
const snapshot = await browser.eyesCheckSnapshot(ZIndexCO.snapshotPath('zi-sidepanel-datetime'));
|
|
39
43
|
await expect(snapshot).toEqual(0);
|
|
40
44
|
});
|
|
41
45
|
});
|
|
@@ -46,32 +50,36 @@ if (!browser.capabilities['ice:options'].isPhone && !browser.capabilities['ice:o
|
|
|
46
50
|
if (errorOnGo) throw errorOnGo;
|
|
47
51
|
});
|
|
48
52
|
it('should display combobox correctly', async () => {
|
|
53
|
+
await browser.eyesOpen();
|
|
49
54
|
await (await ZIndexCO.getOpenModalSlide()).click();
|
|
50
55
|
await browser.pause(500);
|
|
51
56
|
const combobox = await ZIndexCO.getComboOnModalSlide();
|
|
52
57
|
await combobox.click();
|
|
53
|
-
const snapshot = await browser.
|
|
58
|
+
const snapshot = await browser.eyesCheckSnapshot(ZIndexCO.snapshotPath('zi-modalslide-combo'));
|
|
54
59
|
await expect(snapshot).toEqual(0);
|
|
55
60
|
});
|
|
56
61
|
it('should display dropdown correctly', async () => {
|
|
62
|
+
await browser.eyesOpen();
|
|
57
63
|
await browser.keys(Key.Escape);
|
|
58
64
|
const dropDTrigger = await ZIndexCO.getDDButtonOnModalSlide();
|
|
59
65
|
await dropDTrigger.click();
|
|
60
|
-
const snapshot = await browser.
|
|
66
|
+
const snapshot = await browser.eyesCheckSnapshot(ZIndexCO.snapshotPath('zi-modalslide-dd'));
|
|
61
67
|
await expect(snapshot).toEqual(0);
|
|
62
68
|
});
|
|
63
69
|
it('should display picker correctly', async () => {
|
|
70
|
+
await browser.eyesOpen();
|
|
64
71
|
await browser.keys(Key.Escape);
|
|
65
72
|
const appPickerTrigger = await ZIndexCO.getAppPickerTriggerOnModalSlide();
|
|
66
73
|
await appPickerTrigger.click();
|
|
67
|
-
const snapshot = await browser.
|
|
74
|
+
const snapshot = await browser.eyesCheckSnapshot(ZIndexCO.snapshotPath('zi-modalslide-apppicker'));
|
|
68
75
|
await expect(snapshot).toEqual(0);
|
|
69
76
|
});
|
|
70
77
|
it('should display date correctly', async () => {
|
|
78
|
+
await browser.eyesOpen();
|
|
71
79
|
await browser.keys(Key.Escape);
|
|
72
80
|
const dateRangeTrigger = await ZIndexCO.getDateRangeTriggerOnModalSlide();
|
|
73
81
|
await dateRangeTrigger.click();
|
|
74
|
-
const snapshot = await browser.
|
|
82
|
+
const snapshot = await browser.eyesCheckSnapshot(ZIndexCO.snapshotPath('zi-modalslide-date'));
|
|
75
83
|
await expect(snapshot).toEqual(0);
|
|
76
84
|
});
|
|
77
85
|
});
|
|
@@ -160,7 +168,9 @@ if (!browser.capabilities['ice:options'].isPhone && !browser.capabilities['ice:o
|
|
|
160
168
|
await browser.eyesOpen();
|
|
161
169
|
await (await ZIndexCO.getPickerChip(2)).click();
|
|
162
170
|
await browser.keys(Key.Escape);
|
|
163
|
-
await
|
|
171
|
+
await browser.keys(Key.PageUp);
|
|
172
|
+
const openDialogBtn = await ZIndexCO.getOpenDialogOnModalSlide();
|
|
173
|
+
await openDialogBtn.click();
|
|
164
174
|
await browser.pause(500);
|
|
165
175
|
const dateTrigger = await ZIndexCO.getDateRangeOnModalSlideDialog();
|
|
166
176
|
await dateTrigger.click();
|
|
@@ -175,7 +185,7 @@ if (!browser.capabilities['ice:options'].isPhone && !browser.capabilities['ice:o
|
|
|
175
185
|
await browser.pause(500);
|
|
176
186
|
const nestest = await ZIndexCO.getNestestDD();
|
|
177
187
|
await nestest.click();
|
|
178
|
-
const snapshot = await browser.
|
|
188
|
+
const snapshot = await browser.eyesCheckSnapshot(ZIndexCO.snapshotPath('zi-modalslide-dialog-nestest'));
|
|
179
189
|
await expect(snapshot).toEqual(0);
|
|
180
190
|
});
|
|
181
191
|
}
|