refactor(i18n): remove legacy i18n.{format} shortcuts
Use i18n.numeric.* namespace consistently: - i18n.numeric.number - i18n.numeric.decimal - i18n.numeric.percent - i18n.numeric.bytes - i18n.numeric.ordinal - i18n.numeric.ago Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
parent
8f977ed635
commit
f10a2b4bdb
3 changed files with 14 additions and 36 deletions
|
|
@ -146,28 +146,28 @@ func TestI18nNumberNamespace(t *testing.T) {
|
||||||
require.NoError(t, err)
|
require.NoError(t, err)
|
||||||
SetDefault(svc)
|
SetDefault(svc)
|
||||||
|
|
||||||
t.Run("i18n.number", func(t *testing.T) {
|
t.Run("i18n.numeric.number", func(t *testing.T) {
|
||||||
result := svc.T("i18n.number", 1234567)
|
result := svc.T("i18n.numeric.number", 1234567)
|
||||||
assert.Equal(t, "1,234,567", result)
|
assert.Equal(t, "1,234,567", result)
|
||||||
})
|
})
|
||||||
|
|
||||||
t.Run("i18n.decimal", func(t *testing.T) {
|
t.Run("i18n.numeric.decimal", func(t *testing.T) {
|
||||||
result := svc.T("i18n.decimal", 1234.56)
|
result := svc.T("i18n.numeric.decimal", 1234.56)
|
||||||
assert.Equal(t, "1,234.56", result)
|
assert.Equal(t, "1,234.56", result)
|
||||||
})
|
})
|
||||||
|
|
||||||
t.Run("i18n.percent", func(t *testing.T) {
|
t.Run("i18n.numeric.percent", func(t *testing.T) {
|
||||||
result := svc.T("i18n.percent", 0.85)
|
result := svc.T("i18n.numeric.percent", 0.85)
|
||||||
assert.Equal(t, "85%", result)
|
assert.Equal(t, "85%", result)
|
||||||
})
|
})
|
||||||
|
|
||||||
t.Run("i18n.bytes", func(t *testing.T) {
|
t.Run("i18n.numeric.bytes", func(t *testing.T) {
|
||||||
result := svc.T("i18n.bytes", 1572864)
|
result := svc.T("i18n.numeric.bytes", 1572864)
|
||||||
assert.Equal(t, "1.5 MB", result)
|
assert.Equal(t, "1.5 MB", result)
|
||||||
})
|
})
|
||||||
|
|
||||||
t.Run("i18n.ordinal", func(t *testing.T) {
|
t.Run("i18n.numeric.ordinal", func(t *testing.T) {
|
||||||
result := svc.T("i18n.ordinal", 3)
|
result := svc.T("i18n.numeric.ordinal", 3)
|
||||||
assert.Equal(t, "3rd", result)
|
assert.Equal(t, "3rd", result)
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -337,28 +337,6 @@ func (s *Service) handleI18nNamespace(key string, args []any) string {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Legacy i18n.{format} shortcuts (kept for compatibility)
|
|
||||||
if len(args) > 0 {
|
|
||||||
switch key {
|
|
||||||
case "i18n.number":
|
|
||||||
return FormatNumber(toInt64(args[0]))
|
|
||||||
case "i18n.decimal":
|
|
||||||
return FormatDecimal(toFloat64(args[0]))
|
|
||||||
case "i18n.percent":
|
|
||||||
return FormatPercent(toFloat64(args[0]))
|
|
||||||
case "i18n.bytes":
|
|
||||||
return FormatBytes(toInt64(args[0]))
|
|
||||||
case "i18n.ordinal":
|
|
||||||
return FormatOrdinal(toInt(args[0]))
|
|
||||||
case "i18n.ago":
|
|
||||||
if len(args) >= 2 {
|
|
||||||
if unit, ok := args[1].(string); ok {
|
|
||||||
return FormatAgo(toInt(args[0]), unit)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return ""
|
return ""
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -73,13 +73,13 @@ func TestI18nAgoNamespace(t *testing.T) {
|
||||||
require.NoError(t, err)
|
require.NoError(t, err)
|
||||||
SetDefault(svc)
|
SetDefault(svc)
|
||||||
|
|
||||||
t.Run("i18n.ago pattern", func(t *testing.T) {
|
t.Run("i18n.numeric.ago pattern", func(t *testing.T) {
|
||||||
result := T("i18n.ago", 5, "minute")
|
result := T("i18n.numeric.ago", 5, "minute")
|
||||||
assert.Equal(t, "5 minutes ago", result)
|
assert.Equal(t, "5 minutes ago", result)
|
||||||
})
|
})
|
||||||
|
|
||||||
t.Run("i18n.ago singular", func(t *testing.T) {
|
t.Run("i18n.numeric.ago singular", func(t *testing.T) {
|
||||||
result := T("i18n.ago", 1, "hour")
|
result := T("i18n.numeric.ago", 1, "hour")
|
||||||
assert.Equal(t, "1 hour ago", result)
|
assert.Equal(t, "1 hour ago", result)
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue