Exemple #1
0
        public void TestFromJson1()
        {
            var point     = ECPoint.Parse("03b209fd4f53a7170ea4444e0cb0a6bb6a53c2bd016926989cf85f9b0fba17a70c", ECCurve.Secp256r1);
            var hash      = UInt160.Zero;
            var condition = new OrCondition
            {
                Expressions = new WitnessCondition[]
                {
                    new CalledByContractCondition {
                        Hash = hash
                    },
                    new CalledByGroupCondition {
                        Group = point
                    }
                }
            };
            var json      = condition.ToJson();
            var new_condi = WitnessCondition.FromJson(json);

            Assert.IsTrue(new_condi is OrCondition);
            var or_condi = (OrCondition)new_condi;

            Assert.AreEqual(2, or_condi.Expressions.Length);
            Assert.IsTrue(or_condi.Expressions[0] is CalledByContractCondition);
            var cbcc = (CalledByContractCondition)(or_condi.Expressions[0]);

            Assert.IsTrue(or_condi.Expressions[1] is CalledByGroupCondition);
            var cbgc = (CalledByGroupCondition)(or_condi.Expressions[1]);

            Assert.IsTrue(cbcc.Hash.Equals(hash));
            Assert.IsTrue(cbgc.Group.Equals(point));
        }