Files
ReC/tests/ReC.Tests/Application/Procedures/ProcedureExecutionTests.cs
TekH 302fee4908 Refactor tests to send commands directly to mediator
Refactored test code to remove ToObjectProcedure usage and send command objects directly to the mediator. Updated update procedure tests to use Data and Id properties. Replaced custom Execute*Procedure methods with sender.Send. Cleaned up unused usings. These changes improve consistency and reflect updates to command structures.
2026-03-24 11:29:15 +01:00

59 lines
1.8 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.Profile.Commands;
using ReC.Tests.Application;
namespace ReC.Tests.Application.Procedures;
[TestFixture]
public class ProcedureExecutionTests : RecApplicationTestBase
{
private (ISender Sender, IServiceScope Scope) CreateScopedSender()
{
var scope = ServiceProvider.CreateScope();
var sender = scope.ServiceProvider.GetRequiredService<ISender>();
return (sender, scope);
}
[Test]
public async Task ExecuteInsertProcedure_runs_with_addedWho()
{
var procedure = new InsertProfileProcedure { Name = "name" };
var (sender, scope) = CreateScopedSender();
using var _ = scope;
var result = await sender.Send(procedure);
Assert.That(result, Is.GreaterThan(0));
}
[Test]
public async Task ExecuteUpdateProcedure_runs_with_changedWho()
{
var procedure = new UpdateProfileProcedure { Data = { Name = "updated" }, Id = 123 };
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 ExecuteDeleteProcedure_runs()
{
var procedure = new DeleteProfileProcedure { Start = 1, End = 2, Force = true };
var (sender, scope) = CreateScopedSender();
using var _ = scope;
var result = await sender.Send(procedure);
Assert.That(result, Is.Not.EqualTo(default(int)));
}
}