Example #1
0
        public void ReciprocalZero()
        {
            var rational = new BigRational(0, 1);

            Assert.Throws <DivideByZeroException>(
                () => rational.Reciprocal());
        }
Example #2
0
        public void Reciprocal(int n1, int n2)
        {
            var rational = new BigRational(n1, n2);
            var expected = new BigRational(n2, n1);

            AssertEqual(expected, rational.Reciprocal());
        }
Example #3
0
        public override (object, int) Decode(byte[] data, int position, bool packed)
        {
            (BigInteger nominator, int newPosition) = Int256.DecodeInt(data, position, packed);
            BigRational rational = BigRational.FromBigInt(nominator) * BigRational.Reciprocal(BigRational.Pow(BigRational.FromInt(10), Precision));

            return(rational, newPosition);
        }
Example #4
0
        public void ReciprocalZero(int n1, int n2)
        {
            var rational = new BigRational(n1, n2);

            Assert.Throws <DivideByZeroException>(
                () => rational.Reciprocal());
        }
Example #5
0
        public void Reciprocal(int n1, int n2)
        {
            var rational = new BigRational(n1, n2);
            var expected = new BigRational(n2, n1);
            var actual   = rational.Reciprocal();

            Assert.AreEqual(expected, actual);
        }
Example #6
0
        public void Test_fixed(AbiEncodingStyle encodingStyle)
        {
            AbiFixed     type      = AbiType.Fixed;
            BigRational  data      = BigRational.FromBigInt(123456789) * BigRational.Reciprocal(BigRational.Pow(BigRational.FromInt(10), type.Precision));
            AbiSignature signature = new AbiSignature("abc", type);

            byte[]   encoded   = _abiEncoder.Encode(encodingStyle, signature, data);
            object[] arguments = _abiEncoder.Decode(encodingStyle, signature, encoded);
            Assert.AreEqual(arguments[0], data);
        }