From 282a42160b62205a3ef5ee455b53a11a9effdf72 Mon Sep 17 00:00:00 2001 From: emalfroy Date: Fri, 13 Dec 2024 10:40:55 +0100 Subject: [PATCH] fix: or-2334 use type instead of anonymous type for historiek --- .../BeheerVerenigingHistoriekProjector.cs | 14 +--- .../Mappers/HistoriekGebeurtenisMapper.cs | 14 ++++ .../Returns_HistoriekResponse.cs | 83 +++++++++++++++++++ 3 files changed, 100 insertions(+), 11 deletions(-) create mode 100644 test/AssociationRegistry.Test.E2E/When_Markeer_Als_Dubbel_Van/Beheer/HistoriekAuthentiekeVereniging/Returns_HistoriekResponse.cs diff --git a/src/AssociationRegistry.Admin.ProjectionHost/Projections/Historiek/BeheerVerenigingHistoriekProjector.cs b/src/AssociationRegistry.Admin.ProjectionHost/Projections/Historiek/BeheerVerenigingHistoriekProjector.cs index da17459e0..f99e84148 100644 --- a/src/AssociationRegistry.Admin.ProjectionHost/Projections/Historiek/BeheerVerenigingHistoriekProjector.cs +++ b/src/AssociationRegistry.Admin.ProjectionHost/Projections/Historiek/BeheerVerenigingHistoriekProjector.cs @@ -656,11 +656,7 @@ public static void Apply(IEvent @event, Be { AddHistoriekEntry( @event, - new - { - VCode = @event.Data.VCode, - VCodeAuthentiekeVereniging = @event.Data.VCodeAuthentiekeVereniging, - }, + @event.Data, document, $"Vereniging werd gemarkeerd als dubbel van {@event.Data.VCodeAuthentiekeVereniging}." ); @@ -670,13 +666,9 @@ public static void Apply(IEvent @event, B { AddHistoriekEntry( @event, - new - { - VCode = @event.Data.VCode, - VCodeDubbeleVereniging = @event.Data.VCodeDubbeleVereniging, - }, + @event.Data, document, - $"Vereniging {@event.Data.VCodeDubbeleVereniging} werd toegevoegd als dubbel." + $"Vereniging aanvaardde dubbele vereniging {@event.Data.VCodeDubbeleVereniging}." ); } diff --git a/test/AssociationRegistry.Test.E2E/Framework/Mappers/HistoriekGebeurtenisMapper.cs b/test/AssociationRegistry.Test.E2E/Framework/Mappers/HistoriekGebeurtenisMapper.cs index d8f911963..29743f086 100644 --- a/test/AssociationRegistry.Test.E2E/Framework/Mappers/HistoriekGebeurtenisMapper.cs +++ b/test/AssociationRegistry.Test.E2E/Framework/Mappers/HistoriekGebeurtenisMapper.cs @@ -520,4 +520,18 @@ public static HistoriekGebeurtenisResponse LidmaatschapWerdGewijzigd(WijzigLidma Initiator = "OVO002949", Tijdstip = "2024-07-30T11:08:05Z", }; + + public static HistoriekGebeurtenisResponse? VerenigingAanvaarddeDubbeleVereniging(MarkeerAlsDubbelVanRequest request, string vCode) + => new() + { + Beschrijving = $"Vereniging aanvaardde dubbele vereniging {vCode}.", + Gebeurtenis = nameof(Events.VerenigingAanvaarddeDubbeleVereniging), + Data = new + { + VCode = request.IsDubbelVan, + VCodeDubbeleVereniging = vCode, + }, + Initiator = "OVO002949", + Tijdstip = "2024-07-30T11:08:05Z", + }; } diff --git a/test/AssociationRegistry.Test.E2E/When_Markeer_Als_Dubbel_Van/Beheer/HistoriekAuthentiekeVereniging/Returns_HistoriekResponse.cs b/test/AssociationRegistry.Test.E2E/When_Markeer_Als_Dubbel_Van/Beheer/HistoriekAuthentiekeVereniging/Returns_HistoriekResponse.cs new file mode 100644 index 000000000..fd4cff80c --- /dev/null +++ b/test/AssociationRegistry.Test.E2E/When_Markeer_Als_Dubbel_Van/Beheer/HistoriekAuthentiekeVereniging/Returns_HistoriekResponse.cs @@ -0,0 +1,83 @@ +namespace AssociationRegistry.Test.E2E.When_Markeer_Als_Dubbel_Van.Beheer.HistoriekAuthentiekeVereniging; + +using AssociationRegistry.Admin.Api.Verenigingen.Dubbels.FeitelijkeVereniging.MarkeerAlsDubbelVan.RequestModels; +using AssociationRegistry.Admin.Api.Verenigingen.Historiek.ResponseModels; +using AssociationRegistry.Events; +using AssociationRegistry.Test.E2E.Framework.AlbaHost; +using AssociationRegistry.Test.E2E.Framework.ApiSetup; +using AssociationRegistry.Test.E2E.Framework.Comparison; +using AssociationRegistry.Test.E2E.Framework.Mappers; +using AssociationRegistry.Test.E2E.Framework.TestClasses; +using KellermanSoftware.CompareNetObjects; +using Xunit; +using Xunit.Abstractions; + +[Collection(FullBlownApiCollection.Name)] +public class Returns_Historiek : End2EndTest +{ + private readonly ITestOutputHelper _helper; + + public override Func GetResponse + => setup => setup.AdminApiHost.GetBeheerHistoriek(TestContext.Scenario.AndereFeitelijkeVerenigingWerdGeregistreerd.VCode); + + public Returns_Historiek(MarkeerAlsDubbelVanContext testContext, ITestOutputHelper helper) : base(testContext) + { + _helper = helper; + } + + [Fact] + public async Task With_VCode() + { + var tryCounter = 0; + + while (tryCounter < 20) + { + ++tryCounter; + await Task.Delay(500); + + _helper.WriteLine($"Looking for CorresponderendeVCodes (try {tryCounter})..."); + if (Response.VCode is not null) + { + _helper.WriteLine("Found it!"); + break; + } + + _helper.WriteLine("Did not find any CorresponderendeVCodes."); + } + + Response.VCode.ShouldCompare(TestContext.Scenario.AndereFeitelijkeVerenigingWerdGeregistreerd.VCode); + } + + [Fact] + public void With_Context() + { + Response.Context.ShouldCompare("http://127.0.0.1:11003/v1/contexten/beheer/historiek-vereniging-context.json"); + } + + [Fact] + public async Task With_All_Gebeurtenissen() + { + var gebeurtenis = + Response.Gebeurtenissen.SingleOrDefault(x => x.Gebeurtenis == nameof(VerenigingAanvaarddeDubbeleVereniging)); + + var tryCounter = 0; + + while (tryCounter < 20) + { + ++tryCounter; + await Task.Delay(500); + + _helper.WriteLine($"Looking for CorresponderendeVCodes (try {tryCounter})..."); + if (gebeurtenis is not null) + { + _helper.WriteLine("Found it!"); + break; + } + + _helper.WriteLine("Did not find any CorresponderendeVCodes."); + } + + gebeurtenis.ShouldCompare(HistoriekGebeurtenisMapper.VerenigingAanvaarddeDubbeleVereniging(TestContext.Request, TestContext.VCode), + compareConfig: HistoriekComparisonConfig.Instance); + } +}