public void AverageEvens(int[] numbers, double expected)
        {
            // Arrange
            ChallengesSet04 challenger = new ChallengesSet04();

            // Act
            double actual = challenger.AverageEvens(numbers);

            // Assert
            Assert.Equal(Math.Round(expected, 5), Math.Round(actual, 5));
        }
        public void MajorityOfElementsInArrayAreNull(object[] objects, bool expected)
        {
            // Arrange
            ChallengesSet04 challenger = new ChallengesSet04();

            // Act
            bool actual = challenger.MajorityOfElementsInArrayAreNull(objects);

            // Assert
            Assert.Equal(expected, actual);
        }
        // [InlineData(null, 0)] // Assumption: array will not be null
        public void AddEvenSubtractOdd(int[] numbers, int expected)
        {
            // Arrange
            ChallengesSet04 challenger = new ChallengesSet04();

            // Act
            int actual = challenger.AddEvenSubtractOdd(numbers);

            // Assert
            Assert.Equal(expected, actual);
        }
        public void IsStringANumber(string word, bool expected)
        {
            // Arrange
            ChallengesSet04 challenger = new ChallengesSet04();

            // Act
            bool actual = challenger.IsStringANumber(word);

            // Assert
            Assert.Equal(expected, actual);
        }
        public void CouldFormTriangle(int sideLength1, int sideLength2, int sideLength3, bool expected)
        {
            // Arrange
            ChallengesSet04 challenger = new ChallengesSet04();

            // Act
            bool actual = challenger.CouldFormTriangle(sideLength1, sideLength2, sideLength3);

            // Assert
            Assert.Equal(expected, actual);
        }
        public void ChangeBusinessNameTo_TrueCoders(string originalBusinessName)
        {
            // Arrange
            ChallengesSet04 challenger = new ChallengesSet04();
            Business        business   = new Business()
            {
                Name = originalBusinessName
            };

            // Act
            challenger.ChangeBusinessNameTo_TrueCoders(business);

            // Assert
            Assert.Equal("TrueCoders", business.Name);
        }
        public void NegativeFactorialShouldThrowArgumentOutOfRangeException()
        {
            // Arrange
            ChallengesSet04 challenger = new ChallengesSet04();
            int             negative1  = -1;
            int             negative2  = -2;
            int             negative3  = -3;

            // Act
            Action actual1 = () => challenger.Factorial(negative1);
            Action actual2 = () => challenger.Factorial(negative2);
            Action actual3 = () => challenger.Factorial(negative3);

            // Assert
            Assert.Throws <ArgumentOutOfRangeException>(actual1);
            Assert.Throws <ArgumentOutOfRangeException>(actual2);
            Assert.Throws <ArgumentOutOfRangeException>(actual3);
        }