Exemplo n.º 1
0
            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'");
            }
Exemplo n.º 2
0
            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
            }
Exemplo n.º 3
0
        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
            }
Exemplo n.º 7
0
            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));
            }
Exemplo n.º 8
0
        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>());
        }