Skip to content

Commit 170e8d8

Browse files
author
Julia Schwarz
committed
Use testHand
1 parent 629e3b0 commit 170e8d8

File tree

1 file changed

+40
-35
lines changed

1 file changed

+40
-35
lines changed

Assets/MixedRealityToolkit.Tests/PlayModeTests/NearInteractionTouchableTests.cs

Lines changed: 40 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -174,45 +174,47 @@ public IEnumerator NearInteractionTouchablePointerEvents()
174174
yield return new WaitForFixedUpdate();
175175
yield return null;
176176

177-
yield return PlayModeTestUtilities.ShowHand(Handedness.Right, inputSim);
177+
TestHand testHand = new TestHand(Handedness.Right);
178+
yield return testHand.Show(initialHandPosition);
178179

179180
using (var catcher = CreatePointerEventCatcher(touchable))
180181
{
181-
// Touch started and completed when entering and exiting
182-
yield return PlayModeTestUtilities.MoveHandFromTo(initialHandPosition, objectPosition, numSteps, ArticulatedHandPose.GestureId.Open, Handedness.Right, inputSim);
182+
yield return testHand.MoveTo(objectPosition);
183183
Assert.AreEqual(1, catcher.EventsStarted);
184184
Assert.AreEqual(0, catcher.EventsCompleted);
185-
yield return PlayModeTestUtilities.MoveHandFromTo(objectPosition, rightPosition, numSteps, ArticulatedHandPose.GestureId.Pinch, Handedness.Right, inputSim);
185+
yield return testHand.MoveTo(rightPosition);
186186
Assert.AreEqual(1, catcher.EventsStarted);
187187
Assert.AreEqual(1, catcher.EventsCompleted);
188188
Assert.Greater(catcher.DragEventCount, 0);
189189

190190
// Touch started and completed when entering and exiting behind the plane
191-
yield return PlayModeTestUtilities.MoveHandFromTo(initialHandPosition, objectPosition, numSteps, ArticulatedHandPose.GestureId.Open, Handedness.Right, inputSim);
191+
yield return testHand.MoveTo(initialHandPosition);
192+
yield return testHand.MoveTo(objectPosition);
192193
Assert.AreEqual(2, catcher.EventsStarted);
193194
Assert.AreEqual(1, catcher.EventsCompleted);
194-
yield return PlayModeTestUtilities.MoveHandFromTo(objectPosition, backPosition, numSteps, ArticulatedHandPose.GestureId.Pinch, Handedness.Right, inputSim);
195+
yield return testHand.MoveTo(backPosition);
195196
Assert.AreEqual(2, catcher.EventsStarted);
196197
Assert.AreEqual(2, catcher.EventsCompleted);
197198
Assert.Greater(catcher.DragEventCount, 1);
198199
int dragEventCount = catcher.DragEventCount;
199200

200201
// No touch when moving at behind the plane
201-
yield return PlayModeTestUtilities.MoveHandFromTo(backPosition, rightPosition, numSteps, ArticulatedHandPose.GestureId.Pinch, Handedness.Right, inputSim);
202+
yield return testHand.MoveTo(rightPosition);
202203
Assert.AreEqual(2, catcher.EventsStarted);
203204
Assert.AreEqual(2, catcher.EventsCompleted);
204205
Assert.AreEqual(dragEventCount, catcher.DragEventCount, "No drag events should fire when poke pointer moving behind plane");
205206

206207

207208
// No touch when moving outside the bounds
208-
yield return PlayModeTestUtilities.MoveHandFromTo(initialHandPosition + outOfBoundsOffset, objectPosition + outOfBoundsOffset, numSteps, ArticulatedHandPose.GestureId.Open, Handedness.Right, inputSim);
209-
yield return PlayModeTestUtilities.MoveHandFromTo(objectPosition + outOfBoundsOffset, rightPosition, numSteps, ArticulatedHandPose.GestureId.Open, Handedness.Right, inputSim);
209+
yield return testHand.MoveTo(initialHandPosition + outOfBoundsOffset);
210+
yield return testHand.MoveTo(objectPosition + outOfBoundsOffset);
211+
yield return testHand.MoveTo(rightPosition);
210212
Assert.AreEqual(2, catcher.EventsStarted);
211213
Assert.AreEqual(2, catcher.EventsCompleted);
212214
Assert.AreEqual(dragEventCount, catcher.DragEventCount, "No drag events should fire when poke pointer moving outside bounds");
213215
}
214216

