36 lines
860 B
Go
36 lines
860 B
Go
package tagengine
|
||
|
||
import "testing"
|
||
|
||
func TestSanitize(t *testing.T) {
|
||
sanitize := newSanitizer()
|
||
|
||
type Case struct {
|
||
In string
|
||
Out string
|
||
}
|
||
|
||
cases := []Case{
|
||
{"", ""},
|
||
{"123abc", "123 abc"},
|
||
{"abc123", "abc 123"},
|
||
{"abc123xyz", "abc 123 xyz"},
|
||
{"1f2", "1 f 2"},
|
||
{" abc", "abc"},
|
||
{" ; KitKat/m&m's (bÖttle) @ ", "; kitkat / m & ms ( bottle ) @"},
|
||
{" Pott`s gin königs beer;SOJU ", "potts gin konigs beer ; soju"},
|
||
{"brot & brötchen", "brot & brotchen"},
|
||
{"Gâteau au fromage blanc, Stück", "gateau au fromage blanc , stuck"},
|
||
{"Maisels Weisse Weißbier 0,5l", "maisels weisse weissbier 0 , 5 l"},
|
||
{"Maisels´s Weisse - Hefeweizen 0,5l", "maiselss weisse - hefeweizen 0 , 5 l"},
|
||
{"€", "€"},
|
||
}
|
||
|
||
for _, tc := range cases {
|
||
out := sanitize(tc.In)
|
||
if out != tc.Out {
|
||
t.Fatalf("%v != %v", out, tc.Out)
|
||
}
|
||
}
|
||
}
|