Esempio n. 1
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
            }
Esempio n. 2
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'");
            }
Esempio n. 3
0
            public void PostTransferAmountNegativeTest(string amount)
            {
                var transferJson     = $"{{\"destinationAddress\":\"{validAddress}\",\"amount\":{amount}}}";
                var merch            = new OrderMerchantModel(transferJson);
                var transferResponse = lykkePayApi.transfer.PostTransferModel(merch, transferJson);

                Assert.That(transferResponse.StatusCode, Is.EqualTo(HttpStatusCode.BadRequest));
            }
Esempio n. 4
0
            public void PostTransferEmptyBodyTest()
            {
                var transferJson     = "{}";
                var merch            = new OrderMerchantModel(transferJson);
                var transferResponse = lykkePayApi.transfer.PostTransferModel(merch, transferJson);

                Assert.That(transferResponse.StatusCode, Is.EqualTo(HttpStatusCode.BadRequest));
            }
Esempio n. 5
0
            public void PostPurchaseDestAddressTest()
            {
                var purchaceJson = "{\"destinationAddress\":\"n1gDxgVtJmTxaXupcFNd8AeKmdJaihTacx\"}";
                var merchant     = new OrderMerchantModel(purchaceJson);
                var purchase     = lykkePayApi.purchase.PostPurchaseResponse(merchant, purchaceJson);

                Assert.That(purchase.StatusCode, Is.EqualTo(HttpStatusCode.BadRequest));
            }
Esempio n. 6
0
            public void PostPurchaseAmountTest()
            {
                var purchaceJson = "{\"paidAmount\":100.0}";
                var merchant     = new OrderMerchantModel(purchaceJson);
                var purchase     = lykkePayApi.purchase.PostPurchaseResponse(merchant, purchaceJson);

                Assert.That(purchase.StatusCode, Is.EqualTo(HttpStatusCode.BadRequest));
            }
Esempio n. 7
0
            public void PostPurchasePostPurchaseAssetPairTest()
            {
                var purchaceJson = "{\"assetPair\":\"BTCUSD\"}";
                var merchant     = new OrderMerchantModel(purchaceJson);
                var purchase     = lykkePayApi.purchase.PostPurchaseResponse(merchant, purchaceJson);

                Assert.That(purchase.StatusCode, Is.EqualTo(HttpStatusCode.BadRequest));
            }
Esempio n. 8
0
            public void PostConvertTransferNegativeOnlyAmountTest()
            {
                var json = "{\"amount\":10.0 }";

                var merchant = new OrderMerchantModel(json);

                var purchase = lykkePayApi.convertTransfer.PostPurchaseResponse(merchant, json);

                Assert.That(purchase.StatusCode, Is.EqualTo(HttpStatusCode.NotFound));
            }
Esempio n. 9
0
            public void PostConvertTransferNegativeOnlyAssetPairTest()
            {
                var testAssetPair = "BTCUSD";

                var json = $"{{\"assetPair\": \"{testAssetPair}\"}}";

                var merchant = new OrderMerchantModel(json);

                var purchase = lykkePayApi.convertTransfer.PostPurchaseResponse(merchant, json);

                Assert.That(purchase.StatusCode, Is.EqualTo(HttpStatusCode.NotFound));
            }
Esempio n. 10
0
            public void PostPurchasInvaldAmountTest(string amount)
            {
                var json = $"{{\"destinationAddress\":\"n1gDxgVtJmTxaXupcFNd8AeKmdJaihTacx\",\"assetPair\":\"BTCUSD\",\"baseAsset\":\"USD\"," +
                           $"\"paidAmount\":{amount},\"successUrl\":\"http://tut.by\",\"errorUrl\":\"http://yandex.ru\",\"progressUrl\":\"http://www.google.com\"," +
                           $"\"orderId\":\"1231123123412\",\"markup\":{{\"percent\":20.0,\"pips\":0,\"fixedFee\":0.0}}}}";

                var merchant = new OrderMerchantModel(json);

                var purchase = lykkePayApi.purchase.PostPurchaseResponse(merchant, json);

                Assert.That(purchase.StatusCode, Is.EqualTo(HttpStatusCode.BadRequest));
            }
Esempio n. 11
0
            public void PostConvertTransferNegativeOnlyAddressTest()
            {
                var address = "n1gDxgVtJmTxaXupcFNd8AeKmdJaihTacx";

                var json = $"{{\"destinationAddress\": \"{address}\"}}";

                var merchant = new OrderMerchantModel(json);

                var purchase = lykkePayApi.convertTransfer.PostPurchaseResponse(merchant, json);

                Assert.That(purchase.StatusCode, Is.EqualTo(HttpStatusCode.NotFound));
            }