215-
yield return PlayModeTestUtilities.HideHand(Handedness.Right, inputSim);
217+
yield return testHand.Hide();
216218

217219
UnityEngine.Object.Destroy(touchable.gameObject);
218220
}
@@ -230,39 +232,41 @@ public IEnumerator NearInteractionTouchableVariant()
230232
yield return new WaitForFixedUpdate();
231233
yield return null;
232234

233-
yield return PlayModeTestUtilities.ShowHand(Handedness.Right, inputSim);
235+
TestHand testHand = new TestHand(Handedness.Right);
236+
yield return testHand.Show(initialHandPosition);
234237

235238
using (var catcher = CreateTouchEventCatcher(touchable))
236239
{
237-
// Touch started and completed when entering and exiting
238-
yield return PlayModeTestUtilities.MoveHandFromTo(initialHandPosition, objectPosition, numSteps, ArticulatedHandPose.GestureId.Open, Handedness.Right, inputSim);
240+
yield return testHand.MoveTo(objectPosition);
239241
Assert.AreEqual(1, catcher.EventsStarted);
240242
Assert.AreEqual(0, catcher.EventsCompleted);
241-
yield return PlayModeTestUtilities.MoveHandFromTo(objectPosition, rightPosition, numSteps, ArticulatedHandPose.GestureId.Pinch, Handedness.Right, inputSim);
243+
yield return testHand.MoveTo(rightPosition);
242244
Assert.AreEqual(1, catcher.EventsStarted);
243245
Assert.AreEqual(1, catcher.EventsCompleted);
244246

245247
// Touch started and completed when entering and exiting behind the plane
246-
yield return PlayModeTestUtilities.MoveHandFromTo(initialHandPosition, objectPosition, numSteps, ArticulatedHandPose.GestureId.Open, Handedness.Right, inputSim);
248+
yield return testHand.MoveTo(initialHandPosition);
249+
yield return testHand.MoveTo(objectPosition);
247250
Assert.AreEqual(2, catcher.EventsStarted);
248251
Assert.AreEqual(1, catcher.EventsCompleted);
249-
yield return PlayModeTestUtilities.MoveHandFromTo(objectPosition, backPosition, numSteps, ArticulatedHandPose.GestureId.Pinch, Handedness.Right, inputSim);
252+
yield return testHand.MoveTo(backPosition);
250253
Assert.AreEqual(2, catcher.EventsStarted);
251254
Assert.AreEqual(2, catcher.EventsCompleted);
252255

253256
// No touch when moving at behind the plane
254-
yield return PlayModeTestUtilities.MoveHandFromTo(backPosition, rightPosition, numSteps, ArticulatedHandPose.GestureId.Pinch, Handedness.Right, inputSim);
257+
yield return testHand.MoveTo(rightPosition);
255258
Assert.AreEqual(2, catcher.EventsStarted);
256259
Assert.AreEqual(2, catcher.EventsCompleted);
257260

258261
// No touch when moving outside the bounds
259-
yield return PlayModeTestUtilities.MoveHandFromTo(initialHandPosition + outOfBoundsOffset, objectPosition + outOfBoundsOffset, numSteps, ArticulatedHandPose.GestureId.Open, Handedness.Right, inputSim);
260-
yield return PlayModeTestUtilities.MoveHandFromTo(objectPosition + outOfBoundsOffset, rightPosition, numSteps, ArticulatedHandPose.GestureId.Open, Handedness.Right, inputSim);
262+
yield return testHand.MoveTo(initialHandPosition + outOfBoundsOffset);
263+
yield return testHand.MoveTo(objectPosition + outOfBoundsOffset);
264+
yield return testHand.MoveTo(rightPosition);
261265
Assert.AreEqual(2, catcher.EventsStarted);
262266
Assert.AreEqual(2, catcher.EventsCompleted);
263267
}
264268

265-
yield return PlayModeTestUtilities.HideHand(Handedness.Right, inputSim);
269+
yield return testHand.Hide();
266270

