feat: add payment sdk and tenant secret foundation

This commit is contained in:
xiong
2026-07-26 19:28:04 +08:00
parent 28befc57be
commit 5503d7a644
17 changed files with 16330 additions and 1 deletions

View File

@@ -31,7 +31,7 @@ public sealed class PersistenceModelTests
.Select(entity => entity.GetTableName())
.ToHashSet(StringComparer.Ordinal);
Assert.Equal(126, tableNames.Count);
Assert.Equal(127, tableNames.Count);
Assert.Contains("tenants", tableNames);
Assert.Contains("tenant_settings", tableNames);
Assert.Contains("content_entries", tableNames);
@@ -66,6 +66,7 @@ public sealed class PersistenceModelTests
Assert.Contains("dashboard_daily_stats", tableNames);
Assert.Contains("revenue_daily_stats", tableNames);
Assert.Contains("tenant_auth_providers", tableNames);
Assert.Contains("tenant_secrets", tableNames);
Assert.Contains("sms_verification_codes", tableNames);
Assert.Contains("auth_login_events", tableNames);
Assert.Contains("auth_sessions", tableNames);
@@ -506,6 +507,7 @@ public sealed class PersistenceModelTests
[Theory]
[InlineData(typeof(TenantAuthProvider), nameof(TenantAuthProvider.ConfigPublic), "'{}'::jsonb")]
[InlineData(typeof(TenantSecret), nameof(TenantSecret.SecretPayload), "'{}'::jsonb")]
[InlineData(typeof(SmsVerificationCode), nameof(SmsVerificationCode.Metadata), "'{}'::jsonb")]
[InlineData(typeof(AuthLoginEvent), nameof(AuthLoginEvent.Metadata), "'{}'::jsonb")]
[InlineData(typeof(AuthSession), nameof(AuthSession.Metadata), "'{}'::jsonb")]
@@ -538,6 +540,14 @@ public sealed class PersistenceModelTests
AssertHasUniqueIndex<TenantAuthProvider>(
nameof(TenantAuthProvider.TenantId),
nameof(TenantAuthProvider.Provider));
AssertHasUniqueIndex<TenantSecret>(
nameof(TenantSecret.TenantId),
nameof(TenantSecret.SecretRef));
AssertHasUniqueIndex<TenantSecret>(
nameof(TenantSecret.TenantId),
nameof(TenantSecret.Purpose),
nameof(TenantSecret.Provider),
nameof(TenantSecret.SecretKey));
AssertHasUniqueIndex<TenantClassMember>(
nameof(TenantClassMember.TenantId),
nameof(TenantClassMember.ClassId),