public void Factorial_WhenPassedZero_Returns1()
        {
            var result = RecursiveFunctionFunctions.Factorial(0);

            Assert.AreEqual(1, result);
        }
 public void Factorial_WhenPassedNegativeValue_RaisesArgumentException(long inputValue)
 {
     Assert.That(() => RecursiveFunctionFunctions.Factorial(inputValue), Throws.ArgumentException);
 }
        public void Factorial_WhenPassedPositiveValue_ReturnsFactorialValue(long inputValue, long expectedValue)
        {
            var result = RecursiveFunctionFunctions.Factorial(inputValue);

            Assert.AreEqual(expectedValue, result);
        }