Esempio n. 12
0
            public void PostConvertTransferNegativeAmountTest(string amount)
            {
                var address       = "n1gDxgVtJmTxaXupcFNd8AeKmdJaihTacx";
                var testAssetPair = "BTCUSD";
                var baseAsset     = "USD";

                var json = $"{{\"destinationAddress\": \"{address}\",\"assetPair\": \"{testAssetPair}\",\"baseAsset\": \"{baseAsset}\",\"amount\": {amount},\"successUrl\": \"http://tut.by\",\"errorUrl\": \"http://yandex.ru\",\"progressUrl\": \"http://www.google.com\"}}";

                var merchant = new OrderMerchantModel(json);

                var purchase = lykkePayApi.convertTransfer.PostPurchaseResponse(merchant, json);

                Assert.That(purchase.StatusCode, Is.EqualTo(HttpStatusCode.NotFound));
            }
Esempio n. 13
0
            public void PostTransferOnlyAmountNegativeTest()
            {
                var transfer = new TransferRequestModel()
                {
                    amount = 0.00090202326503065414m
                };
                var transferJson = JsonConvert.SerializeObject(transfer, new JsonSerializerSettings()
                {
                    NullValueHandling = NullValueHandling.Ignore
                });
                var merch            = new OrderMerchantModel(transferJson);
                var transferResponse = lykkePayApi.transfer.PostTransferModel(merch, transferJson);

                Assert.That(transferResponse.StatusCode, Is.EqualTo(HttpStatusCode.BadRequest));
            }
Esempio n. 14
0
            public void PostTransferOrderIdNegativeTest(string orderId)
            {
                var transfer = new TransferRequestModel()
                {
                    amount = 0.002m, destinationAddress = validAddress, orderId = orderId
                };
                var transferJson = JsonConvert.SerializeObject(transfer, new JsonSerializerSettings()
                {
                    NullValueHandling = NullValueHandling.Ignore
                });
                var merch            = new OrderMerchantModel(transferJson);
                var transferResponse = lykkePayApi.transfer.PostTransferModel(merch, transferJson);

                Assert.That(transferResponse.StatusCode, Is.EqualTo(HttpStatusCode.BadRequest));
            }
Esempio n. 15
0
            public void PostTransferAssetIdNegativeTest(string assetId)
            {
                var transfer = new TransferRequestModel()
                {
                    amount = 0.0018m, destinationAddress = "mxtrQzcgAa9FV3FFFy9WRQqD3W5vaAD1ov", assetId = assetId
                };
                var transferJson = JsonConvert.SerializeObject(transfer, new JsonSerializerSettings()
                {
                    NullValueHandling = NullValueHandling.Ignore
                });
                var merch            = new OrderMerchantModel(transferJson);
                var transferResponse = lykkePayApi.transfer.PostTransferModel(merch, transferJson);

                Assert.That(transferResponse.StatusCode, Is.EqualTo(HttpStatusCode.OK));
                Assert.That(transferResponse.Content, Does.Contain("INVALID_ADDRESS"));
            }
            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
            }
Esempio n. 17
0
            public void PostTransferDestinationAddressNegativeTest(object address)
            {
                string destionationAddress = address.ToString();

                var transfer = new TransferRequestModel()
                {
                    amount = 0.0018m, destinationAddress = destionationAddress
                };
                var transferJson = JsonConvert.SerializeObject(transfer, new JsonSerializerSettings()
                {
                    NullValueHandling = NullValueHandling.Ignore
                });
                var merch            = new OrderMerchantModel(transferJson);
                var transferResponse = lykkePayApi.transfer.PostTransferModel(merch, transferJson);

                Assert.That(transferResponse.StatusCode, Is.EqualTo(HttpStatusCode.OK));
                Assert.That(transferResponse.Content, Does.Contain("INVALID_ADDRESS"));
            }
