public void ShouldEncodeStructContainingStructArrayWithFixedTuple3()
        {
            var purchaseOrder = new PurchaseOrder();

            purchaseOrder.CustomerId = 1000;
            purchaseOrder.Id         = 1;
            purchaseOrder.LineItem   = new List <LineItem>();
            purchaseOrder.LineItem.Add(new LineItem()
            {
                Id = 1, ProductId = 100, Quantity = 2, Description = "hello1"
            });
            purchaseOrder.LineItem.Add(new LineItem()
            {
                Id = 2, ProductId = 200, Quantity = 3, Description = "hello2"
            });
            purchaseOrder.LineItem.Add(new LineItem()
            {
                Id = 3, ProductId = 300, Quantity = 4, Description = "hello3"
            });


            var func = new SetPurchaseOrderFunction()
            {
                PurchaseOrder = purchaseOrder
            };
            var data     = func.GetCallData();
            var expected = "00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000003e80000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000012000000000000000000000000000000000000000000000000000000000000001e00000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000006400000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000000668656c6c6f310000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000c800000000000000000000000000000000000000000000000000000000000000030000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000000668656c6c6f3200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003000000000000000000000000000000000000000000000000000000000000012c00000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000000668656c6c6f330000000000000000000000000000000000000000000000000000";

            Assert.Equal(expected, data.ToHex().Substring(8));
        }
        public Task <TransactionReceipt> SetPurchaseOrderRequestAndWaitForReceiptAsync(PurchaseOrder purchaseOrder, CancellationTokenSource cancellationToken = null)
        {
            var setPurchaseOrderFunction = new SetPurchaseOrderFunction();

            setPurchaseOrderFunction.PurchaseOrder = purchaseOrder;

            return(ContractHandler.SendRequestAndWaitForReceiptAsync(setPurchaseOrderFunction, cancellationToken));
        }
        public Task <string> SetPurchaseOrderRequestAsync(PurchaseOrder purchaseOrder)
        {
            var setPurchaseOrderFunction = new SetPurchaseOrderFunction();

            setPurchaseOrderFunction.PurchaseOrder = purchaseOrder;

            return(ContractHandler.SendRequestAsync(setPurchaseOrderFunction));
        }
示例#4
0
        public void ShouldEncodeStructContainingStructArrayWithDynamicTuple()
        {
            var purchaseOrder = new PurchaseOrder();

            purchaseOrder.CustomerId = 2;
            purchaseOrder.Id         = 1;
            purchaseOrder.LineItem   = new List <LineItem>();
            purchaseOrder.LineItem.Add(new LineItem()
            {
                Id = 1, ProductId = 2, Quantity = 3, Description = "hello"
            });

            var func = new SetPurchaseOrderFunction()
            {
                PurchaseOrder = purchaseOrder
            };
            var data     = func.GetCallData();
            var expected = "0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000030000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000000568656c6c6f000000000000000000000000000000000000000000000000000000";

            Assert.Equal(expected, data.ToHex().Substring(8));
        }
 public Task <TransactionReceipt> SetPurchaseOrderRequestAndWaitForReceiptAsync(SetPurchaseOrderFunction setPurchaseOrderFunction, CancellationTokenSource cancellationToken = null)
 {
     return(ContractHandler.SendRequestAndWaitForReceiptAsync(setPurchaseOrderFunction, cancellationToken));
 }
 public Task <string> SetPurchaseOrderRequestAsync(SetPurchaseOrderFunction setPurchaseOrderFunction)
 {
     return(ContractHandler.SendRequestAsync(setPurchaseOrderFunction));
 }