[agent/codex:gpt-5.4-mini] Read ~/spec/code/core/go/i18n/RFC.md fully. Find ONE feature... #90

Merged
Virgil merged 1 commit from agent/read---spec-code-core-go-i18n-rfc-md-ful into dev 2026-04-02 02:45:58 +00:00
2 changed files with 33 additions and 2 deletions

View file

@ -66,6 +66,11 @@ func OnMissingKey(h MissingKeyHandler) {
missingKeyHandler.Store(missingKeyHandlersState{handlers: []MissingKeyHandler{h}})
}
// ClearMissingKeyHandlers removes all registered missing-key handlers.
func ClearMissingKeyHandlers() {
missingKeyHandler.Store(missingKeyHandlersState{})
}
// AddMissingKeyHandler appends a missing-key handler without replacing any
// existing handlers.
func AddMissingKeyHandler(h MissingKeyHandler) {

View file

@ -279,14 +279,16 @@ func TestAddMissingKeyHandler_Good(t *testing.T) {
require.NoError(t, err)
prev := Default()
SetDefault(svc)
prevHandlers := missingKeyHandlers()
t.Cleanup(func() {
missingKeyHandler.Store(prevHandlers)
SetDefault(prev)
})
svc.SetMode(ModeCollect)
OnMissingKey(nil)
ClearMissingKeyHandlers()
t.Cleanup(func() {
OnMissingKey(nil)
ClearMissingKeyHandlers()
})
var first, second int
@ -303,6 +305,30 @@ func TestAddMissingKeyHandler_Good(t *testing.T) {
assert.Equal(t, 1, second)
}
func TestClearMissingKeyHandlers_Good(t *testing.T) {
svc, err := New()
require.NoError(t, err)
prev := Default()
SetDefault(svc)
prevHandlers := missingKeyHandlers()
t.Cleanup(func() {
missingKeyHandler.Store(prevHandlers)
SetDefault(prev)
})
svc.SetMode(ModeCollect)
var called int
AddMissingKeyHandler(func(MissingKey) {
called++
})
ClearMissingKeyHandlers()
_ = T("missing.after.clear")
assert.Equal(t, 0, called)
}
func TestOnMissingKey_Good_SubjectArgs(t *testing.T) {
svc, err := New()
require.NoError(t, err)