Esempio n. 18
0
            public void OrderPostBackSuccessResponseTest()
            {
                //add GetBalance and skip(Fail?) if not enough crypto

                var assetPair = "BTCUSD";

                MarkupModel markUp = new MarkupModel(50, 30);

                var merchant = new MerchantModel(markUp);
                var response = lykkePayApi.assetPairRates.PostAssetsPairRates(assetPair, merchant, markUp);

                Assert.That(response.StatusCode, Is.EqualTo(HttpStatusCode.OK), "Unexpected status code");
                var postModel = JsonConvert.DeserializeObject <PostAssetsPairRatesModel>(response.Content);

                Assert.That(postModel.LykkeMerchantSessionId, Is.Not.Null, "LykkeMerchantSessionId not present in response");

                // order request below
                var oId          = TestData.GenerateNumbers(5);
                var orderRequest = new OrderRequestModel()
                {
                    currency = "USD", amount = 10, exchangeCurrency = "BTC", successURL = successURL + $"?orderId={oId}", errorURL = errorURL, progressURL = progressURL, orderId = TestData.GenerateNumbers(5), markup = new PostMarkup(markUp, 0)
                };
                var orderRequestJson = JsonConvert.SerializeObject(orderRequest);

                merchant = new MerchantModel(orderRequestJson);

                var orderResponse = lykkePayApi.order.PostOrderModel(merchant, orderRequestJson, postModel.LykkeMerchantSessionId).GetResponseObject();

                Assert.That(orderResponse.currency, Is.EqualTo(orderRequest.exchangeCurrency), "Unexpected currency in order response");
                Assert.That(orderResponse.exchangeRate * orderResponse.amount, Is.EqualTo(orderRequest.amount).Within("0.00000000001"), "Exchange rate * amount in order response not equals to request amount");

                var transfer = new TransferRequestModel()
                {
                    amount = orderResponse.amount + 0.000476m /*temp value - with fee*/, destinationAddress = orderResponse.address, assetId = "BTC", sourceAddress = "n1gDxgVtJmTxaXupcFNd8AeKmdJaihTacx"
                };
                var transferJson    = JsonConvert.SerializeObject(transfer);
                var merch           = new OrderMerchantModel(transferJson);
                var convertTransfer = lykkePayApi.transfer.PostTransferModel(merch, transferJson);

                var tId = convertTransfer.GetResponseObject().transferResponse.transactionId;

                Assert.That(() => lykkePayApi.postBack.GetCallBackByTransactionID(tId).Content, Does.Contain("paymentResponse").And.Contain("PAYMENT_CONFIRMED").And.Contain("PAYMENT_INPROGRESS").After(5 * 60 * 1000, 3 * 1000), $"postback for order id {orderRequest.orderId} is not correct");
            }
Esempio n. 19
0
            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));
            }
Esempio n. 20
0
            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));
            }
Esempio n. 21
0
            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 OrderMerchantModel(convertTransfer);

                var purchase = lykkePayApi.convertTransfer.PostPurchaseResponse(merchant, convertTransfer);

                Assert.That(purchase.StatusCode, Is.EqualTo(HttpStatusCode.OK));
                //TODO: Check purchase
            }
            public void OrderPostBackSuccessResponseTest()
            {
                var assetPair = "BTCUSD";

                MarkupModel markUp = new MarkupModel(50, 30);

                var merchant = new MerchantModel(markUp);
                var response = lykkePayApi.assetPairRates.PostAssetPairRates(assetPair, merchant, markUp);

                Assert.That(response.StatusCode, Is.EqualTo(HttpStatusCode.OK), "Unexpected status code");
                var postModel = JsonConvert.DeserializeObject <PostAssetsPairRatesModel>(response.Content);

                Assert.That(postModel.LykkeMerchantSessionId, Is.Not.Null, "LykkeMerchantSessionId not present in response");

                // order request below

                var orderRequest = new OrderRequestModel()
                {
                    currency = "USD", amount = 10, exchangeCurrency = "BTC", successURL = successURL, errorURL = errorURL, progressURL = progressURL, orderId = TestData.GenerateNumbers(5), markup = new PostMarkup(markUp, 0)
                };
                var orderRequestJson = JsonConvert.SerializeObject(orderRequest);

                merchant = new MerchantModel(orderRequestJson);

                var orderResponse = lykkePayApi.order.PostOrderModel(merchant, orderRequestJson, postModel.LykkeMerchantSessionId);

                Assert.That(orderResponse.currency, Is.EqualTo(orderRequest.exchangeCurrency), "Unexpected currency in order response");
                Assert.That(orderResponse.exchangeRate * orderResponse.amount, Is.EqualTo(orderRequest.amount).Within("0.00000000001"), "Exchange rate * amount in order response not equals to request amount");

                var transfer = new TransferRequestModel()
                {
                    amount = orderResponse.amount, destinationAddress = orderResponse.address, assetId = "BTC", sourceAddress = "n1gDxgVtJmTxaXupcFNd8AeKmdJaihTacx"
                };
                var transferJson    = JsonConvert.SerializeObject(transfer);
                var merch           = new OrderMerchantModel(transferJson);
                var convertTransfer = lykkePayApi.transfer.PostTransferModel(merch, transferJson);

                var getB = lykkePayApi.getBalance.GetGetBalance("BTC", merch);
            }
            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
            }
Esempio n. 25
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));
            }