Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -1,13 +1,14 @@
using Bunit;
using EstateManagementUI.BlazorServer.Components.Permissions;
using EstateManagementUI.BlazorServer.Models;
using EstateManagementUI.BlazorServer.Permissions;
using EstateManagementUI.BusinessLogic.Models;
using EstateManagementUI.BusinessLogic.Requests;
using MediatR;
using Microsoft.AspNetCore.Components;
using Microsoft.Extensions.DependencyInjection;
using Moq;
using Shouldly;
using static EstateManagementUI.BlazorServer.Requests.Queries;
using SimpleResults;
using ContractsIndex = EstateManagementUI.BlazorServer.Components.Pages.Contracts.Index;

namespace EstateManagementUI.BlazorServer.Tests.Pages.Contracts;
Expand Down Expand Up @@ -50,8 +51,8 @@ public void ContractsIndex_RendersCorrectly()
}
};

_mockMediator.Setup(x => x.Send(It.IsAny<GetContractsQuery>(), default))
.ReturnsAsync(Result<List<ContractModel>>.Success(contracts));
_mockMediator.Setup(x => x.Send(It.IsAny<Queries.GetContractsQuery>(), default))
.ReturnsAsync(Result.Success(contracts));

// Act
var cut = RenderComponent<ContractsIndex>();
Expand All @@ -65,8 +66,8 @@ public void ContractsIndex_WithNoContracts_ShowsEmptyState()
{
// Arrange
var emptyList = new List<ContractModel>();
_mockMediator.Setup(x => x.Send(It.IsAny<GetContractsQuery>(), default))
.ReturnsAsync(Result<List<ContractModel>>.Success(emptyList));
_mockMediator.Setup(x => x.Send(It.IsAny<Queries.GetContractsQuery>(), default))
.ReturnsAsync(Result.Success(emptyList));

// Act
var cut = RenderComponent<ContractsIndex>();
Expand Down Expand Up @@ -100,8 +101,8 @@ public void ContractsIndex_WithContracts_DisplaysContractList()
}
};

_mockMediator.Setup(x => x.Send(It.IsAny<GetContractsQuery>(), default))
.ReturnsAsync(Result<List<ContractModel>>.Success(contracts));
_mockMediator.Setup(x => x.Send(It.IsAny<Queries.GetContractsQuery>(), default))
.ReturnsAsync(Result.Success(contracts));

// Act
var cut = RenderComponent<ContractsIndex>();
Expand Down Expand Up @@ -134,8 +135,8 @@ public void ContractsIndex_DisplaysProductCount()
}
};

_mockMediator.Setup(x => x.Send(It.IsAny<GetContractsQuery>(), default))
.ReturnsAsync(Result<List<ContractModel>>.Success(contracts));
_mockMediator.Setup(x => x.Send(It.IsAny<Queries.GetContractsQuery>(), default))
.ReturnsAsync(Result.Success(contracts));

// Act
var cut = RenderComponent<ContractsIndex>();
Expand All @@ -149,8 +150,8 @@ public void ContractsIndex_DisplaysProductCount()
public void ContractsIndex_HasCorrectPageTitle()
{
// Arrange
_mockMediator.Setup(x => x.Send(It.IsAny<GetContractsQuery>(), default))
.ReturnsAsync(Result<List<ContractModel>>.Success(new List<ContractModel>()));
_mockMediator.Setup(x => x.Send(It.IsAny<Queries.GetContractsQuery>(), default))
.ReturnsAsync(Result.Success(new List<ContractModel>()));

// Act
var cut = RenderComponent<ContractsIndex>();
Expand Down
Original file line number Diff line number Diff line change
@@ -1,14 +1,15 @@
using Bunit;
using EstateManagementUI.BlazorServer.Components.Pages.Contracts;
using EstateManagementUI.BlazorServer.Components.Permissions;
using EstateManagementUI.BlazorServer.Models;
using EstateManagementUI.BlazorServer.Permissions;
using EstateManagementUI.BusinessLogic.Models;
using EstateManagementUI.BusinessLogic.Requests;
using MediatR;
using Microsoft.AspNetCore.Components;
using Microsoft.Extensions.DependencyInjection;
using Moq;
using Shouldly;
using static EstateManagementUI.BlazorServer.Requests.Queries;
using SimpleResults;

namespace EstateManagementUI.BlazorServer.Tests.Pages.Contracts;

Expand Down Expand Up @@ -45,8 +46,8 @@ public void ContractsView_RendersCorrectly()
OperatorName = "Test Operator"
};

