chore(secrets): wire cache invalidation on rotate/delete, drop dead RevealEnabled, remove scaffold leftovers

This commit is contained in:
Joseph Doherty
2026-07-15 17:39:55 -04:00
parent 294f53b49a
commit e20812cbae
10 changed files with 74 additions and 29 deletions
@@ -57,6 +57,33 @@ public sealed class AddZbSecretsTests
}
}
[Fact]
public void CacheInvalidator_And_Resolver_AreSameSingletonInstance()
{
string dbPath = NewTempDbPath();
string envVar = $"ZB_TEST_KEY_{Guid.NewGuid():N}";
Environment.SetEnvironmentVariable(envVar, Base64Key32());
try
{
var services = new ServiceCollection();
services.AddZbSecrets(BuildConfig(dbPath, envVar), "Secrets");
using ServiceProvider provider = services.BuildServiceProvider();
var resolver = provider.GetService<ISecretResolver>();
var invalidator = provider.GetService<ISecretCacheInvalidator>();
Assert.NotNull(resolver);
Assert.NotNull(invalidator);
// Same object: an invalidation MUST hit the exact cache the resolver reads from.
Assert.Same(resolver, invalidator);
}
finally
{
Environment.SetEnvironmentVariable(envVar, null);
File.Delete(dbPath);
}
}
[Fact]
public async Task Resolver_Works_EndToEnd_ThroughDi()
{