public void Permutation_Of_Bits_SameNumbers_SamePosition_ValidResult()
        {
            int expected = 15;

            int result = Permutation_Of_Bits.InputNumber(15, 15, 0, 0);

            Assert.AreEqual(result, expected);
        }
        public void Permutation_Of_Bits_SameNumbers_DifferentPosition_ValidResult()
        {
            int expected = 164;

            int result = Permutation_Of_Bits.InputNumber(20, 20, 3, 8);

            Assert.AreEqual(result, expected);
        }
 public void Permutation_Of_Bits_FirstIndexOutOfRange_ArgumentOutOfRangeException()
 => Permutation_Of_Bits.InputNumber(15, 15, 50, 10);
 public void Permutation_Of_Bits_Negative_SecondIndex_ArgumentOutOfRangeException()
 => Permutation_Of_Bits.InputNumber(15, 15, 1, -8);
 public void Permutation_Of_Bits_Negative_FirstIndex_ArgumentOutOfRangeException()
 => Permutation_Of_Bits.InputNumber(15, 15, -1, 8);
 public void Permutation_Of_Bits_First_Position_Bigger_Then_Last_ArgumentOutOfRangeException()
 => Permutation_Of_Bits.InputNumber(15, 15, 25, 2);
 public void Permutation_Of_Bits_FirstIndexOutOfRange_ArgumentOutOfRangeException() =>
 Assert.Throws(typeof(ArgumentOutOfRangeException), () => Permutation_Of_Bits.InputNumber(15, 15, 50, 10));
 public void Permutation_Of_Bits_Negative_SecondIndex_ArgumentOutOfRangeException() =>
 Assert.Throws(typeof(ArgumentOutOfRangeException), () => Permutation_Of_Bits.InputNumber(15, 15, 1, -8));
 public void Permutation_Of_Bits_First_Position_Bigger_Then_Last_ArgumentOutOfRangeException() =>
 Assert.Throws(typeof(ArgumentOutOfRangeException), () => Permutation_Of_Bits.InputNumber(15, 15, 25, 2));
        public void Permutation_Of_Bits_ValidData_ValidResult(int firstNumber, int secondNumber, int i, int j, int expected)
        {
            int result = Permutation_Of_Bits.InputNumber(firstNumber, secondNumber, i, j);

            Assert.AreEqual(expected, result);
        }