public void Equality_Copies_AreEqual()
        {
            // Arrange
            var rumbleA = new RumbleIntensity();

            rumbleA.ForceFeedback = new ForceFeedbackIntensities(1.0f, 0.25f);
            rumbleA.ScreenShake   = new ScreenShakeIntensities(Vector2.one, 1);

            var rumbleB = new RumbleIntensity();

            rumbleB.ForceFeedback = new ForceFeedbackIntensities(
                rumbleA.ForceFeedback.LeftMotor,
                rumbleA.ForceFeedback.RightMotor);
            rumbleB.ScreenShake = new ScreenShakeIntensities(
                rumbleA.ScreenShake.Strength,
                rumbleA.ScreenShake.Vibrato);

            // Assert
            Assert.True(rumbleA.Equals(rumbleB), "Expected rumbleIntensity copies to be Equal but they are not.");
        }
        public void Equality_UnequalCopies_AreNotEqual()
        {
            // Arrange
            var rumbleA = new RumbleIntensity();

            rumbleA.ForceFeedback = new ForceFeedbackIntensities(1.0f, 0.0f);
            rumbleA.ScreenShake   = new ScreenShakeIntensities(Vector2.one, 1);

            var rumbleB = new RumbleIntensity();

            rumbleB.ForceFeedback = new ForceFeedbackIntensities(
                rumbleA.ForceFeedback.LeftMotor,
                0.1f);
            rumbleB.ScreenShake = new ScreenShakeIntensities(
                rumbleA.ScreenShake.Strength,
                rumbleA.ScreenShake.Vibrato);

            // Assert
            Assert.False(rumbleA.Equals(rumbleB), "Expected unexact rumbleIntensity copies not to be Equal but they are.");
        }