public void DivRemReturnsCorrectly(int divisor, int testDividend) { var int32Divisor = new Int32Divisor(divisor); var remainder = int32Divisor.DivRem(testDividend, out var quotient); Console.WriteLine($"quotient:{quotient}, remainder:{remainder}"); Assert.Multiple(() => { Assert.AreEqual(testDividend % divisor, remainder, SerializeDivisor(int32Divisor)); Assert.AreEqual(testDividend / divisor, quotient, SerializeDivisor(int32Divisor)); }); }
public void DivRemReturnsCorrectlyRandomNumerators(int divisor) { var int32Divisor = new Int32Divisor(divisor); var rng = new PcgRandom(); for (ulong i = 0; i < RandomTestCount; i++) { var testDividend = unchecked ((int)rng.Next()); var remainder = int32Divisor.DivRem(testDividend, out var quotient); Assert.AreEqual(testDividend % divisor, remainder, $"Trying to test {testDividend} % {divisor}"); Assert.AreEqual(testDividend / divisor, quotient, $"Trying to test {testDividend} / {divisor}"); } }