public void PostPurchaseSampleTest() { var markUp = new MarkupModel(20, 10); var merchant = new OrderMerchantModel(markUp); var address = new OrderMerchantModel("").BlockChainAddress; var assetPair = "BTCUSD"; var baseAsset = "USD"; decimal amount = 100; var postAssetsPairRates = lykkePayApi.assetPairRates.PostAssetsPairRates(assetPair, merchant, markUp).GetResponseObject(); var purchaseModel = new PostPurchaseModel(address, assetPair, baseAsset, amount) { successUrl = "http://tut.by", errorUrl = "http://yandex.ru", progressUrl = "http://www.google.com", orderId = "1231123123412", markup = new PostMarkup(20, 0, null) }; var purchaceJson = JsonConvert.SerializeObject(purchaseModel); merchant = new OrderMerchantModel(purchaceJson); var result = lykkePayApi.purchase.PostPurchaseResponse(merchant, purchaceJson); Assert.That(result.StatusCode, Is.EqualTo(HttpStatusCode.OK), "Purchase was unsuccessfull"); Assert.That(result.Content, Does.Contain("TRANSFER_INPROGRESS"), "Purchase response doesn't contain 'TRANSFER_INPROGRESS'"); }
public void PostPurchaseAllParamsTest() { var address = new OrderMerchantModel("").BlockChainAddress; var assetPair = "BTCUSD"; var baseAsset = "USD"; decimal amount = 10M; var purchaseModel = new PostPurchaseModel(address, assetPair, baseAsset, amount) { successUrl = "http://tut.by", errorUrl = "http://yandex.ru", progressUrl = "http://www.google.com", orderId = "1231123123412", markup = new PostMarkup(20, 0, 0) }; var json = JsonConvert.SerializeObject(purchaseModel); var merchant = new OrderMerchantModel(json); var purchase = lykkePayApi.purchase.PostPurchaseResponse(merchant, json); Assert.That(purchase.StatusCode, Is.EqualTo(HttpStatusCode.OK)); Assert.That(purchase.Content, Does.Contain("TRANSFER_INPROGRESS"), "Purchase response doesn't contain 'TRANSFER_INPROGRESS'"); //TODO: Check purchase }
PostPurchaseResponse(MerchantModel merchantModel, PostPurchaseModel 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 <PostPurchaseResponseModel>(response.Content); return(response, data); } catch (JsonReaderException) { return(response, null); } }
public void PostPurchaseRequiredParamsOnlyTest() { var address = new OrderMerchantModel("").BlockChainAddress; var assetPair = "BTCUSD"; var baseAsset = "USD"; decimal amount = 100; var purchaseModel = new PostPurchaseModel(address, assetPair, baseAsset, amount); var purchaceJson = JsonConvert.SerializeObject(purchaseModel); var merchant = new MerchantModel(purchaceJson); var purchase = lykkePayApi.purchase.PostPurchaseResponse(merchant, purchaceJson); Assert.That(purchase.Response.StatusCode, Is.EqualTo(HttpStatusCode.OK)); //TODO: Check purchase }
public void PostPurchaseSampleTest() { var markUp = new MarkupModel(20, 10); var merchant = new MerchantModel(markUp); var address = new OrderMerchantModel("").BlockChainAddress; var assetPair = "BTCUSD"; var baseAsset = "USD"; decimal amount = 100; var postAssetsPairRates = lykkePayApi.assetPairRates.PostAssetsPairRatesModel(assetPair, merchant, markUp); var purchaseModel = new PostPurchaseModel(address, assetPair, baseAsset, amount) { successUrl = "http://tut.by", errorUrl = "http://yandex.ru", progressUrl = "http://www.google.com", orderId = "1231123123412", markup = new PostMarkup(20, 0, null) }; merchant.LykkeMerchantSessionId = postAssetsPairRates.LykkeMerchantSessionId; var result = lykkePayApi.purchase.PostPurchaseResponse(merchant, purchaseModel); }
public void PostPurchaseAllParamsTest() { var address = new OrderMerchantModel("").BlockChainAddress; var assetPair = "BTCUSD"; var baseAsset = "USD"; decimal amount = 10M; var purchaseModel = new PostPurchaseModel(address, assetPair, baseAsset, amount) { successUrl = "http://tut.by", errorUrl = "http://yandex.ru", progressUrl = "http://www.google.com", orderId = "1231123123412", markup = new PostMarkup(20, 0, 0) }; var merchant = new MerchantModel(purchaseModel); var purchase = lykkePayApi.purchase.PostPurchaseResponse(merchant, purchaseModel); Assert.That(purchase.Response.StatusCode, Is.EqualTo(HttpStatusCode.OK)); //TODO: Check purchase }
public void PostPurchasInvaldBaseAssetTest(string baseAsset) { var address = "n1gDxgVtJmTxaXupcFNd8AeKmdJaihTacx"; var assetPair = "BTCUSD"; decimal amount = 10M; var purchaseModel = new PostPurchaseModel(address, assetPair, baseAsset, amount) { successUrl = "http://tut.by", errorUrl = "http://yandex.ru", progressUrl = "http://www.google.com", orderId = "1231123123412", markup = new PostMarkup(20, 0, 0) }; var json = JsonConvert.SerializeObject(purchaseModel); var merchant = new OrderMerchantModel(json); var purchase = lykkePayApi.purchase.PostPurchaseResponse(merchant, json); Assert.That(purchase.StatusCode, Is.EqualTo(HttpStatusCode.BadRequest)); }
public IResponse <PostPurchaseResponseModel> PostPurchaseResponse(AbstractMerchant merchantModel, PostPurchaseModel purchaseModel) { var request = Request.Post(resource). WithHeaders("Lykke-Merchant-Id", merchantModel.LykkeMerchantId). WithHeaders("Lykke-Merchant-Sign", merchantModel.LykkeMerchantSign); if (merchantModel.LykkeMerchantSessionId != null) { request.WithHeaders("Lykke-Merchant-Session-Id", merchantModel.LykkeMerchantSessionId); } return(request.AddJsonBody(purchaseModel).Build().Execute <PostPurchaseResponseModel>()); }