|
1 | 1 | import CardView from 'devextreme-testcafe-models/cardView'; |
2 | 2 | import url from '../../../helpers/getPageUrl'; |
3 | 3 | import { createWidget } from '../../../helpers/createWidget'; |
| 4 | +import { getCardFieldCaptions } from '../helpers/cardUtils'; |
4 | 5 |
|
5 | 6 | fixture`CardView - ColumnChooser.Functional` |
6 | 7 | .page(url(__dirname, '../../container.html')); |
@@ -184,3 +185,65 @@ test('ColumnChooser should receive and render custom texts', async (t) => { |
184 | 185 | }).after(async (t) => { |
185 | 186 | await t.eval(() => location.reload()); |
186 | 187 | }); |
| 188 | + |
| 189 | +test('cards should update when column is hidden via column chooser (select mode) (T1324855)', async (t) => { |
| 190 | + const cardView = new CardView('#container'); |
| 191 | + |
| 192 | + const initialCaptions = await getCardFieldCaptions(t, cardView, 3); |
| 193 | + await t.expect(initialCaptions).eql(['A', 'B', 'C']); |
| 194 | + |
| 195 | + await cardView.apiShowColumnChooser(); |
| 196 | + |
| 197 | + await t.click(cardView.getColumnChooser().getCheckbox(0)); |
| 198 | + |
| 199 | + const captionsAfterHide = await getCardFieldCaptions(t, cardView, 2); |
| 200 | + await t.expect(captionsAfterHide).eql(['B', 'C']); |
| 201 | + |
| 202 | + await t.click(cardView.getColumnChooser().getCheckbox(0)); |
| 203 | + |
| 204 | + const captionsAfterShow = await getCardFieldCaptions(t, cardView, 3); |
| 205 | + await t.expect(captionsAfterShow).eql(['A', 'B', 'C']); |
| 206 | +}).before(async () => createWidget('dxCardView', { |
| 207 | + dataSource: [ |
| 208 | + { a: 1, b: 2, c: 3 }, |
| 209 | + ], |
| 210 | + columns: ['a', 'b', 'c'], |
| 211 | + columnChooser: { |
| 212 | + enabled: true, |
| 213 | + mode: 'select', |
| 214 | + }, |
| 215 | +})); |
| 216 | + |
| 217 | +test('cards should update when column is hidden via column chooser (dragAndDrop mode) (T1324855)', async (t) => { |
| 218 | + const cardView = new CardView('#container'); |
| 219 | + |
| 220 | + const initialCaptions = await getCardFieldCaptions(t, cardView, 3); |
| 221 | + await t.expect(initialCaptions).eql(['A', 'B', 'C']); |
| 222 | + |
| 223 | + await cardView.apiShowColumnChooser(); |
| 224 | + |
| 225 | + await t.dragToElement( |
| 226 | + cardView.getHeaderPanel().getHeaderItem(0).element, |
| 227 | + cardView.getColumnChooser().content, |
| 228 | + ); |
| 229 | + |
| 230 | + const captionsAfterHide = await getCardFieldCaptions(t, cardView, 2); |
| 231 | + await t.expect(captionsAfterHide).eql(['B', 'C']); |
| 232 | + |
| 233 | + await t.dragToElement( |
| 234 | + cardView.getColumnChooser().getColumn(0), |
| 235 | + cardView.getHeaderPanel().element, |
| 236 | + ); |
| 237 | + |
| 238 | + const captionsAfterShow = await getCardFieldCaptions(t, cardView, 3); |
| 239 | + await t.expect(captionsAfterShow).eql(['A', 'B', 'C']); |
| 240 | +}).before(async () => createWidget('dxCardView', { |
| 241 | + dataSource: [ |
| 242 | + { a: 1, b: 2, c: 3 }, |
| 243 | + ], |
| 244 | + columns: ['a', 'b', 'c'], |
| 245 | + columnChooser: { |
| 246 | + enabled: true, |
| 247 | + mode: 'dragAndDrop', |
| 248 | + }, |
| 249 | +})); |
0 commit comments