public void TestMemoNoneEquality() { var memo = Memo.None(); var memo2 = Memo.None(); Assert.AreEqual(memo.GetHashCode(), memo2.GetHashCode()); Assert.AreEqual(memo, memo2); }
public async Task TestSkipCheckIfDestinationIsMuxedAccount() { var accountId = "GAYHAAKPAQLMGIJYMIWPDWCGUCQ5LAWY4Q7Q3IKSP57O7GUPD3NEOSEA"; var muxed = MuxedAccountMed25519.FromMuxedAccountId( "MAAAAAAAAAAAJURAAB2X52XFQP6FBXLGT6LWOOWMEXWHEWBDVRZ7V5WH34Y22MPFBHUHY"); var payment = new PaymentOperation .Builder(muxed, new AssetTypeNative(), "100.500") .Build(); var tx = BuildTransaction(accountId, new Operation[] { payment }, Memo.None(), skipDefaultOp: true); await _server.CheckMemoRequired(tx); }
public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) { reader.DateParseHandling = DateParseHandling.None; var jsonObject = JObject.Load(reader); TransactionResponse transaction = jsonObject.ToObject <TransactionResponse>(); var memoType = jsonObject.GetValue("memo_type").ToObject <string>(); Memo memo; if (memoType.Equals("none")) { memo = Memo.None(); } else { String memoValue = transaction.MemoStr; if (memoType.Equals("text")) { memo = Memo.Text(memoValue); } else if (memoType.Equals("id")) { memo = Memo.Id(long.Parse(memoValue)); } else if (memoType.Equals("hash")) { memo = Memo.Hash(Convert.FromBase64String(memoValue)); } else if (memoType.Equals("return")) { memo = Memo.ReturnHash(Convert.FromBase64String(memoValue)); } else { throw new JsonException("Unknown memo type."); } } transaction.Memo = memo; return(transaction); }
public async Task TestCheckOtherOperationTypes() { var accountId = "GAYHAAKPAQLMGIJYMIWPDWCGUCQ5LAWY4Q7Q3IKSP57O7GUPD3NEOSEA"; var destinations = new string[] { "GASGNGGXDNJE5C2O7LDCATIVYSSTZKB24SHYS6F4RQT4M4IGNYXB4TIV", "GBBM6BKZPEHWYO3E3YKREDPQXMS4VK35YLNU7NFBRI26RAN7GI5POFBB", "GCEZWKCA5VLDNRLN3RPRJMRZOX3Z6G5CHCGSNFHEYVXM3XOJMDS674JZ", }; var native = new AssetTypeNative(); var gbp = Asset.CreateNonNativeAsset("GBP", "GBBM6BKZPEHWYO3E3YKREDPQXMS4VK35YLNU7NFBRI26RAN7GI5POFBB"); var eur = Asset.CreateNonNativeAsset("EUR", "GDTNXRLOJD2YEBPKK7KCMR7J33AAG5VZXHAJTHIG736D6LVEFLLLKPDL"); var operations = new Operation[] { new AccountMergeOperation.Builder(KeyPair.FromAccountId(destinations[0])).Build(), new PathPaymentStrictSendOperation.Builder(native, "5.00", KeyPair.FromAccountId(destinations[1]), native, "5.00") .SetPath(new[] { gbp, eur }) .Build(), new PathPaymentStrictReceiveOperation.Builder(native, "5.00", KeyPair.FromAccountId(destinations[2]), native, "5.00") .SetPath(new[] { gbp, eur }) .Build(), new ChangeTrustOperation.Builder(gbp, "10000").Build(), }; When() .Returns(ServerTest.ResponseMessage(HttpStatusCode.OK, BuildAccountResponse(accountId))) .Returns(ServerTest.ResponseMessage(HttpStatusCode.OK, BuildAccountResponse(destinations[0]))) .Returns(ServerTest.ResponseMessage(HttpStatusCode.OK, BuildAccountResponse(destinations[1]))) .Returns(ServerTest.ResponseMessage(HttpStatusCode.OK, BuildAccountResponse(destinations[2]))); var tx = BuildTransaction(accountId, operations, Memo.None()); await _server.CheckMemoRequired(tx); }
public void TestMemoNone() { var memo = Memo.None(); Assert.AreEqual(sdkxdr.MemoType.MemoTypeEnum.MEMO_NONE, memo.ToXdr().Discriminant.InnerValue); }