Bind the NRC hoofdObject, recognise a zaken/status/create notification, and key the projection on the zaak (hoofdObject) so the status updates the existing INGEDIEND row to INGESCHREVEN — without reading OpenZaak (§8.1). Retain the ZGW resource in the log (new column + migration) so a rebuild reproduces the approved status. Updates the acceptance fakes for the new IAclClient/IZaakGateway members. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
28 lines
1.1 KiB
C#
28 lines
1.1 KiB
C#
using Acl.Application;
|
|
|
|
namespace Acceptance.Support;
|
|
|
|
/// <summary>An in-memory stand-in for the OpenZaak Zaken API. It captures the
|
|
/// fully default-filled <see cref="ZaakRequest"/> the ACL builds and returns a
|
|
/// fixed zaak URL, so the acceptance scenario can verify the use case without a
|
|
/// running OpenZaak (real-OpenZaak verification is a separate slice).</summary>
|
|
public sealed class InMemoryZaakGateway : IZaakGateway
|
|
{
|
|
public static readonly Uri CreatedZaakUrl = new("http://openzaak/zaken/api/v1/zaken/created-123");
|
|
|
|
public ZaakRequest? Captured { get; private set; }
|
|
public (Uri Zaak, Uri Zaaktype, DateOnly Datum)? Approved { get; private set; }
|
|
|
|
public Task<Uri> OpenZaakAsync(ZaakRequest request, CancellationToken ct = default)
|
|
{
|
|
Captured = request;
|
|
return Task.FromResult(CreatedZaakUrl);
|
|
}
|
|
|
|
public Task SetZaakToEindstatusAsync(Uri zaakUrl, Uri zaaktypeUrl, DateOnly datumStatusGezet, CancellationToken ct = default)
|
|
{
|
|
Approved = (zaakUrl, zaaktypeUrl, datumStatusGezet);
|
|
return Task.CompletedTask;
|
|
}
|
|
}
|