Skip to content

Commit 908263c

Browse files
committed
Fix e2e tests
1 parent 496439c commit 908263c

File tree

1 file changed

+24
-31
lines changed

1 file changed

+24
-31
lines changed

integrations/tests/tests/cursor.spec.tsx

Lines changed: 24 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,11 @@ import { calculateHitArea } from "../src/utils/calculateHitArea";
44
import { getCenterCoordinates } from "../src/utils/getCenterCoordinates";
55
import { goToUrl } from "../src/utils/goToUrl";
66

7+
// The cursor boundary check logic relies on the layout not changing between two movements in order to detect "you've moved too far, there's no more resizing that can be done"
8+
// This type of test isn't totally realistic; only one mouse-move between big pixel gaps is unlikely in all but the most extreme perf bottlenecks.
9+
// To mimic something closer to a real world scenario, we need to split move events into multiple pointer move events.
10+
const moveConfig = { steps: 10 };
11+
712
test.describe("cursor", () => {
813
for (const usePopUpWindow of [true, false]) {
914
test.describe(usePopUpWindow ? "in a popup" : "in the main window", () => {
@@ -25,22 +30,20 @@ test.describe("cursor", () => {
2530
await page.evaluate(() => getComputedStyle(document.body).cursor)
2631
).toBe("auto");
2732

28-
await page.mouse.move(x, y);
33+
await page.mouse.move(x, y, moveConfig);
2934

3035
expect(
3136
await page.evaluate(() => getComputedStyle(document.body).cursor)
3237
).toBe("ew-resize");
3338

3439
await page.mouse.down();
35-
await page.mouse.move(50, y);
36-
await page.mouse.move(25, y);
40+
await page.mouse.move(25, y, moveConfig);
3741

3842
expect(
3943
await page.evaluate(() => getComputedStyle(document.body).cursor)
4044
).toBe("e-resize");
4145

42-
await page.mouse.move(950, y);
43-
await page.mouse.move(975, y);
46+
await page.mouse.move(975, y, moveConfig);
4447

4548
expect(
4649
await page.evaluate(() => getComputedStyle(document.body).cursor)
@@ -65,22 +68,20 @@ test.describe("cursor", () => {
6568
await page.evaluate(() => getComputedStyle(document.body).cursor)
6669
).toBe("auto");
6770

68-
await page.mouse.move(x, y);
71+
await page.mouse.move(x, y, moveConfig);
6972

7073
expect(
7174
await page.evaluate(() => getComputedStyle(document.body).cursor)
7275
).toBe("ns-resize");
7376

7477
await page.mouse.down();
75-
await page.mouse.move(x, 1);
76-
await page.mouse.move(x, 0);
78+
await page.mouse.move(x, 0, moveConfig);
7779

7880
expect(
7981
await page.evaluate(() => getComputedStyle(document.body).cursor)
8082
).toBe("s-resize");
8183

82-
await page.mouse.move(x, 599);
83-
await page.mouse.move(x, 600);
84+
await page.mouse.move(x, 600, moveConfig);
8485

8586
expect(
8687
await page.evaluate(() => getComputedStyle(document.body).cursor)
@@ -114,70 +115,62 @@ test.describe("cursor", () => {
114115
).toBe("auto");
115116

116117
// Centered
117-
await page.mouse.move(x, y);
118+
await page.mouse.move(x, y, moveConfig);
118119
expect(
119120
await page.evaluate(() => getComputedStyle(document.body).cursor)
120121
).toBe("move");
121122

122123
// Top left
123124
await page.mouse.down();
124-
await page.mouse.move(2, 1);
125-
await page.mouse.move(1, 1);
125+
await page.mouse.move(1, 1, moveConfig);
126126
expect(
127127
await page.evaluate(() => getComputedStyle(document.body).cursor)
128128
).toBe("se-resize");
129129

130130
// Top
131-
await page.mouse.move(x, 1);
132-
await page.mouse.move(x, 0);
131+
await page.mouse.move(x, 0, moveConfig);
133132
expect(
134133
await page.evaluate(() => getComputedStyle(document.body).cursor)
135134
).toBe("s-resize");
136135

137136
// Top right
138-
await page.mouse.move(999, 1);
139-
await page.mouse.move(1000, 1);
137+
await page.mouse.move(1000, 1, moveConfig);
140138
expect(
141139
await page.evaluate(() => getComputedStyle(document.body).cursor)
142140
).toBe("sw-resize");
143141

144142
// Right
145-
await page.mouse.move(950, y);
146-
await page.mouse.move(975, y);
143+
await page.mouse.move(975, y, moveConfig);
147144
expect(
148145
await page.evaluate(() => getComputedStyle(document.body).cursor)
149146
).toBe("w-resize");
150147

151148
// Bottom right
152-
await page.mouse.move(1000, 599);
153-
await page.mouse.move(1000, 600);
149+
await page.mouse.move(1000, 600, moveConfig);
154150
expect(
155151
await page.evaluate(() => getComputedStyle(document.body).cursor)
156152
).toBe("nw-resize");
157153

158154
// Bottom
159-
await page.mouse.move(x, 599);
160-
await page.mouse.move(x, 600);
155+
await page.mouse.move(x, 600, moveConfig);
161156
expect(
162157
await page.evaluate(() => getComputedStyle(document.body).cursor)
163158
).toBe("n-resize");
164159

165160
// Bottom left
166-
await page.mouse.move(1, 599);
167-
await page.mouse.move(1, 600);
161+
await page.mouse.move(1, 600, moveConfig);
168162
expect(
169163
await page.evaluate(() => getComputedStyle(document.body).cursor)
170164
).toBe("ne-resize");
171165

172166
// Left
173-
await page.mouse.move(50, y);
174-
await page.mouse.move(25, y);
167+
await page.mouse.move(25, y, moveConfig);
175168
expect(
176169
await page.evaluate(() => getComputedStyle(document.body).cursor)
177170
).toBe("e-resize");
178171

179172
// Centered
180-
await page.mouse.move(x, y);
173+
await page.mouse.move(x, y, moveConfig);
181174
expect(
182175
await page.evaluate(() => getComputedStyle(document.body).cursor)
183176
).toBe("move");
@@ -210,15 +203,15 @@ test.describe("cursor", () => {
210203
).toBe("auto");
211204

212205
// Centered
213-
await page.mouse.move(x, y);
206+
await page.mouse.move(x, y, moveConfig);
214207
expect(
215208
await page.evaluate(() => getComputedStyle(document.body).cursor)
216209
).toBe("move");
217210

218211
await page.mouse.down();
219212

220213
// Moving only in one dimension should not affect the cursor
221-
await page.mouse.move(x, y - 25);
214+
await page.mouse.move(x, y - 25, moveConfig);
222215
expect(
223216
await page.evaluate(() => getComputedStyle(document.body).cursor)
224217
).toBe("move");
@@ -242,7 +235,7 @@ test.describe("cursor", () => {
242235
await page.evaluate(() => getComputedStyle(document.body).cursor)
243236
).toBe("auto");
244237

245-
await page.mouse.move(x, y);
238+
await page.mouse.move(x, y, moveConfig);
246239

247240
expect(
248241
await page.evaluate(() => getComputedStyle(document.body).cursor)

0 commit comments

Comments
 (0)