using MediatR; using Microsoft.Extensions.DependencyInjection; using ReC.Application.EndpointParams.Commands; namespace ReC.Tests.Application.EndpointParams; [TestFixture] public class EndpointParamsProcedureTests : RecApplicationTestBase { private (ISender Sender, IServiceScope Scope) CreateScopedSender() { var scope = ServiceProvider.CreateScope(); var sender = scope.ServiceProvider.GetRequiredService(); return (sender, scope); } [Test] public async Task InsertEndpointParamsProcedure_runs_via_mediator() { var procedure = new InsertEndpointParamsProcedure { Active = true, Description = "param", GroupId = 1, Sequence = 1, Key = "k", Value = "v" }; var (sender, scope) = CreateScopedSender(); using var _ = scope; var result = await sender.Send(procedure); Assert.That(result, Is.GreaterThan(0)); } [Test] public async Task UpdateEndpointParamsProcedure_runs_via_mediator() { var procedure = new UpdateEndpointParamsProcedure { Data = { Active = false, Description = "param-update", GroupId = 2, Sequence = 2, Key = "k2", Value = "v2" }, Id = 25 }; 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 DeleteEndpointParamsProcedure_runs_via_mediator() { var procedure = new DeleteEndpointParamsProcedure { Start = 5, End = 6, Force = true }; var (sender, scope) = CreateScopedSender(); using var _ = scope; var result = await sender.Send(procedure); Assert.That(result, Is.Not.EqualTo(default(int))); } }