Files
ReC/tests/ReC.Tests/Application/Profile/ProfileProcedureTests.cs
TekH 99269a51c4 Refactor tests and introduce UpdateProfileDto
Refactored `ProfileProcedureTests` to use `UpdateProfileDto` for the `Data` property in `UpdateProfileCommand`, improving code clarity.

Updated `ProfileQueryTests` to replace `FakeProfileId` retrieval with `TryResolveProfileIdAsync` and added a conditional check to ignore the test if no valid profile ID is available, enhancing test robustness and flexibility.
2026-05-21 12:52:48 +02:00

60 lines
1.9 KiB
C#

using System.Threading.Tasks;
using MediatR;
using Microsoft.Extensions.DependencyInjection;
using NUnit.Framework;
using ReC.Application.Common.Procedures.DeleteProcedure;
using ReC.Application.Common.Procedures.InsertProcedure;
using ReC.Application.Common.Procedures.UpdateProcedure;
using ReC.Application.Common.Procedures.UpdateProcedure.Dto;
using ReC.Application.Profile.Commands;
using ReC.Tests.Application;
namespace ReC.Tests.Application.Profile;
[TestFixture]
public class ProfileProcedureTests : RecApplicationTestBase
{
private (ISender Sender, IServiceScope Scope) CreateScopedSender()
{
var scope = ServiceProvider.CreateScope();
var sender = scope.ServiceProvider.GetRequiredService<ISender>();
return (sender, scope);
}
[Test]
public async Task InsertProfileProcedure_runs_via_mediator()
{
var procedure = new InsertProfileCommand { Active = true, TypeId = 1, Name = "name", Mandantor = "man" };
var (sender, scope) = CreateScopedSender();
using var _ = scope;
var result = await sender.Send(procedure);
Assert.That(result, Is.GreaterThan(0));
}
[Test]
public async Task UpdateProfileProcedure_runs_via_mediator()
{
var procedure = new UpdateProfileCommand { Data = new UpdateProfileDto { Active = false, TypeId = 2, Name = "updated", Mandantor = "man2" }, Id = 45 };
var (sender, scope) = CreateScopedSender();
using var _ = scope;
var result = await sender.Send(procedure);
Assert.That(result, Is.Not.EqualTo(default(int)));
}
[Test]
public async Task DeleteProfileProcedure_runs_via_mediator()
{
var procedure = new DeleteProfileCommand { Start = 9, End = 10, Force = false };
var (sender, scope) = CreateScopedSender();
using var _ = scope;
var result = await sender.Send(procedure);
Assert.That(result, Is.Not.EqualTo(default(int)));
}
}