Beispiel #1
0
        public void Serialize_Deserialize_CalledByEntry()
        {
            var attr = new Cosigner()
            {
                Scopes  = WitnessScope.CalledByEntry,
                Account = UInt160.Zero
            };

            var hex = "01000000000000000000000000000000000000000001";

            attr.ToArray().ToHexString().Should().Be(hex);

            var copy = hex.HexToBytes().AsSerializable <Cosigner>();

            Assert.AreEqual(attr.Scopes, copy.Scopes);
            Assert.AreEqual(attr.Account, copy.Account);
        }
Beispiel #2
0
        public void Serialize_Deserialize_CustomGroups()
        {
            var attr = new Cosigner()
            {
                Scopes        = WitnessScope.CustomGroups,
                AllowedGroups = new[] { ECPoint.Parse("03b209fd4f53a7170ea4444e0cb0a6bb6a53c2bd016926989cf85f9b0fba17a70c", ECCurve.Secp256r1) },
                Account       = UInt160.Zero
            };

            var hex = "010000000000000000000000000000000000000000200103b209fd4f53a7170ea4444e0cb0a6bb6a53c2bd016926989cf85f9b0fba17a70c";

            attr.ToArray().ToHexString().Should().Be(hex);

            var copy = hex.HexToBytes().AsSerializable <Cosigner>();

            Assert.AreEqual(attr.Scopes, copy.Scopes);
            CollectionAssert.AreEqual(attr.AllowedGroups, copy.AllowedGroups);
            Assert.AreEqual(attr.Account, copy.Account);
        }
Beispiel #3
0
        public void Serialize_Deserialize_CustomContracts()
        {
            var attr = new Cosigner()
            {
                Scopes           = WitnessScope.CustomContracts,
                AllowedContracts = new[] { UInt160.Zero },
                Account          = UInt160.Zero
            };

            var hex = "01000000000000000000000000000000000000000010010000000000000000000000000000000000000000";

            attr.ToArray().ToHexString().Should().Be(hex);

            var copy = hex.HexToBytes().AsSerializable <Cosigner>();

            Assert.AreEqual(attr.Scopes, copy.Scopes);
            CollectionAssert.AreEqual(attr.AllowedContracts, copy.AllowedContracts);
            Assert.AreEqual(attr.Account, copy.Account);
        }