Skip to content

Commit b5fc782

Browse files
committed
Scheduler: use testScreenshot utility in e2e tests: layout
1 parent d05b4d1 commit b5fc782

File tree

724 files changed

+536
-555
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

724 files changed

+536
-555
lines changed

e2e/testcafe-devextreme/tests/scheduler/common/layout/adaptive/adaptive.ts

Lines changed: 81 additions & 88 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ import Scheduler from 'devextreme-testcafe-models/scheduler';
33
import { createWidget } from '../../../../../helpers/createWidget';
44
import url from '../../../../../helpers/getPageUrl';
55
import { ADAPTIVE_SIZE } from '../../const';
6-
import { changeTheme } from '../../../../../helpers/changeTheme';
6+
import { testScreenshot } from '../../../../../helpers/themeUtils';
77
import {
88
createDataSetForScreenShotTests,
99
resourceDataSource,
@@ -26,97 +26,90 @@ const createScheduler = async (
2626
});
2727
};
2828

29-
['generic.light', 'material.blue.light', 'fluent.blue.light'].forEach((theme) => {
30-
const themePrefix = theme.split('.')[0];
31-
32-
[false, true].forEach((rtlEnabled) => {
33-
[false, true].forEach((crossScrollingEnabled) => {
34-
test.meta({ browserSize: ADAPTIVE_SIZE })(`Adaptive views layout test in ${themePrefix} theme, crossScrollingEnabled=${crossScrollingEnabled}${rtlEnabled ? 'in RTL' : ''}`, async (t) => {
35-
const scheduler = new Scheduler('#container');
36-
const { takeScreenshot, compareResults } = createScreenshotsComparer(t);
37-
38-
// eslint-disable-next-line no-restricted-syntax
39-
for (const view of views) {
40-
await scheduler.option('currentView', view);
41-
42-
await t.expect(
43-
await takeScreenshot(`${themePrefix}-view=${view}-crossScrolling=${crossScrollingEnabled}${rtlEnabled ? '-rtl' : ''}.png`, scheduler.workSpace),
44-
).ok();
45-
}
46-
47-
await t.expect(compareResults.isValid())
48-
.ok(compareResults.errorMessages());
49-
}).before(async () => {
50-
await changeTheme(theme);
51-
52-
await createScheduler({
53-
views,
54-
currentView: 'day',
55-
crossScrollingEnabled,
56-
rtlEnabled,
57-
});
58-
}).after(async () => {
59-
await changeTheme('generic.light');
29+
[false, true].forEach((rtlEnabled) => {
30+
[false, true].forEach((crossScrollingEnabled) => {
31+
test.meta({ browserSize: ADAPTIVE_SIZE })(`Adaptive views layout test, crossScrollingEnabled=${crossScrollingEnabled}${rtlEnabled ? 'in RTL' : ''}`, async (t) => {
32+
const scheduler = new Scheduler('#container');
33+
const { takeScreenshot, compareResults } = createScreenshotsComparer(t);
34+
35+
// eslint-disable-next-line no-restricted-syntax
36+
for (const view of views) {
37+
await scheduler.option('currentView', view);
38+
39+
await testScreenshot(
40+
t,
41+
takeScreenshot,
42+
`view=${view}-crossScrolling=${crossScrollingEnabled}${rtlEnabled ? '-rtl' : ''}.png`,
43+
{ element: scheduler.workSpace },
44+
);
45+
}
46+
47+
await t.expect(compareResults.isValid())
48+
.ok(compareResults.errorMessages());
49+
}).before(async () => {
50+
await createScheduler({
51+
views,
52+
currentView: 'day',
53+
crossScrollingEnabled,
54+
rtlEnabled,
6055
});
56+
});
6157

62-
test.meta({ browserSize: ADAPTIVE_SIZE })(`Adaptive views layout test in ${themePrefix} theme, crossScrollingEnabled=${crossScrollingEnabled} when horizontal grouping${rtlEnabled ? ' and RTL are' : ' is'} used`, async (t) => {
63-
const scheduler = new Scheduler('#container');
64-
const { takeScreenshot, compareResults } = createScreenshotsComparer(t);
65-
66-
// eslint-disable-next-line no-restricted-syntax
67-
for (const view of views) {
68-
await scheduler.option('currentView', view);
69-
70-
await t.expect(
71-
await takeScreenshot(`${themePrefix}-view=${view}-crossScrolling=${crossScrollingEnabled}-horizontal${rtlEnabled ? '-rtl' : ''}.png`, scheduler.workSpace),
72-
).ok();
73-
}
74-
75-
await t.expect(compareResults.isValid())
76-
.ok(compareResults.errorMessages());
77-
}).before(async () => {
78-
await changeTheme(theme);
79-
80-
await createScheduler({
81-
views: horizontalViews,
82-
currentView: 'day',
83-
crossScrollingEnabled,
84-
rtlEnabled,
85-
groups: ['priorityId'],
86-
resources: resourceDataSource,
87-
});
88-
}).after(async () => {
89-
await changeTheme('generic.light');
58+
test.meta({ browserSize: ADAPTIVE_SIZE })(`Adaptive views layout test crossScrollingEnabled=${crossScrollingEnabled} when horizontal grouping${rtlEnabled ? ' and RTL are' : ' is'} used`, async (t) => {
59+
const scheduler = new Scheduler('#container');
60+
const { takeScreenshot, compareResults } = createScreenshotsComparer(t);
61+
62+
// eslint-disable-next-line no-restricted-syntax
63+
for (const view of views) {
64+
await scheduler.option('currentView', view);
65+
66+
await testScreenshot(
67+
t,
68+
takeScreenshot,
69+
`view=${view}-crossScrolling=${crossScrollingEnabled}-horizontal${rtlEnabled ? '-rtl' : ''}.png`,
70+
{ element: scheduler.workSpace },
71+
);
72+
}
73+
74+
await t.expect(compareResults.isValid())
75+
.ok(compareResults.errorMessages());
76+
}).before(async () => {
77+
await createScheduler({
78+
views: horizontalViews,
79+
currentView: 'day',
80+
crossScrollingEnabled,
81+
rtlEnabled,
82+
groups: ['priorityId'],
83+
resources: resourceDataSource,
9084
});
85+
});
9186

92-
test.meta({ browserSize: ADAPTIVE_SIZE })(`Adaptive views layout test in ${themePrefix} theme, crossScrollingEnabled=${crossScrollingEnabled} when vertical grouping${rtlEnabled ? ' and RTL are' : ' is'} used`, async (t) => {
93-
const scheduler = new Scheduler('#container');
94-
const { takeScreenshot, compareResults } = createScreenshotsComparer(t);
95-
96-
// eslint-disable-next-line no-restricted-syntax
97-
for (const view of views) {
98-
await scheduler.option('currentView', view);
99-
100-
await t.expect(
101-
await takeScreenshot(`${themePrefix}-view=${view}-crossScrolling=${crossScrollingEnabled}-vertical${rtlEnabled ? '-rtl' : ''}.png`, scheduler.workSpace),
102-
).ok();
103-
}
104-
105-
await t.expect(compareResults.isValid())
106-
.ok(compareResults.errorMessages());
107-
}).before(async () => {
108-
await changeTheme(theme);
109-
110-
await createScheduler({
111-
views: verticalViews,
112-
currentView: 'day',
113-
crossScrollingEnabled,
114-
rtlEnabled,
115-
groups: ['priorityId'],
116-
resources: resourceDataSource,
117-
});
118-
}).after(async () => {
119-
await changeTheme('generic.light');
87+
test.meta({ browserSize: ADAPTIVE_SIZE })(`Adaptive views layout test, crossScrollingEnabled=${crossScrollingEnabled} when vertical grouping${rtlEnabled ? ' and RTL are' : ' is'} used`, async (t) => {
88+
const scheduler = new Scheduler('#container');
89+
const { takeScreenshot, compareResults } = createScreenshotsComparer(t);
90+
91+
// eslint-disable-next-line no-restricted-syntax
92+
for (const view of views) {
93+
await scheduler.option('currentView', view);
94+
95+
await testScreenshot(
96+
t,
97+
takeScreenshot,
98+
`view=${view}-crossScrolling=${crossScrollingEnabled}-vertical${rtlEnabled ? '-rtl' : ''}.png`,
99+
{ element: scheduler.workSpace },
100+
);
101+
}
102+
103+
await t.expect(compareResults.isValid())
104+
.ok(compareResults.errorMessages());
105+
}).before(async () => {
106+
await createScheduler({
107+
views: verticalViews,
108+
currentView: 'day',
109+
crossScrollingEnabled,
110+
rtlEnabled,
111+
groups: ['priorityId'],
112+
resources: resourceDataSource,
120113
});
121114
});
122115
});

0 commit comments

Comments
 (0)