public void TestZeroAndNumber() { var algo = new KaratsubaMultiplication(); BigInteger input1 = 0; BigInteger input2 = 2236548992111222222; BigInteger result = algo.Compute(Input.From <BigInteger, BigInteger>(input1, input2)); Assert.AreEqual(result, BigInteger.Zero); }
public void TestSmallAndBigNumbers() { var algo = new KaratsubaMultiplication(); BigInteger input1 = 5678; BigInteger input2 = 2236548992111222222; BigInteger result = algo.Compute(Input.From <BigInteger, BigInteger>(input1, input2)); Assert.AreEqual(result, input1 * input2); }
public void NonNumber_Characters_Throws_Exception() { Action invalidExecution = () => KaratsubaMultiplication.Calculate("1s", "1"); Assert.Throws <ArgumentException>(invalidExecution); }
public void Multiply_Complex_Values(string firstNumber, string secondNumber, int expectedResult) { var result = KaratsubaMultiplication.Calculate(firstNumber, secondNumber); Assert.Equal(expectedResult, result); }