public void FindNextSmallerNumberTest(uint testNumber, uint expectedNumber)
        {
            // Act
            uint resultNumber = Question_5_4.FindNextSmallerNumber(testNumber);

            // Assert
            Assert.AreEqual(expectedNumber, resultNumber, $"Failed to find the next smaller number of {testNumber}.");
        }
示例#2
0
        private static void Validate(int expectedNext, int expectedPrev, int n)
        {
            var result = Question_5_4.GetNext(n);

            Assert.AreEqual(expectedNext, result);
            result = Question_5_4.GetPrevious(n);
            Assert.AreEqual(expectedPrev, result);
        }
        public void FindNextSmallerNumberTest_EdgeCases(uint testNumber)
        {
            try
            {
                // Act
                Question_5_4.FindNextSmallerNumber(testNumber);

                // Assert
                Assert.Fail("Edge case check failed.");
            }
            catch (ArgumentException e)
            {
                Assert.AreEqual($"There is no smaller number with same number of 1s as {testNumber}.", e.Message, "Incorrect exception caught.");
            }
        }