@@ -129,13 +129,13 @@ test(
129
129
async ( { page, scene, toolbar } ) => {
130
130
const u = await getUtils ( page )
131
131
await page . setViewportSize ( { width : 1200 , height : 500 } )
132
- const PUR = 400 / 37.5 //pixeltoUnitRatio
133
132
await u . waitForAuthSkipAppStart ( )
134
133
135
- const startXPx = 600
134
+ const startPixelX = 600
135
+ const pixelToUnitRatio = 400 / 37.5
136
136
const [ endOfTangentClk , endOfTangentMv ] = scene . makeMouseHelpers (
137
- startXPx + PUR * 30 ,
138
- 500 - PUR * 20 ,
137
+ startPixelX + pixelToUnitRatio * 30 ,
138
+ 500 - pixelToUnitRatio * 20 ,
139
139
{ steps : 10 }
140
140
)
141
141
const [ threePointArcMidPointClk , threePointArcMidPointMv ] =
@@ -149,35 +149,41 @@ test(
149
149
steps : 10 ,
150
150
} )
151
151
152
- // click on " Start Sketch" button
152
+ // Start a sketch
153
153
await u . doAndWaitForImageDiff (
154
154
( ) => page . getByRole ( 'button' , { name : 'Start Sketch' } ) . click ( ) ,
155
155
200
156
156
)
157
157
158
- // select a plane
158
+ // Select a plane
159
159
await page . mouse . click ( 700 , 200 )
160
-
161
160
let code = `sketch001 = startSketchOn(XZ)`
162
161
await expect ( page . locator ( '.cm-content' ) ) . toHaveText ( code )
163
162
164
- await page . waitForTimeout ( 700 ) // TODO detect animation ending, or disable animation
165
-
166
- await page . mouse . click ( startXPx + PUR * 10 , 500 - PUR * 10 )
163
+ await page . mouse . click (
164
+ startPixelX + pixelToUnitRatio * 10 ,
165
+ 500 - pixelToUnitRatio * 10
166
+ )
167
167
code += `profile001 = startProfile(sketch001, at = [182.59, -246.32])`
168
168
await expect ( page . locator ( '.cm-content' ) ) . toHaveText ( code )
169
169
await page . waitForTimeout ( 100 )
170
170
171
- await page . mouse . move ( startXPx + PUR * 20 , 500 - PUR * 10 )
171
+ await page . mouse . move (
172
+ startPixelX + pixelToUnitRatio * 20 ,
173
+ 500 - pixelToUnitRatio * 10
174
+ )
172
175
173
- await page . waitForTimeout ( 500 )
176
+ await page . waitForTimeout ( 1_500 ) // modeling machine timeout is 1s
174
177
await expect ( page ) . toHaveScreenshot ( {
175
178
maxDiffPixels : 100 ,
176
179
mask : lowerRightMasks ( page ) ,
177
180
} )
178
181
179
182
const lineEndClick = ( ) =>
180
- page . mouse . click ( startXPx + PUR * 20 , 500 - PUR * 10 )
183
+ page . mouse . click (
184
+ startPixelX + pixelToUnitRatio * 20 ,
185
+ 500 - pixelToUnitRatio * 10
186
+ )
181
187
await lineEndClick ( )
182
188
await page . waitForTimeout ( 500 )
183
189
@@ -197,7 +203,7 @@ test(
197
203
await page . waitForTimeout ( 500 )
198
204
199
205
await endOfTangentMv ( )
200
- await page . waitForTimeout ( 500 )
206
+ await page . waitForTimeout ( 1_500 ) // modeling machine timeout is 1s
201
207
await expect ( page ) . toHaveScreenshot ( {
202
208
maxDiffPixels : 100 ,
203
209
mask : lowerRightMasks ( page ) ,
@@ -208,7 +214,7 @@ test(
208
214
await page . waitForTimeout ( 500 )
209
215
await endOfTangentClk ( )
210
216
await threePointArcMidPointMv ( )
211
- await page . waitForTimeout ( 500 )
217
+ await page . waitForTimeout ( 1_500 ) // modeling machine timeout is 1s
212
218
await expect ( page ) . toHaveScreenshot ( {
213
219
maxDiffPixels : 100 ,
214
220
mask : lowerRightMasks ( page ) ,
@@ -217,7 +223,7 @@ test(
217
223
await page . waitForTimeout ( 100 )
218
224
219
225
await threePointArcEndPointMv ( )
220
- await page . waitForTimeout ( 500 )
226
+ await page . waitForTimeout ( 1_500 ) // modeling machine timeout is 1s
221
227
await expect ( page ) . toHaveScreenshot ( {
222
228
maxDiffPixels : 100 ,
223
229
mask : lowerRightMasks ( page ) ,
@@ -237,7 +243,7 @@ test(
237
243
await arcCenterClk ( )
238
244
239
245
await arcEndMv ( )
240
- await page . waitForTimeout ( 500 )
246
+ await page . waitForTimeout ( 1_500 ) // modeling machine timeout is 1s
241
247
await expect ( page ) . toHaveScreenshot ( {
242
248
maxDiffPixels : 100 ,
243
249
mask : lowerRightMasks ( page ) ,
@@ -252,42 +258,38 @@ test(
252
258
async ( { page, context, cmdBar, scene } ) => {
253
259
const u = await getUtils ( page )
254
260
await page . setViewportSize ( { width : 1200 , height : 500 } )
255
- const PUR = 400 / 37.5 //pixeltoUnitRatio
256
-
257
261
await u . waitForAuthSkipAppStart ( )
258
262
259
- // click on " Start Sketch" button
263
+ // Start a sketch
260
264
await u . doAndWaitForImageDiff (
261
265
( ) => page . getByRole ( 'button' , { name : 'Start Sketch' } ) . click ( ) ,
262
266
200
263
267
)
264
268
265
- // select a plane
269
+ // Select a plane
266
270
await page . mouse . click ( 700 , 200 )
267
-
268
271
await expect ( page . locator ( '.cm-content' ) ) . toHaveText (
269
272
`sketch001 = startSketchOn(XZ)`
270
273
)
271
274
272
- // Wait for camera animation
273
- await page . waitForTimeout ( 2000 )
274
-
275
- const startXPx = 600
276
-
277
275
// Equip the rectangle tool
278
- const rectangleBtn = page . getByTestId ( 'corner-rectangle' )
279
- await rectangleBtn . click ( )
280
- await expect ( rectangleBtn ) . toHaveAttribute ( 'aria-pressed' , 'true' )
276
+ await page . getByTestId ( 'corner-rectangle' ) . click ( )
281
277
282
278
// Draw the rectangle
279
+ const startPixelX = 600
280
+ const pixelToUnitRatio = 400 / 37.5
283
281
const rectanglePointOne : [ number , number ] = [
284
- startXPx + PUR * 40 ,
285
- 500 - PUR * 30 ,
282
+ startPixelX + pixelToUnitRatio * 40 ,
283
+ 500 - pixelToUnitRatio * 30 ,
286
284
]
287
285
await page . mouse . move ( ...rectanglePointOne , { steps : 5 } )
288
- await page . mouse . click ( ...rectanglePointOne , { delay : 50 } )
289
- await page . mouse . move ( startXPx + PUR * 10 , 500 - PUR * 10 , { steps : 5 } )
290
- await page . waitForTimeout ( 800 )
286
+ await page . mouse . click ( ...rectanglePointOne , { delay : 500 } )
287
+ await page . mouse . move (
288
+ startPixelX + pixelToUnitRatio * 10 ,
289
+ 500 - pixelToUnitRatio * 10 ,
290
+ { steps : 5 }
291
+ )
292
+ await page . waitForTimeout ( 1_500 ) // modeling machine timeout is 1s
291
293
292
294
// Ensure the draft rectangle looks the same as it usually does
293
295
await expect ( page ) . toHaveScreenshot ( {
@@ -302,36 +304,38 @@ test(
302
304
async ( { page, context, cmdBar, scene } ) => {
303
305
const u = await getUtils ( page )
304
306
await page . setViewportSize ( { width : 1200 , height : 500 } )
305
- const PUR = 400 / 37.5 //pixeltoUnitRatio
306
-
307
307
await u . waitForAuthSkipAppStart ( )
308
308
309
+ // Start a sketch
309
310
await u . doAndWaitForImageDiff (
310
311
( ) => page . getByRole ( 'button' , { name : 'Start Sketch' } ) . click ( ) ,
311
312
200
312
313
)
313
314
314
- // select a plane
315
+ // Select a plane
315
316
await page . mouse . click ( 700 , 200 )
316
-
317
317
await expect ( page . locator ( '.cm-content' ) ) . toHaveText (
318
318
`sketch001 = startSketchOn(XZ)`
319
319
)
320
320
321
- // Wait for camera animation
322
- await page . waitForTimeout ( 2000 )
323
-
324
- const startXPx = 600
325
-
326
- // Equip the rectangle tool
327
- // await page.getByRole('button', { name: 'line Line', exact: true }).click()
321
+ // Equip the circle tool
328
322
await page . getByTestId ( 'circle-center' ) . click ( )
329
323
330
- // Draw the rectangle
331
- await page . mouse . click ( startXPx + PUR * 20 , 500 - PUR * 20 )
332
- await page . mouse . move ( startXPx + PUR * 10 , 500 - PUR * 10 , { steps : 5 } )
324
+ // Draw the circle
325
+ const startPixelX = 600
326
+ const pixelToUnitRatio = 400 / 37.5
327
+ await page . mouse . click (
328
+ startPixelX + pixelToUnitRatio * 20 ,
329
+ 500 - pixelToUnitRatio * 20
330
+ )
331
+ await page . mouse . move (
332
+ startPixelX + pixelToUnitRatio * 10 ,
333
+ 500 - pixelToUnitRatio * 10 ,
334
+ { steps : 5 }
335
+ )
336
+ await page . waitForTimeout ( 1_500 ) // modeling machine timeout is 1s
333
337
334
- // Ensure the draft rectangle looks the same as it usually does
338
+ // Ensure the draft circle looks the same as it usually does
335
339
await expect ( page ) . toHaveScreenshot ( {
336
340
maxDiffPixels : 100 ,
337
341
mask : lowerRightMasks ( page ) ,
0 commit comments