public IEnumerator DoNotMoveWithVectorZero()
        {
            Vector2 direction = Vector2.zero;

            _facadeToMove.SetDirectionToMove(direction);
            yield return(new WaitForSeconds(_frameDelay));

            Assert.IsTrue(Mathf.Approximately(_rigidbody.velocity.magnitude, 0));
        }
Example #2
0
        public IEnumerator RotationToLeftAndMoveForward([ValueSource(nameof(_inputOutputsTestCase))]
                                                        InputOutput testData)
        {
            Vector2 forwardDirection  = testData.Direction;
            float   directionToRotate = testData.Rotation;

            var player          = _gameObject;
            var defaultPosition = player.transform.position;

            _facadeToMove.SetAngleToRotate(directionToRotate);
            yield return(new WaitForSeconds(_microDelay));

            _facadeToMove.SetDirectionToMove(forwardDirection);
            yield return(new WaitForSeconds(_microDelay));

            var actualPosition = player.transform.position;

            Assert.AreEqual((defaultPosition.y < actualPosition.y), testData.PositiveYAxis);
            Assert.AreEqual((defaultPosition.x < actualPosition.x), testData.PositiveXAxis);
        }