Skip to content

Commit c658d4d

Browse files
authored
CardView - fix test for column chooser (DevExpress#30275)
1 parent bcf4a3d commit c658d4d

File tree

3 files changed

+52
-4
lines changed

3 files changed

+52
-4
lines changed

e2e/testcafe-devextreme/tests/cardView/columnChooser/functional.ts

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -62,14 +62,30 @@ testsFactory({
6262
);
6363
},
6464
async assertFirstColumnVisible(t: TestController, cardView: CardView) {
65+
await t.expect(cardView.getColumnChooser().getColumnsCount()).eql(3);
66+
6567
await t.expect(
6668
cardView.getColumnChooser().isCheckboxChecked(0),
6769
).ok();
70+
await t.expect(
71+
cardView.getColumnChooser().isCheckboxChecked(1),
72+
).ok();
73+
await t.expect(
74+
cardView.getColumnChooser().isCheckboxChecked(2),
75+
).ok();
6876
},
6977
async assertFirstColumnHidden(t: TestController, cardView: CardView) {
78+
await t.expect(cardView.getColumnChooser().getColumnsCount()).eql(3);
79+
7080
await t.expect(
7181
cardView.getColumnChooser().isCheckboxChecked(0),
7282
).notOk();
83+
await t.expect(
84+
cardView.getColumnChooser().isCheckboxChecked(1),
85+
).ok();
86+
await t.expect(
87+
cardView.getColumnChooser().isCheckboxChecked(2),
88+
).ok();
7389
},
7490
});
7591

@@ -94,11 +110,36 @@ testsFactory({
94110
);
95111
},
96112
async assertFirstColumnVisible(t: TestController, cardView: CardView) {
113+
await t.expect(
114+
cardView.getHeaderPanel().getHeaderItemsCount(),
115+
).eql(3);
116+
97117
await t.expect(
98118
cardView.getHeaderPanel().getHeaderItem(0).element.textContent,
99119
).eql('A');
120+
await t.expect(
121+
cardView.getHeaderPanel().getHeaderItem(1).element.textContent,
122+
).eql('B');
123+
await t.expect(
124+
cardView.getHeaderPanel().getHeaderItem(2).element.textContent,
125+
).eql('C');
100126
},
101127
async assertFirstColumnHidden(t: TestController, cardView: CardView) {
128+
await t.expect(
129+
cardView.getHeaderPanel().getHeaderItemsCount(),
130+
).eql(2);
131+
132+
await t.expect(
133+
cardView.getHeaderPanel().getHeaderItem(0).element.textContent,
134+
).eql('B');
135+
await t.expect(
136+
cardView.getHeaderPanel().getHeaderItem(1).element.textContent,
137+
).eql('C');
138+
139+
await t.expect(
140+
cardView.getColumnChooser().getColumnsCount(),
141+
).eql(1);
142+
102143
await t.expect(
103144
cardView.getColumnChooser().getColumn(0).textContent,
104145
).eql('A');

packages/testcafe-models/cardView/headerPanel.ts

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,16 +8,19 @@ const CLASS = {
88
}
99

1010
export default class HeaderPanel {
11+
private itemSelector = `.${Widget.addClassPrefix(this.widgetName, CLASS.headerItem)}`;
12+
1113
constructor(
1214
public element: Selector,
1315
public widgetName: string,
14-
) {
16+
) {}
17+
18+
getHeaderItemsCount(): Promise<number> {
19+
return this.element.find(this.itemSelector).count;
1520
}
1621

1722
getHeaderItem(idx = 0): HeaderItem {
18-
const itemElement = this.element.find(
19-
`.${Widget.addClassPrefix(this.widgetName, CLASS.headerItem)}`,
20-
).nth(idx);
23+
const itemElement = this.element.find(this.itemSelector).nth(idx);
2124
return new HeaderItem(itemElement);
2225
}
2326

packages/testcafe-models/dataGrid/columnChooser.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,10 @@ export default class ColumnChooser extends FocusableElement {
4949
return this.getCheckbox(nth).hasClass(CLASS.checkboxChecked);
5050
}
5151

52+
getColumnsCount(): Promise<number> {
53+
return this.content.find(`.${CLASS.treeViewItem}`).count;
54+
}
55+
5256
getColumn(index = 0): Selector {
5357
return this.content.find(`.${CLASS.treeViewItem}`).nth(index);
5458
}

0 commit comments

Comments
 (0)