Say what the triple-letter test and the escape rule actually cover

This commit is contained in:
M
2026-08-28 13:15:43 +02:00
committed by lilleman-tw
parent 630f75f556
commit aec0497ce5
2 changed files with 3 additions and 3 deletions
+2 -2
View File
@@ -338,8 +338,8 @@ rejected at `New`.
`{a|b}` renders one of the sibling fields `a` or `b`, chosen at random; an arm `{a|b}` renders one of the sibling fields `a` or `b`, chosen at random; an arm
may be a `{..path}` reference too (`{name|..en_US.person}`). may be a `{..path}` reference too (`{name|..en_US.person}`).
Inside a `format`, `0 1 A a` are **always** character classes — so a fixed digit Inside a `format`, `0 1 A a` are **always** character classes — so a fixed `0`,
or letter must be escaped (`#1`, `#A`) or it becomes random. A format of `1`, `A` or `a` must be escaped (`#1`, `#A`) or it becomes random. A format of
`100 Main St` renders e.g. `506 Mdin St` — the `1`, `0`, `0` and `a` were random, `100 Main St` renders e.g. `506 Mdin St` — the `1`, `0`, `0` and `a` were random,
the `M`, `in` and `St` were not. A half-fixed string is the trap: `555-0000` the `M`, `in` and `St` were not. A half-fixed string is the trap: `555-0000`
keeps `555-` and randomises the last four digits. For a value with no keeps `555-` and randomises the last four digits. For a value with no
+1 -1
View File
@@ -128,7 +128,7 @@ func TestShippedMiscReferenceData(t *testing.T) {
} }
// TestSwedishPersonNamesHaveNoTripleLetter pins an orthographic rule the shape // TestSwedishPersonNamesHaveNoTripleLetter pins an orthographic rule the shape
// regexes miss: Swedish never triples a consonant. // regexes miss: no generated name repeats a character three times over.
func TestSwedishPersonNamesHaveNoTripleLetter(t *testing.T) { func TestSwedishPersonNamesHaveNoTripleLetter(t *testing.T) {
f := newFakes(t, "data/sv_SE", WithSeed(11)) f := newFakes(t, "data/sv_SE", WithSeed(11))
for _, path := range []string{"person", "person.last"} { for _, path := range []string{"person", "person.last"} {