test(bff): /beheer/catalogi/zaaktypen behind beheerder authorization (refs #130)
This commit is contained in:
@@ -23,6 +23,7 @@ internal sealed class BffFactory : WebApplicationFactory<Program>
|
||||
|
||||
public FakeDomainClient Domain { get; } = new();
|
||||
public FakeProjectionClient Projection { get; } = new();
|
||||
public FakeAclClient Acl { get; } = new();
|
||||
|
||||
private static void ValidateWithTestKey(IServiceCollection services, string scheme) =>
|
||||
services.Configure<JwtBearerOptions>(scheme, options =>
|
||||
@@ -54,11 +55,13 @@ internal sealed class BffFactory : WebApplicationFactory<Program>
|
||||
builder.UseSetting("Keycloak:MedewerkerAuthority", "https://keycloak.invalid/realms/medewerker");
|
||||
builder.UseSetting("Downstream:Domain:BaseUrl", "http://domain.invalid/");
|
||||
builder.UseSetting("Downstream:Projection:BaseUrl", "http://projection.invalid/");
|
||||
builder.UseSetting("Downstream:Acl:BaseUrl", "http://acl.invalid/");
|
||||
|
||||
builder.ConfigureTestServices(services =>
|
||||
{
|
||||
services.AddSingleton<IDomainClient>(Domain);
|
||||
services.AddSingleton<IProjectionClient>(Projection);
|
||||
services.AddSingleton<IAclClient>(Acl);
|
||||
|
||||
// Both realms validate locally against the test key (no live Keycloak). The medewerker
|
||||
// scheme keeps its OnTokenValidated role-lifting from Program.cs — only the validation
|
||||
@@ -138,3 +141,12 @@ internal sealed class FakeProjectionClient : IProjectionClient
|
||||
public Task<IReadOnlyList<ProjectionEntry>> GetRegisterAsync(CancellationToken ct = default)
|
||||
=> Task.FromResult<IReadOnlyList<ProjectionEntry>>(Entries);
|
||||
}
|
||||
|
||||
/// <summary>Serves a configurable set of catalogus zaaktypen (beheer viewer, S-15a).</summary>
|
||||
internal sealed class FakeAclClient : IAclClient
|
||||
{
|
||||
public List<BeheerZaaktype> Zaaktypen { get; } = [];
|
||||
|
||||
public Task<IReadOnlyList<BeheerZaaktype>> GetZaaktypenAsync(CancellationToken ct = default)
|
||||
=> Task.FromResult<IReadOnlyList<BeheerZaaktype>>(Zaaktypen);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user