public void ChangeTrustOperation() { // GC5SIC4E3V56VOHJ3OZAX5SJDTWY52JYI2AFK6PUGSXFVRJQYQXXZBZF var source = KeyPair.FromSeed("SC4CGETADVYTCR5HEAVZRB3DZQY5Y4J7RFNJTRA6ESMHIPEZUSTE2QDK"); var assetCode = "EUR"; var asset = new Stellar.Generated.Asset { Discriminant = Stellar.Generated.AssetType.Create( Stellar.Generated.AssetType.AssetTypeEnum.ASSET_TYPE_CREDIT_ALPHANUM4), AlphaNum4 = new Stellar.Generated.Asset.AssetAlphaNum4 { AssetCode = Encoding.ASCII.GetBytes(assetCode), Issuer = source.AccountId } }; long limit = 100; ChangeTrustOperation operation = new ChangeTrustOperation.Builder(asset, limit) .SetSourceAccount(source) .Build(); Stellar.Generated.Operation xdr = operation.ToXdr(); ChangeTrustOperation parsedOperation = Stellar.ChangeTrustOperation.FromXdr(xdr); Assert.AreEqual(source.Address, parsedOperation.SourceAccount.Address); Assert.AreEqual("EUR", Encoding.ASCII.GetString(parsedOperation.Asset.AlphaNum4.AssetCode)); Assert.AreEqual(Stellar.Generated.AssetType.AssetTypeEnum.ASSET_TYPE_CREDIT_ALPHANUM4, parsedOperation.Asset.Discriminant.InnerValue); Assert.AreEqual(limit, parsedOperation.Limit); Assert.AreEqual("AAAAAQAAAAC7JAuE3XvquOnbsgv2SRztjuk4RoBVefQ0rlrFMMQvfAAAAAYAAAABRVVSAAAAAAC7JAuE3XvquOnbsgv2SRztjuk4RoBVefQ0rlrFMMQvfAAAAAAAAABk", operation.ToXdrBase64()); }
public void ChangeTrustOperation() { // GC5SIC4E3V56VOHJ3OZAX5SJDTWY52JYI2AFK6PUGSXFVRJQYQXXZBZF KeyPair source = KeyPair.FromSeed("SC4CGETADVYTCR5HEAVZRB3DZQY5Y4J7RFNJTRA6ESMHIPEZUSTE2QDK"); var assetCode = "EUR"; var asset = new Asset(assetCode, source); long limit = 100; ChangeTrustOperation operation = new ChangeTrustOperation.Builder(asset, limit) .SetSourceAccount(source) .Build(); Assert.AreEqual(source.Address, operation.SourceAccount.Address); Assert.AreEqual(assetCode, operation.Asset.Code); Assert.AreEqual(asset.Issuer.Address, operation.Asset.Issuer.Address); Assert.AreEqual(asset.Type, operation.Asset.Type); Assert.AreEqual(limit, operation.Limit); Assert.AreEqual("AAAAAQAAAAC7JAuE3XvquOnbsgv2SRztjuk4RoBVefQ0rlrFMMQvfAAAAAYAAAABRVVSAAAAAAC7JAuE3XvquOnbsgv2SRztjuk4RoBVefQ0rlrFMMQvfAAAAAAAAABk", operation.ToXdrBase64()); Stellar.Generated.Operation xdr = operation.ToXDR(); ChangeTrustOperation parsedOperation = Stellar.ChangeTrustOperation.FromXDR(xdr); Assert.AreEqual(source.Address, parsedOperation.SourceAccount.Address); Assert.AreEqual("EUR", parsedOperation.Asset.Code); Assert.AreEqual(source.Address, parsedOperation.Asset.Issuer.Address); Assert.AreEqual(limit, parsedOperation.Limit); }
private static async Task <SubmitTransactionResponse> SendAllowKinTrustOperation(KeyPair account, AccountResponse accountResponse) { ChangeTrustOperation.Builder changeTrustOperationBuilder = new ChangeTrustOperation.Builder((AssetTypeCreditAlphaNum)KinAsset, TRUST_NO_LIMIT_VALUE).SetSourceAccount(account); ChangeTrustOperation changeTrustOperation = changeTrustOperationBuilder.Build(); Transaction.Builder allowKinTrustTransaction = new Transaction.Builder(new Account(account, accountResponse.SequenceNumber)).AddOperation(changeTrustOperation); Transaction transaction = allowKinTrustTransaction.Build(); transaction.Sign(account); return(await Server.SubmitTransaction(transaction).ConfigureAwait(false)); }