コード例 #1
0
    public void Construction_CreateAndSetEmptyVelocityStack()
    {
        IPointerDownInputProcessStateConstArg arg   = CreateMockArg();
        TestAbsPointerDownInputProcessState   state = new TestAbsPointerDownInputProcessState(arg);

        Assert.That(state.GetVelocityStack_Test(), Is.EqualTo(new Vector2[arg.velocityStackSize]));
    }
コード例 #2
0
 /*  Down state
  *      enter =>
  *              Runs WFTapProcess
  *      exit =>
  *              stop the process if its running
  *      pointer up =>
  *              WFNextTouchState
  *              ReleaseUIE
  *              if deltaP is over thresh
  *                      SwipeUIE
  *              else
  *                      TapUIE(touchCounter)
  *      process expire =>
  *              WFReleaseState
  *              DelayTouchUIE
  *      process update =>
  *              HoldUIE
  *      drag =>
  *              DragUIE
  *      pointer enter =>
  *              do nothing
  *      pointer exit =>
  *              WFRelease
  */
 /*  In the event of cancel (pointer leaves in bound)
  *      OnPointerUp is called first, and then OnPointerExit
  */
 public WaitingForTapState(
     IPointerDownInputProcessStateConstArg arg
     ) : base(
         arg
         )
 {
 }
コード例 #3
0
        public AbsPointerDownInputProcessState(
            IPointerDownInputProcessStateConstArg arg
            ) : base(
                arg

                )
        {
            thisProcessFactory = arg.processFactory;
        }
コード例 #4
0
    IPointerDownInputProcessStateConstArg CreateMockArg()
    {
        IPointerDownInputProcessStateConstArg arg = Substitute.For <IPointerDownInputProcessStateConstArg>();

        arg.engine.Returns(Substitute.For <IUIAdaptorInputStateEngine>());
        arg.uiManager.Returns(Substitute.For <IUIManager>());
        arg.velocityStackSize.Returns(3);
        arg.processFactory.Returns(Substitute.For <IUISystemProcessFactory>());

        return(arg);
    }
コード例 #5
0
    public void OnExit_SetsProcessNull()
    {
        IPointerDownInputProcessStateConstArg arg   = CreateMockArg();
        TestAbsPointerDownInputProcessState   state = new TestAbsPointerDownInputProcessState(arg);

        state.SetProcess(Substitute.For <IUIAdaptorInputProcess>());
        Assert.That(state.GetProcess_Test(), Is.Not.Null);

        state.OnExit();

        Assert.That(state.GetProcess_Test(), Is.Null);
    }
コード例 #6
0
    public void ExpireProcess_ProcessIsNotRunning_DoesNotExpireIt()
    {
        IPointerDownInputProcessStateConstArg arg   = CreateMockArg();
        TestAbsPointerDownInputProcessState   state = new TestAbsPointerDownInputProcessState(arg);
        IUIAdaptorInputProcess process = Substitute.For <IUIAdaptorInputProcess>();

        process.IsRunning().Returns(false);
        state.SetProcess(process);

        state.ExpireProcess();

        process.DidNotReceive().Expire();
    }
コード例 #7
0
    public void OnExit_ProcessIsRunning_StopsIt()
    {
        IPointerDownInputProcessStateConstArg arg   = CreateMockArg();
        TestAbsPointerDownInputProcessState   state = new TestAbsPointerDownInputProcessState(arg);
        IUIAdaptorInputProcess process = Substitute.For <IUIAdaptorInputProcess>();

        process.IsRunning().Returns(true);
        state.SetProcess(process);

        state.OnExit();

        process.Received(1).Stop();
    }
コード例 #8
0
    public void OnEnter_CreateAndSetNewVelocityStack()
    {
        IPointerDownInputProcessStateConstArg arg   = CreateMockArg();
        TestAbsPointerDownInputProcessState   state = new TestAbsPointerDownInputProcessState(arg);

        state.SetVelocityStack_Test(
            new Vector2[] {
            new Vector2(1f, 1f),
            new Vector2(2f, 2f),
            new Vector2(3f, 3f)
        }
            );
        state.OnEnter();

        Assert.That(state.GetVelocityStack_Test(), Is.EqualTo(new Vector2[arg.velocityStackSize]));
    }
コード例 #9
0
 public TestAbsPointerDownInputProcessState(IPointerDownInputProcessStateConstArg arg) : base(arg)
 {
 }