add some UT and fix error message + bump Nbitpayclient

This commit is contained in:
Andrew Camilleri 2018-05-29 17:12:07 +02:00
parent ada6f3b844
commit bac9ef4f93
3 changed files with 38 additions and 3 deletions

View file

@ -35,6 +35,7 @@ using BTCPayServer.Services.Apps;
using BTCPayServer.Services.Stores; using BTCPayServer.Services.Stores;
using System.Net.Http; using System.Net.Http;
using System.Text; using System.Text;
using BTCPayServer.Models;
using BTCPayServer.Rating; using BTCPayServer.Rating;
using BTCPayServer.Validation; using BTCPayServer.Validation;
using ExchangeSharp; using ExchangeSharp;
@ -677,6 +678,40 @@ namespace BTCPayServer.Tests
} }
} }
[Fact]
public void CanGetRates()
{
using (var tester = ServerTester.Create())
{
tester.Start();
var acc = tester.NewAccount();
acc.GrantAccess();
acc.RegisterDerivationScheme("BTC");
acc.RegisterDerivationScheme("LTC");
var rateController = acc.GetController<RateController>();
var GetBaseCurrencyRatesResult = JObject.Parse(((JsonResult)rateController.GetBaseCurrencyRates("BTC", acc.StoreId)
.GetAwaiter().GetResult()).ToJson()).ToObject<DataWrapper<Rate[]>>();
Assert.NotNull(GetBaseCurrencyRatesResult);
Assert.NotNull(GetBaseCurrencyRatesResult.Data);
Assert.Single(GetBaseCurrencyRatesResult.Data);
Assert.Equal("LTC", GetBaseCurrencyRatesResult.Data.First().Code);
var GetRatesResult = JObject.Parse(((JsonResult)rateController.GetRates(null, acc.StoreId)
.GetAwaiter().GetResult()).ToJson()).ToObject<DataWrapper<Rate[]>>();
Assert.NotNull(GetRatesResult);
Assert.NotNull(GetRatesResult.Data);
Assert.Equal(2, GetRatesResult.Data.Length);
var GetCurrencyPairRateResult = JObject.Parse(((JsonResult)rateController.GetCurrencyPairRate("BTC", "LTC", acc.StoreId)
.GetAwaiter().GetResult()).ToJson()).ToObject<DataWrapper<Rate>>();
Assert.NotNull(GetCurrencyPairRateResult);
Assert.NotNull(GetCurrencyPairRateResult.Data);
Assert.Equal("LTC", GetCurrencyPairRateResult.Data.Code);
}
}
private void AssertSearchInvoice(TestAccount acc, bool expected, string invoiceId, string filter) private void AssertSearchInvoice(TestAccount acc, bool expected, string invoiceId, string filter)
{ {
var result = (Models.InvoicingModels.InvoicesModel)((ViewResult)acc.GetController<InvoiceController>().ListInvoices(filter).Result).Model; var result = (Models.InvoicingModels.InvoicesModel)((ViewResult)acc.GetController<InvoiceController>().ListInvoices(filter).Result).Model;

View file

@ -41,7 +41,7 @@
<PackageReference Include="Microsoft.Extensions.Logging.Filter" Version="1.1.2" /> <PackageReference Include="Microsoft.Extensions.Logging.Filter" Version="1.1.2" />
<PackageReference Include="Microsoft.NetCore.Analyzers" Version="2.6.0" /> <PackageReference Include="Microsoft.NetCore.Analyzers" Version="2.6.0" />
<PackageReference Include="NBitcoin" Version="4.1.1.8" /> <PackageReference Include="NBitcoin" Version="4.1.1.8" />
<PackageReference Include="NBitpayClient" Version="1.0.0.25" /> <PackageReference Include="NBitpayClient" Version="1.0.0.26" />
<PackageReference Include="DBreeze" Version="1.87.0" /> <PackageReference Include="DBreeze" Version="1.87.0" />
<PackageReference Include="NBXplorer.Client" Version="1.0.2.8" /> <PackageReference Include="NBXplorer.Client" Version="1.0.2.8" />
<PackageReference Include="NicolasDorier.CommandLine" Version="1.0.0.1" /> <PackageReference Include="NicolasDorier.CommandLine" Version="1.0.0.1" />

View file

@ -104,7 +104,7 @@ namespace BTCPayServer.Controllers
{ {
if (storeId == null) if (storeId == null)
{ {
var result = Json(new BitpayErrorsModel() { Error = "You need to specify storeId (in your store settings) and currencyPairs (eg. BTC_USD,LTC_CAD)" }); var result = Json(new BitpayErrorsModel() { Error = "You need to specify storeId (in your store settings)" });
result.StatusCode = 400; result.StatusCode = 400;
return result; return result;
} }
@ -143,7 +143,7 @@ namespace BTCPayServer.Controllers
if (string.IsNullOrEmpty(currencyPairs)) if (string.IsNullOrEmpty(currencyPairs))
{ {
var result = Json(new BitpayErrorsModel() { Error = "You need to specify storeId (in your store settings) and currencyPairs (eg. BTC_USD,LTC_CAD)" }); var result = Json(new BitpayErrorsModel() { Error = "You need to specify currencyPairs (eg. BTC_USD,LTC_CAD)" });
result.StatusCode = 400; result.StatusCode = 400;
return result; return result;
} }