fix: Reenable ReSharper annotations, fix warnings
This commit is contained in:
@@ -47,11 +47,10 @@ jobs:
|
||||
with:
|
||||
token: ${{ secrets.CODECOV_TOKEN }}
|
||||
fail_ci_if_error: true
|
||||
|
||||
|
||||
resharper:
|
||||
name: Resharper
|
||||
runs-on: ubuntu-latest
|
||||
if: false #ReSharper currently does not support .NET 7
|
||||
steps:
|
||||
- uses: actions/checkout@v3.1.0
|
||||
- uses: actions/setup-dotnet@v3.0.3
|
||||
@@ -62,5 +61,5 @@ jobs:
|
||||
uses: VMelnalksnis/resharper-inspect-action@v0.2.5
|
||||
with:
|
||||
solution: NordigenDotNet.sln
|
||||
resharper-version: 2022.1.2
|
||||
resharper-version: 2022.3.0-eap09
|
||||
treat-warnings-as-errors: true
|
||||
|
||||
@@ -52,7 +52,7 @@ public record Requisition
|
||||
|
||||
/// <summary>Gets the end-user-agreement of this requisition.</summary>
|
||||
[JsonIgnore]
|
||||
public Guid? Agreement => string.IsNullOrWhiteSpace(AgreementValue) ? null : Guid.Parse(AgreementValue);
|
||||
public Guid? Agreement => string.IsNullOrWhiteSpace(AgreementValue) ? null : Guid.Parse(AgreementValue!);
|
||||
|
||||
/// <summary>Gets or sets a two-letter country code (ISO 639-1).</summary>
|
||||
[JsonPropertyName("user_language")]
|
||||
|
||||
@@ -12,7 +12,7 @@ using VMelnalksnis.NordigenDotNet.Requisitions;
|
||||
|
||||
namespace VMelnalksnis.NordigenDotNet.Serialization;
|
||||
|
||||
/// <inheritdoc />
|
||||
/// <inheritdoc cref="JsonSerializerContext" />
|
||||
[JsonSourceGenerationOptions(GenerationMode = JsonSourceGenerationMode.Metadata, IgnoreReadOnlyProperties = true)]
|
||||
[JsonSerializable(typeof(Account))]
|
||||
[JsonSerializable(typeof(AccountDetailsWrapper))]
|
||||
|
||||
@@ -6,7 +6,7 @@ using System.Text.Json.Serialization;
|
||||
|
||||
namespace VMelnalksnis.NordigenDotNet.Tokens;
|
||||
|
||||
/// <inheritdoc />
|
||||
/// <inheritdoc cref="JsonSerializerContext" />
|
||||
[JsonSerializable(typeof(AccessToken))]
|
||||
[JsonSerializable(typeof(Token))]
|
||||
[JsonSerializable(typeof(TokenCreation))]
|
||||
|
||||
+18
-18
@@ -2,6 +2,7 @@
|
||||
// Licensed under the Apache License 2.0.
|
||||
// See LICENSE file in the project root for full license information.
|
||||
|
||||
using System;
|
||||
using System.Linq;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
@@ -15,31 +16,35 @@ using static VMelnalksnis.NordigenDotNet.Tests.Integration.ServiceProviderFixtur
|
||||
|
||||
namespace VMelnalksnis.NordigenDotNet.Tests.Integration.Accounts;
|
||||
|
||||
public sealed class AccountClientTests : IClassFixture<ServiceProviderFixture>
|
||||
public sealed class AccountClientTests : IClassFixture<ServiceProviderFixture>, IAsyncLifetime
|
||||
{
|
||||
private readonly ITestOutputHelper _testOutputHelper;
|
||||
private readonly INordigenClient _nordigenClient;
|
||||
private readonly Requisition _requisition;
|
||||
private Requisition _requisition = null!;
|
||||
private Guid _accountId;
|
||||
|
||||
public AccountClientTests(ITestOutputHelper testOutputHelper, ServiceProviderFixture serviceProviderFixture)
|
||||
{
|
||||
_testOutputHelper = testOutputHelper;
|
||||
_nordigenClient = serviceProviderFixture.GetNordigenClient(testOutputHelper);
|
||||
}
|
||||
|
||||
_requisition = GetRequisition().GetAwaiter().GetResult();
|
||||
public async Task InitializeAsync()
|
||||
{
|
||||
_requisition = await GetRequisition();
|
||||
_accountId = _requisition.Accounts.OrderBy(guid => guid).First();
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public async Task Get_ShouldReturnExpected()
|
||||
{
|
||||
_requisition.Accounts.Should().HaveCount(2);
|
||||
var id = _requisition.Accounts.First();
|
||||
|
||||
var account = await _nordigenClient.Accounts.Get(id);
|
||||
var account = await _nordigenClient.Accounts.Get(_accountId);
|
||||
var currentInstant = SystemClock.Instance.GetCurrentInstant();
|
||||
using (new AssertionScope())
|
||||
{
|
||||
account.Id.Should().Be(id);
|
||||
account.Id.Should().Be(_accountId);
|
||||
account.Created.Should().BeLessThan(account.LastAccessed).And.BeLessThan(currentInstant);
|
||||
account.LastAccessed.Should().BeGreaterThan(currentInstant - Duration.FromMinutes(1));
|
||||
account.Iban.Should().Be("GL3343697694912188");
|
||||
@@ -51,9 +56,7 @@ public sealed class AccountClientTests : IClassFixture<ServiceProviderFixture>
|
||||
[Fact]
|
||||
public async Task GetDetails_ShouldReturnExpected()
|
||||
{
|
||||
var id = _requisition.Accounts.First();
|
||||
|
||||
var accountDetails = await _nordigenClient.Accounts.GetDetails(id);
|
||||
var accountDetails = await _nordigenClient.Accounts.GetDetails(_accountId);
|
||||
|
||||
using (new AssertionScope())
|
||||
{
|
||||
@@ -70,9 +73,7 @@ public sealed class AccountClientTests : IClassFixture<ServiceProviderFixture>
|
||||
[Fact]
|
||||
public async Task GetBalances_ShouldReturnExpected()
|
||||
{
|
||||
var id = _requisition.Accounts.First();
|
||||
|
||||
var balances = await _nordigenClient.Accounts.GetBalances(id);
|
||||
var balances = await _nordigenClient.Accounts.GetBalances(_accountId);
|
||||
|
||||
balances.Should().HaveCount(2);
|
||||
|
||||
@@ -89,16 +90,14 @@ public sealed class AccountClientTests : IClassFixture<ServiceProviderFixture>
|
||||
[Fact]
|
||||
public async Task GetTransactions_ShouldReturnExpected()
|
||||
{
|
||||
var id = _requisition.Accounts.First();
|
||||
|
||||
var currentInstant = SystemClock.Instance.GetCurrentInstant();
|
||||
var currentZone = DateTimeZoneProviders.Tzdb.GetSystemDefault();
|
||||
var currentDate = currentInstant.InZone(currentZone).Date;
|
||||
|
||||
var dateTo = currentInstant;
|
||||
var dateFrom = dateTo - Duration.FromDays(7);
|
||||
var transactions = await _nordigenClient.Accounts.GetTransactions(id, new Interval(dateFrom, dateTo));
|
||||
var allTransactions = await _nordigenClient.Accounts.GetTransactions(id);
|
||||
var transactions = await _nordigenClient.Accounts.GetTransactions(_accountId, new Interval(dateFrom, dateTo));
|
||||
var allTransactions = await _nordigenClient.Accounts.GetTransactions(_accountId);
|
||||
|
||||
using (new AssertionScope())
|
||||
{
|
||||
@@ -131,11 +130,12 @@ public sealed class AccountClientTests : IClassFixture<ServiceProviderFixture>
|
||||
}
|
||||
}
|
||||
|
||||
public Task DisposeAsync() => Task.CompletedTask;
|
||||
|
||||
private async Task<Requisition> GetRequisition()
|
||||
{
|
||||
var requisition = await _nordigenClient.Requisitions.Get().SingleOrDefaultAsync(r =>
|
||||
r.InstitutionId is IntegrationInstitutionId &&
|
||||
r.Status is RequisitionStatus.Ln);
|
||||
r is { InstitutionId: IntegrationInstitutionId, Status: RequisitionStatus.Ln });
|
||||
|
||||
if (requisition is not null)
|
||||
{
|
||||
|
||||
+4
-1
@@ -4,7 +4,6 @@
|
||||
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Net;
|
||||
using System.Net.Http;
|
||||
using System.Threading;
|
||||
using System.Threading.Tasks;
|
||||
@@ -15,6 +14,10 @@ using VMelnalksnis.NordigenDotNet.Requisitions;
|
||||
|
||||
using Xunit.Abstractions;
|
||||
|
||||
#if NET6_0_OR_GREATER
|
||||
using System.Net;
|
||||
#endif
|
||||
|
||||
using static VMelnalksnis.NordigenDotNet.Tests.Integration.ServiceProviderFixture;
|
||||
|
||||
namespace VMelnalksnis.NordigenDotNet.Tests.Integration.Requisitions;
|
||||
|
||||
Reference in New Issue
Block a user