Example #1
0
        public Task <StdTx> PostUnbondingDelegationAsync(UndelegateRequest request, CancellationToken cancellationToken = default)
        {
            var baseReq = new BaseReqWithSimulate(request.BaseReq, false);

            request = new UndelegateRequest(baseReq, request.DelegatorAddress, request.ValidatorAddress, request.Amount);
            return(_clientGetter()
                   .Request("staking", "delegators", request.DelegatorAddress, "unbonding_delegations")
                   .PostJsonAsync(request, cancellationToken)
                   .ReceiveJson <StdTx>()
                   .WrapExceptions());
        }
Example #2
0
        public async Task AsyncPostUnbondingCompletes()
        {
            using var client = CreateClient(Configuration.LocalBaseUrl);

            var baseRequest = await client.CreateBaseReq(Configuration.LocalDelegator1Address, null, null, null, null, null);

            var undelegateRequest = new UndelegateRequest(baseRequest, Configuration.LocalDelegator1Address, Configuration.LocalValidator1Address, new Coin("stake", 10));
            var tx = (await client
                      .Staking
                      .PostUnbondingDelegationAsync(undelegateRequest));

            OutputHelper.WriteLine("Deserialized tx:");
            Dump(undelegateRequest);
            OutputHelper.WriteLine("");

            var undelegateMessage = tx.Msg
                                    .OfType <MsgUndelegate>()
                                    .First();

            Assert.Equal("stake", undelegateMessage.Amount.Denom);
            Assert.Equal(10, undelegateMessage.Amount.Amount);
            Assert.Equal(Configuration.LocalDelegator1Address, undelegateMessage.DelegatorAddress);
            Assert.Equal(Configuration.LocalValidator1Address, undelegateMessage.ValidatorAddress);
        }
Example #3
0
 public StdTx PostUnbondingDelegation(UndelegateRequest request)
 {
     return(PostUnbondingDelegationAsync(request)
            .Sync());
 }
Example #4
0
 public GasEstimateResponse PostUnbondingDelegationSimulation(UndelegateRequest request)
 {
     return(PostUnbondingDelegationSimulationAsync(request)
            .Sync());
 }