Exemplo n.º 1
0
        public void CorrectlyDivides(short divisor, short testDividend)
        {
            var int16Divisor = new Int16Divisor(divisor);
            var quotient     = testDividend / int16Divisor;

            Console.WriteLine($"quotient:{quotient}");
            Assert.AreEqual(unchecked ((short)(testDividend / divisor)), quotient, SerializeDivisor(int16Divisor));
        }
Exemplo n.º 2
0
        public void CalculatesAbsFloorCorrectly(short divisor, short testDividend)
        {
            var int16Divisor = new Int16Divisor(divisor);
            var rounded      = int16Divisor.AbsFloor(testDividend);

            Console.WriteLine($"rounded:{rounded}");
            Assert.AreEqual((short)(unchecked ((short)(testDividend / divisor)) * divisor), rounded, SerializeDivisor(int16Divisor));
        }
Exemplo n.º 3
0
        public void CalculatesModulusCorrectly(short divisor, short testDividend)
        {
            var int16Divisor = new Int16Divisor(divisor);
            var remainder    = testDividend % int16Divisor;

            Console.WriteLine($"remainder:{remainder}");
            Assert.AreEqual(unchecked ((short)(testDividend % divisor)), remainder, SerializeDivisor(int16Divisor));
        }
Exemplo n.º 4
0
        public void CalculatesAbsFloorCorrectlyAllNumerators(short divisor)
        {
            var int16Divisor = new Int16Divisor(divisor);

            for (ulong i = 0; i < RandomTestCount; i++)
            {
                var testDividend = unchecked ((short)i);
                var rounded      = int16Divisor.AbsFloor(testDividend);
                Assert.AreEqual((short)(unchecked ((short)(testDividend / divisor)) * divisor), rounded, $"Trying to test {testDividend} / {divisor} * {divisor}");
            }
        }
Exemplo n.º 5
0
        public void CalculatesModulusCorrectlyAllNumerators(short divisor)
        {
            var int16Divisor = new Int16Divisor(divisor);

            for (ulong i = 0; i < RandomTestCount; i++)
            {
                var testDividend = unchecked ((short)i);
                var remainder    = testDividend % int16Divisor;
                Assert.AreEqual(unchecked ((short)(testDividend % divisor)), remainder, $"Trying to test {testDividend} % {divisor}");
            }
        }
Exemplo n.º 6
0
        public void CorrectlyDividesAllNumerators(short divisor)
        {
            var int16Divisor = new Int16Divisor(divisor);

            for (ulong i = 0; i < RandomTestCount; i++)
            {
                var testDividend = unchecked ((short)i);
                var quotient     = testDividend / int16Divisor;
                Assert.AreEqual(unchecked ((short)(testDividend / divisor)), quotient, $"Trying to test {testDividend} / {divisor}");
            }
        }
Exemplo n.º 7
0
        public void DivRemReturnsCorrectlyAllNumerators(short divisor)
        {
            var int16Divisor = new Int16Divisor(divisor);

            for (ulong i = 0; i < RandomTestCount; i++)
            {
                var testDividend = unchecked ((short)i);
                var remainder    = int16Divisor.DivRem(testDividend, out var quotient);
                Assert.AreEqual(unchecked ((short)(testDividend % divisor)), remainder, $"Trying to test {testDividend} % {divisor}");
                Assert.AreEqual(unchecked ((short)(testDividend / divisor)), quotient, $"Trying to test {testDividend} / {divisor}");
            }
        }
Exemplo n.º 8
0
        public void CalculatesAbsFloorRemCorrectly(short divisor, short testDividend)
        {
            var int16Divisor = new Int16Divisor(divisor);
            var remainder    = int16Divisor.AbsFloorRem(testDividend, out var rounded);

            Console.WriteLine($"rounded:{rounded}, remainder:{remainder}");
            Assert.Multiple(() =>
            {
                Assert.AreEqual(unchecked ((short)(testDividend % divisor)), remainder, SerializeDivisor(int16Divisor));
                Assert.AreEqual((short)(unchecked ((short)(testDividend / divisor)) * divisor), rounded, SerializeDivisor(int16Divisor));
            });
        }
Exemplo n.º 9
0
        public void DivRemReturnsCorrectly(short divisor, short testDividend)
        {
            var int16Divisor = new Int16Divisor(divisor);
            var remainder    = int16Divisor.DivRem(testDividend, out var quotient);

            Console.WriteLine($"quotient:{quotient}, remainder:{remainder}");
            Assert.Multiple(() =>
            {
                Assert.AreEqual(unchecked ((short)(testDividend % divisor)), remainder, SerializeDivisor(int16Divisor));
                Assert.AreEqual(unchecked ((short)(testDividend / divisor)), quotient, SerializeDivisor(int16Divisor));
            });
        }
Exemplo n.º 10
0
 private static string SerializeDivisor(Int16Divisor divisor) => $"{JsonConvert.SerializeObject(divisor)}";