A demonstration of testable input using IInput. The scene contains a sphere on a plane that is controlled using the horizontal and vertical input axes. Inputs are translated to forces applied to the sphere's rigid body.
예제 #1
0
        public void testNoMovement()
        {
            TestableInput     scene    = kernel.Get <TestableInput>();
            Mock <IRigidBody> mockBody = Mock.Get(scene.sphere.body);

            step();
            mockBody.Verify(mock => mock.AddForce(It.IsAny <Vector3>()), Times.Never());
        }
예제 #2
0
        public void testMovementToRight()
        {
            TestableInput scene = kernel.Get <TestableInput>();

            mockInput.Setup(mock => mock.GetAxis("Horizontal")).Returns(1);

            Mock <IRigidBody> mockBody = Mock.Get(scene.sphere.body);

            step();
            mockBody.Verify(mock => mock.AddForce(It.Is <Vector3>(v => v.x > 0)), Times.Exactly(1));
        }