267271
UnityEngine.Object.Destroy(touchable.gameObject);
268272
}
@@ -274,50 +278,51 @@ public IEnumerator NearInteractionTouchableVariant()
274278
public IEnumerator NearInteractionTouchableVolumeVariant()
275279
{
276280
var touchable = CreateTouchable<NearInteractionTouchableVolume>(Vector3.one);
277-
281+
278282
yield return new WaitForFixedUpdate();
279283
yield return null;
280284

281-
yield return PlayModeTestUtilities.ShowHand(Handedness.Right, inputSim);
282-
285+
TestHand testHand = new TestHand(Handedness.Left);
286+
yield return testHand.Show(Vector3.zero);
287+
yield return testHand.MoveTo(initialHandPosition, numSteps);
283288
using (var catcher = CreateTouchEventCatcher(touchable))
284289
{
285290
// Touch started when entering collider
286-
yield return PlayModeTestUtilities.MoveHandFromTo(initialHandPosition, objectPosition, numSteps, ArticulatedHandPose.GestureId.Open, Handedness.Right, inputSim);
291+
yield return testHand.MoveTo(objectPosition, numSteps);
287292
Assert.AreEqual(1, catcher.EventsStarted);
288293
Assert.AreEqual(0, catcher.EventsCompleted);
289294

290295
// Ensure no touch up event fires while moving hand/pokepointer through collider to each corner of volume
291296
Vector3[] cornerPositions = new Vector3[8];
292297
touchable.GetComponent<BoxCollider>().bounds.GetCornerPositions(ref cornerPositions);
293-
var currentPos = objectPosition;
294298
for (int i = 0; i < cornerPositions.Length; i++)
295299
{
296-
yield return PlayModeTestUtilities.MoveHandFromTo(currentPos, cornerPositions[i], numSteps, ArticulatedHandPose.GestureId.Open, Handedness.Right, inputSim);
297-
currentPos = cornerPositions[i];
298-
Assert.AreEqual(1, catcher.EventsStarted, "Received extra touch down when moving through volume to position " + currentPos);
299-
Assert.AreEqual(0, catcher.EventsCompleted, "Received extra touch up when moving through volume to position " + currentPos);
300+
yield return testHand.MoveTo(cornerPositions[i]);
301+
Assert.AreEqual(1, catcher.EventsStarted, "Received extra touch down when moving through volume to position " + cornerPositions[i]);
302+
Assert.AreEqual(0, catcher.EventsCompleted, "Received extra touch up when moving through volume to position " + cornerPositions[i]);
300303
}
301304

302305
// Touch up when exit collider
303-
yield return PlayModeTestUtilities.MoveHandFromTo(currentPos, rightPosition, numSteps, ArticulatedHandPose.GestureId.Pinch, Handedness.Right, inputSim);
306+
yield return testHand.MoveTo(rightPosition);
304307
Assert.AreEqual(1, catcher.EventsStarted);
305308
Assert.AreEqual(1, catcher.EventsCompleted);
306309

307310
// No touch when moving outside the collider
308-
yield return PlayModeTestUtilities.MoveHandFromTo(backPosition, rightPosition, numSteps, ArticulatedHandPose.GestureId.Pinch, Handedness.Right, inputSim);
311+
yield return testHand.Hide();
312+
yield return testHand.Show(backPosition);
313+
yield return testHand.MoveTo(backPosition + new Vector3(2f, 0f, 0f));
309314
Assert.AreEqual(1, catcher.EventsStarted);
310315
Assert.AreEqual(1, catcher.EventsCompleted);
311316

312317
// Touch when moving off-center
313-
yield return PlayModeTestUtilities.MoveHandFromTo(initialHandPosition + outOfBoundsOffset, objectPosition + outOfBoundsOffset, numSteps, ArticulatedHandPose.GestureId.Open, Handedness.Right, inputSim);
314-
yield return PlayModeTestUtilities.MoveHandFromTo(objectPosition + outOfBoundsOffset, rightPosition, numSteps, ArticulatedHandPose.GestureId.Open, Handedness.Right, inputSim);
318+
yield return testHand.Hide();
319+
yield return testHand.Show(initialHandPosition + outOfBoundsOffset);
320+
yield return testHand.MoveTo(objectPosition + outOfBoundsOffset);
321+
yield return testHand.MoveTo(rightPosition);
315322
Assert.AreEqual(2, catcher.EventsStarted);
316323
Assert.AreEqual(2, catcher.EventsCompleted);
317324
}
318325

319-
yield return PlayModeTestUtilities.HideHand(Handedness.Right, inputSim);
320-
321326
UnityEngine.Object.Destroy(touchable.gameObject);
322327
}
323328

0 commit comments

Comments
 (0)