_mockMediator.Setup(x => x.Send(It.IsAny<GetContractQuery>(), default))
.ReturnsAsync(Result<ContractModel>.Success(contract));
_mockMediator.Setup(x => x.Send(It.IsAny<Queries.GetContractQuery>(), default))
.ReturnsAsync(Result.Success(contract));

// Act
var cut = RenderComponent<View>(parameters => parameters
Expand All @@ -68,8 +69,8 @@ public void ContractsView_DisplaysContractDetails()
OperatorName = "Test Operator"
};

_mockMediator.Setup(x => x.Send(It.IsAny<GetContractQuery>(), default))
.ReturnsAsync(Result<ContractModel>.Success(contract));
_mockMediator.Setup(x => x.Send(It.IsAny<Queries.GetContractQuery>(), default))
.ReturnsAsync(Result.Success(contract));

// Act
var cut = RenderComponent<View>(parameters => parameters
Expand All @@ -85,8 +86,8 @@ public void ContractsView_HasCorrectPageTitle()
{
// Arrange
var contractId = Guid.NewGuid();
_mockMediator.Setup(x => x.Send(It.IsAny<GetContractQuery>(), default))
.ReturnsAsync(Result<ContractModel>.Success(new ContractModel { ContractId = contractId }));
_mockMediator.Setup(x => x.Send(It.IsAny<Queries.GetContractQuery>(), default))
.ReturnsAsync(Result.Success(new ContractModel { ContractId = contractId }));

// Act
var cut = RenderComponent<View>(parameters => parameters
Expand Down
Original file line number Diff line number Diff line change
@@ -1,10 +1,11 @@
using Bunit;
using EstateManagementUI.BlazorServer.Models;
using EstateManagementUI.BusinessLogic.Models;
using EstateManagementUI.BusinessLogic.Requests;
using MediatR;
using Microsoft.Extensions.DependencyInjection;
using Moq;
using Shouldly;
using static EstateManagementUI.BlazorServer.Requests.Queries;
using SimpleResults;
using EstateIndex = EstateManagementUI.BlazorServer.Components.Pages.Estate.Index;

namespace EstateManagementUI.BlazorServer.Tests.Pages.Estate;
Expand All @@ -30,14 +31,14 @@ public void EstateIndex_RendersCorrectly()
Reference = "EST001"
};

_mockMediator.Setup(x => x.Send(It.IsAny<GetEstateQuery>(), default))
.ReturnsAsync(Result<EstateModel>.Success(estate));
_mockMediator.Setup(x => x.Send(It.IsAny<GetMerchantsQuery>(), default))
.ReturnsAsync(Result<List<MerchantModel>>.Success(new List<MerchantModel>()));
_mockMediator.Setup(x => x.Send(It.IsAny<GetOperatorsQuery>(), default))
.ReturnsAsync(Result<List<OperatorModel>>.Success(new List<OperatorModel>()));
_mockMediator.Setup(x => x.Send(It.IsAny<GetContractsQuery>(), default))
.ReturnsAsync(Result<List<ContractModel>>.Success(new List<ContractModel>()));
_mockMediator.Setup(x => x.Send(It.IsAny<Queries.GetEstateQuery>(), default))
.ReturnsAsync(Result.Success(estate));
_mockMediator.Setup(x => x.Send(It.IsAny<Queries.GetMerchantsQuery>(), default))
.ReturnsAsync(Result.Success(new List<MerchantModel>()));
_mockMediator.Setup(x => x.Send(It.IsAny<Queries.GetOperatorsQuery>(), default))
.ReturnsAsync(Result.Success(new List<OperatorModel>()));
_mockMediator.Setup(x => x.Send(It.IsAny<Queries.GetContractsQuery>(), default))
.ReturnsAsync(Result.Success(new List<ContractModel>()));

// Act
var cut = RenderComponent<EstateIndex>();
Expand All @@ -57,14 +58,14 @@ public void EstateIndex_DisplaysEstateDetails()
Reference = "EST001"
};

_mockMediator.Setup(x => x.Send(It.IsAny<GetEstateQuery>(), default))
.ReturnsAsync(Result<EstateModel>.Success(estate));
_mockMediator.Setup(x => x.Send(It.IsAny<GetMerchantsQuery>(), default))
.ReturnsAsync(Result<List<MerchantModel>>.Success(new List<MerchantModel>()));
_mockMediator.Setup(x => x.Send(It.IsAny<GetOperatorsQuery>(), default))
.ReturnsAsync(Result<List<OperatorModel>>.Success(new List<OperatorModel>()));
_mockMediator.Setup(x => x.Send(It.IsAny<GetContractsQuery>(), default))
.ReturnsAsync(Result<List<ContractModel>>.Success(new List<ContractModel>()));
_mockMediator.Setup(x => x.Send(It.IsAny<Queries.GetEstateQuery>(), default))
.ReturnsAsync(Result.Success(estate));
_mockMediator.Setup(x => x.Send(It.IsAny<Queries.GetMerchantsQuery>(), default))
.ReturnsAsync(Result.Success(new List<MerchantModel>()));
_mockMediator.Setup(x => x.Send(It.IsAny<Queries.GetOperatorsQuery>(), default))
.ReturnsAsync(Result.Success(new List<OperatorModel>()));
_mockMediator.Setup(x => x.Send(It.IsAny<Queries.GetContractsQuery>(), default))
.ReturnsAsync(Result.Success(new List<ContractModel>()));

// Act
var cut = RenderComponent<EstateIndex>();
Expand All @@ -78,14 +79,14 @@ public void EstateIndex_DisplaysEstateDetails()
public void EstateIndex_HasCorrectPageTitle()
{
// Arrange
_mockMediator.Setup(x => x.Send(It.IsAny<GetEstateQuery>(), default))
.ReturnsAsync(Result<EstateModel>.Success(new EstateModel { EstateId = Guid.NewGuid() }));
_mockMediator.Setup(x => x.Send(It.IsAny<GetMerchantsQuery>(), default))
.ReturnsAsync(Result<List<MerchantModel>>.Success(new List<MerchantModel>()));
_mockMediator.Setup(x => x.Send(It.IsAny<GetOperatorsQuery>(), default))
.ReturnsAsync(Result<List<OperatorModel>>.Success(new List<OperatorModel>()));
_mockMediator.Setup(x => x.Send(It.IsAny<GetContractsQuery>(), default))
.ReturnsAsync(Result<List<ContractModel>>.Success(new List<ContractModel>()));
_mockMediator.Setup(x => x.Send(It.IsAny<Queries.GetEstateQuery>(), default))
.ReturnsAsync(Result.Success(new EstateModel { EstateId = Guid.NewGuid() }));
_mockMediator.Setup(x => x.Send(It.IsAny<Queries.GetMerchantsQuery>(), default))
.ReturnsAsync(Result.Success(new List<MerchantModel>()));
_mockMediator.Setup(x => x.Send(It.IsAny<Queries.GetOperatorsQuery>(), default))
.ReturnsAsync(Result.Success(new List<OperatorModel>()));
_mockMediator.Setup(x => x.Send(It.IsAny<Queries.GetContractsQuery>(), default))
.ReturnsAsync(Result.Success(new List<ContractModel>()));

// Act
var cut = RenderComponent<EstateIndex>();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,12 +2,14 @@
using EstateManagementUI.BlazorServer.Components.Permissions;
using EstateManagementUI.BlazorServer.Models;
using EstateManagementUI.BlazorServer.Permissions;
using EstateManagementUI.BusinessLogic.Requests;
using MediatR;
using Microsoft.AspNetCore.Components;
using Microsoft.Extensions.DependencyInjection;
using Moq;
using Shouldly;
using static EstateManagementUI.BlazorServer.Requests.Queries;
using SimpleResults;
using FileImportLogModel = EstateManagementUI.BusinessLogic.Models.FileImportLogModel;
using FileProcessingIndex = EstateManagementUI.BlazorServer.Components.Pages.FileProcessing.Index;

namespace EstateManagementUI.BlazorServer.Tests.Pages.FileProcessing;
Expand Down Expand Up @@ -37,8 +39,8 @@ public FileProcessingIndexPageTests()
public void FileProcessingIndex_RendersCorrectly()
{
// Arrange
_mockMediator.Setup(x => x.Send(It.IsAny<GetFileImportLogsListQuery>(), default))
.ReturnsAsync(Result<List<FileImportLogModel>>.Success(new List<FileImportLogModel>()));
_mockMediator.Setup(x => x.Send(It.IsAny<Queries.GetFileImportLogsListQuery>(), default))
.ReturnsAsync(Result.Success(new List<FileImportLogModel>()));

// Act
var cut = RenderComponent<FileProcessingIndex>();
Expand All @@ -51,8 +53,8 @@ public void FileProcessingIndex_RendersCorrectly()
public void FileProcessingIndex_WithNoFiles_ShowsEmptyState()
{
// Arrange
_mockMediator.Setup(x => x.Send(It.IsAny<GetFileImportLogsListQuery>(), default))
.ReturnsAsync(Result<List<FileImportLogModel>>.Success(new List<FileImportLogModel>()));
_mockMediator.Setup(x => x.Send(It.IsAny<Queries.GetFileImportLogsListQuery>(), default))
.ReturnsAsync(Result.Success(new List<FileImportLogModel>()));

// Act
var cut = RenderComponent<FileProcessingIndex>();
Expand All @@ -66,8 +68,8 @@ public void FileProcessingIndex_WithNoFiles_ShowsEmptyState()
public void FileProcessingIndex_HasCorrectPageTitle()
{
// Arrange
_mockMediator.Setup(x => x.Send(It.IsAny<GetFileImportLogsListQuery>(), default))
.ReturnsAsync(Result<List<FileImportLogModel>>.Success(new List<FileImportLogModel>()));
_mockMediator.Setup(x => x.Send(It.IsAny<Queries.GetFileImportLogsListQuery>(), default))
.ReturnsAsync(Result.Success(new List<FileImportLogModel>()));

// Act
var cut = RenderComponent<FileProcessingIndex>();
Expand Down
30 changes: 25 additions & 5 deletions EstateManagementUI.BlazorServer.Tests/Pages/HomePageTests.cs
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,9 @@
using Moq;
using Shouldly;
using System.Security.Claims;
using EstateManagementUI.BusinessLogic.Client;
using EstateManagementUI.BusinessLogic.Requests;
using SimpleResults;

namespace EstateManagementUI.BlazorServer.Tests.Pages;

Expand Down Expand Up @@ -44,13 +47,21 @@ public HomePageTests()
public void Home_RendersCorrectly()
{
// Arrange
var claims = new[] { new Claim(ClaimTypes.Role, "Estate") };
var claims = new[] { new Claim(ClaimTypes.Role, "Estate"),
new Claim("estateId", Guid.NewGuid().ToString()),
new Claim("http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier", "EstateUser")
};
var identity = new ClaimsIdentity(claims, "Test");
var user = new ClaimsPrincipal(identity);
var authState = Task.FromResult(new AuthenticationState(user));

_mockAuthStateProvider.Setup(x => x.GetAuthenticationStateAsync()).Returns(authState);

this._mockMediator.Setup(m => m.Send(It.IsAny<Queries.GetComparisonDatesQuery>())).ReturnsAsync(Result.Success(StubTestData.GetMockComparisonDates()));
this._mockMediator.Setup(m => m.Send(It.IsAny<Queries.GetMerchantKpiQuery>())).ReturnsAsync(Result.Success(StubTestData.GetMockMerchantKpi()));
this._mockMediator.Setup(m => m.Send(It.IsAny<Queries.GetTodaysSalesQuery>())).ReturnsAsync(Result.Success(StubTestData.GetMockTodaysSales()));
this._mockMediator.Setup(m => m.Send(It.IsAny<Queries.GetTodaysFailedSalesQuery>())).ReturnsAsync(Result.Success(StubTestData.GetMockTodaysSales()));
this._mockMediator.Setup(m => m.Send(It.IsAny<Queries.GetMerchantsQuery>())).ReturnsAsync(Result.Success(StubTestData.GetMockMerchants()));

// Act
var cut = RenderComponent<Home>();

Expand All @@ -63,13 +74,22 @@ public void Home_RendersCorrectly()
public void Home_HasCorrectPageTitle()
{
// Arrange
var claims = new[] { new Claim(ClaimTypes.Role, "Estate") };
var claims = new[] { new Claim(ClaimTypes.Role, "Estate"),
new Claim("estateId", Guid.NewGuid().ToString()),
new Claim("http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier", "EstateUser")
};
var identity = new ClaimsIdentity(claims, "Test");
var user = new ClaimsPrincipal(identity);
var authState = Task.FromResult(new AuthenticationState(user));

_mockAuthStateProvider.Setup(x => x.GetAuthenticationStateAsync()).Returns(authState);

this._mockMediator.Setup(m => m.Send(It.IsAny<Queries.GetComparisonDatesQuery>())).ReturnsAsync(Result.Success( StubTestData.GetMockComparisonDates()));
this._mockMediator.Setup(m => m.Send(It.IsAny<Queries.GetMerchantKpiQuery>())).ReturnsAsync(Result.Success(StubTestData.GetMockMerchantKpi()));
this._mockMediator.Setup(m => m.Send(It.IsAny<Queries.GetTodaysSalesQuery>())).ReturnsAsync(Result.Success(StubTestData.GetMockTodaysSales()));
this._mockMediator.Setup(m => m.Send(It.IsAny<Queries.GetTodaysFailedSalesQuery>())).ReturnsAsync(Result.Success(StubTestData.GetMockTodaysSales()));
this._mockMediator.Setup(m => m.Send(It.IsAny<Queries.GetMerchantsQuery>())).ReturnsAsync(Result.Success(StubTestData.GetMockMerchants()));


// Act
var cut = RenderComponent<Home>();

Expand Down
Original file line number Diff line number Diff line change
@@ -1,13 +1,14 @@
using Bunit;
using EstateManagementUI.BlazorServer.Components.Permissions;
using EstateManagementUI.BlazorServer.Models;
using EstateManagementUI.BlazorServer.Permissions;
using EstateManagementUI.BusinessLogic.Models;
using EstateManagementUI.BusinessLogic.Requests;
using MediatR;
using Microsoft.AspNetCore.Components;
using Microsoft.Extensions.DependencyInjection;
using Moq;
using Shouldly;
using static EstateManagementUI.BlazorServer.Requests.Queries;
using SimpleResults;
using MerchantsIndex = EstateManagementUI.BlazorServer.Components.Pages.Merchants.Index;

namespace EstateManagementUI.BlazorServer.Tests.Pages.Merchants;
Expand Down Expand Up @@ -51,8 +52,8 @@ public void MerchantsIndex_InitialState_ShowsLoadingIndicator()
}
};

_mockMediator.Setup(x => x.Send(It.IsAny<GetMerchantsQuery>(), default))
.ReturnsAsync(Result<List<MerchantModel>>.Success(merchants));
_mockMediator.Setup(x => x.Send(It.IsAny<Queries.GetMerchantsQuery>(), default))
.ReturnsAsync(Result.Success(merchants));

// Act
var cut = RenderComponent<MerchantsIndex>();
Expand All @@ -66,8 +67,8 @@ public void MerchantsIndex_WithNoMerchants_ShowsEmptyState()
{
// Arrange
var emptyList = new List<MerchantModel>();
_mockMediator.Setup(x => x.Send(It.IsAny<GetMerchantsQuery>(), default))
.ReturnsAsync(Result<List<MerchantModel>>.Success(emptyList));
_mockMediator.Setup(x => x.Send(It.IsAny<Queries.GetMerchantsQuery>(), default))
.ReturnsAsync(Result.Success(emptyList));

// Act
var cut = RenderComponent<MerchantsIndex>();
Expand Down Expand Up @@ -103,8 +104,8 @@ public void MerchantsIndex_WithMerchants_DisplaysMerchantList()
}
};

_mockMediator.Setup(x => x.Send(It.IsAny<GetMerchantsQuery>(), default))
.ReturnsAsync(Result<List<MerchantModel>>.Success(merchants));
_mockMediator.Setup(x => x.Send(It.IsAny<Queries.GetMerchantsQuery>(), default))
.ReturnsAsync(Result.Success(merchants));

// Act
var cut = RenderComponent<MerchantsIndex>();
Expand Down Expand Up @@ -141,8 +142,8 @@ public void MerchantsIndex_WithMerchants_DisplaysSummaryCards()
}
};

_mockMediator.Setup(x => x.Send(It.IsAny<GetMerchantsQuery>(), default))
.ReturnsAsync(Result<List<MerchantModel>>.Success(merchants));
_mockMediator.Setup(x => x.Send(It.IsAny<Queries.GetMerchantsQuery>(), default))
.ReturnsAsync(Result.Success(merchants));

// Act
var cut = RenderComponent<MerchantsIndex>();
Expand All @@ -158,8 +159,8 @@ public void MerchantsIndex_WithMerchants_DisplaysSummaryCards()
public void MerchantsIndex_HasCorrectPageTitle()
{
// Arrange
_mockMediator.Setup(x => x.Send(It.IsAny<GetMerchantsQuery>(), default))
.ReturnsAsync(Result<List<MerchantModel>>.Success(new List<MerchantModel>()));
_mockMediator.Setup(x => x.Send(It.IsAny<Queries.GetMerchantsQuery>(), default))
.ReturnsAsync(Result.Success(new List<MerchantModel>()));

// Act
var cut = RenderComponent<MerchantsIndex>();
Expand Down
Loading
Loading