PostPurchaseResponse(MerchantModel merchantModel, PostConvertTransferModel purchaseModel) { var request = new RestRequest(resource, Method.POST); JsonSerializerSettings settings = new JsonSerializerSettings(); settings.NullValueHandling = NullValueHandling.Ignore; string jsonBody = JsonConvert.SerializeObject(purchaseModel, Formatting.Indented, settings); merchantModel.Sign(jsonBody); request.AddParameter("application/json", jsonBody, "application/json", ParameterType.RequestBody); request.AddHeader("Lykke-Merchant-Id", merchantModel.LykkeMerchantId); request.AddHeader("Lykke-Merchant-Sign", merchantModel.LykkeMerchantSign); if (merchantModel.LykkeMerchantSessionId != null) { request.AddHeader("Lykke-Merchant-Session-Id", merchantModel.LykkeMerchantSessionId); } var response = client.Execute(request); try { var data = JsonConvert.DeserializeObject <PostConvertTransferResponseModel>(response.Content); return(response, data); } catch (JsonReaderException) { return(response, null); } }
public void PostConvertTransferNegativeAssetPairTest(string assetPair) { var address = "n1gDxgVtJmTxaXupcFNd8AeKmdJaihTacx"; var testAssetPair = assetPair; var baseAsset = "USD"; decimal amount = 10M; var convertTransfer = new PostConvertTransferModel(address, testAssetPair, baseAsset, amount) { successUrl = "http://tut.by", errorUrl = "http://yandex.ru", progressUrl = "http://www.google.com", }; var merchant = new OrderMerchantModel(convertTransfer); var purchase = lykkePayApi.convertTransfer.PostPurchaseResponse(merchant, convertTransfer); Assert.That(purchase.StatusCode, Is.EqualTo(HttpStatusCode.NotFound)); }
public void PostConvertTransferNegativeAddressTest(string address) { var testAddress = address.ToString(); var assetPair = "BTCUSD"; var baseAsset = "USD"; decimal amount = 10M; var convertTransfer = new PostConvertTransferModel(testAddress, assetPair, baseAsset, amount) { successUrl = "http://tut.by", errorUrl = "http://yandex.ru", progressUrl = "http://www.google.com", }; var merchant = new OrderMerchantModel(convertTransfer); var purchase = lykkePayApi.convertTransfer.PostPurchaseResponse(merchant, convertTransfer); Assert.That(purchase.StatusCode, Is.EqualTo(HttpStatusCode.NotFound)); }
public void PostConvertTransferTest() { var address = "mk8KW4VkUYHAbQPTFxQ1GrmoNhjxQsWB9g"; var assetPair = "BTCUSD"; var baseAsset = "USD"; decimal amount = 10M; var convertTransfer = new PostConvertTransferModel(address, assetPair, baseAsset, amount) { successUrl = "http://tut.by", errorUrl = "http://yandex.ru", progressUrl = "http://www.google.com", }; var merchant = new MerchantModel(convertTransfer); var purchase = lykkePayApi.convertTransfer.PostPurchaseResponse(merchant, convertTransfer); Assert.That(purchase.Response.StatusCode, Is.EqualTo(HttpStatusCode.OK)); //TODO: Check purchase }
public IResponse <PostConvertTransferResponseModel> PostPurchaseResponse(AbstractMerchant merchantModel, PostConvertTransferModel purchaseModel) { JsonSerializerSettings settings = new JsonSerializerSettings(); settings.NullValueHandling = NullValueHandling.Ignore; string jsonBody = JsonConvert.SerializeObject(purchaseModel, Formatting.Indented, settings); merchantModel.Sign(jsonBody); var request = Request.Post(resource). WithHeaders("Lykke-Merchant-Id", merchantModel.LykkeMerchantId). WithHeaders("Lykke-Merchant-Sign", merchantModel.LykkeMerchantSign). AddJsonBody(jsonBody); if (merchantModel.LykkeMerchantSessionId != null) { request.WithHeaders("Lykke-Merchant-Session-Id", merchantModel.LykkeMerchantSessionId); } return(request.Build().Execute <PostConvertTransferResponseModel>()); }