public async Task RunAccountUninit() { KeyPair keys = await _tonClient.Crypto.GenerateRandomSignKeys(); ResultOfEncodeMessage message = await _tonClient.Abi.EncodeMessage(new ParamsOfEncodeMessage { Abi = TestsEnv.Packages.Hello.Abi, CallSet = new CallSet { FunctionName = "constructor" }, DeploySet = new DeploySet { Tvc = TestsEnv.Packages.Hello.Tvc }, Signer = new Signer.Keys { KeysAccessor = keys } }); ResultOfRunExecutor result = await _tonClient.Tvm.RunExecutor(new ParamsOfRunExecutor { Message = message.Message, Account = new AccountForExecutor.Uninit(), ReturnUpdatedAccount = true }); ResultOfParse parsed = await _tonClient.Boc.ParseAccount(new ParamsOfParse { Boc = result.Account }); parsed.Parsed.Get <string>("id").Should().Be(message.Address); parsed.Parsed.Get <string>("acc_type_name").Should().Be("Active"); }
public async Task RunExecutor() { async Task <string> Run(ResultOfEncodeMessage message, Abi abi, string account) { //act ResultOfRunExecutor resultOfRun = await _tonClient.Tvm.RunExecutor(new ParamsOfRunExecutor { Message = message.Message, Abi = abi, Account = new AccountForExecutor.Account { Boc = account }, ReturnUpdatedAccount = true }); resultOfRun.Transaction.Get <string>("in_msg").Should().Be(message.MessageId); resultOfRun.Fees.TotalAccountFees.Should().BePositive(); return(resultOfRun.Account); } var result = await TestRunMessage(Run); result.Should().Be(SubscribeParamsPubkey); }
public async Task RunAccountNone() { const string message = "te6ccgEBAQEAXAAAs0gAV2lB0HI8/VEO/pBKDJJJeoOcIh+dL9JzpmRzM8PfdicAPGNEGwRWGaJsR6UYmnsFVC2llSo1ZZN5mgUnCiHf7ZaUBKgXyAAGFFhgAAAB69+UmQS/LjmiQA=="; ResultOfRunExecutor result = await _tonClient.Tvm.RunExecutor(new ParamsOfRunExecutor { Message = message, Account = new AccountForExecutor.None(), SkipTransactionCheck = true, ReturnUpdatedAccount = true }); ResultOfParse parsed = await _tonClient.Boc.ParseAccount(new ParamsOfParse { Boc = result.Account }); parsed.Parsed.Get <string>("id").Should().Be("0:f18d106c11586689b11e946269ec1550b69654a8d5964de668149c28877fb65a"); parsed.Parsed.Get <string>("acc_type_name").Should().Be("Uninit"); }