fix: protect publish path from mysql exhaustion

This commit is contained in:
richjohnrambo
2026-09-27 18:35:54 +08:00
parent 36eb76a5e3
commit 3bb6774786
17 changed files with 308 additions and 21 deletions
+15
View File
@@ -33,3 +33,18 @@ func TestYouthModeNightQuietRestrictsCalls(t *testing.T) {
t.Fatalf("daytime call should be allowed: %#v", decision)
}
}
func TestYouthModeOrdinaryMessageDoesNotReadDatabase(t *testing.T) {
oldSecurity := store.Security
security := &testSecurityStore{err: types.ErrInternal}
store.Security = security
defer func() { store.Security = oldSecurity }()
decision := imYouthModePolicyDecision(7, types.Uid(42), imYouthActionMessage, time.Now())
if !decision.Allowed {
t.Fatalf("ordinary message should continue to moderation: %#v", decision)
}
if security.youthModeReads != 0 {
t.Fatalf("ordinary message read youth settings %d times", security.youthModeReads)
}
}