fix: number parsing for as,bs,it, update testdata

This commit is contained in:
ThetaDev 2024-01-24 12:48:13 +01:00
parent fd3e128f50
commit d413cad8bb
No known key found for this signature in database
GPG key ID: 649CA4EBDC338394
5 changed files with 79 additions and 74 deletions

View file

@ -391,24 +391,25 @@ pub(crate) fn entry(lang: Language) -> Entry {
},
comma_decimal: false,
number_tokens: ::phf::Map {
key: 12913932095322966823,
key: 10121458955350035957,
disps: &[
(0, 7),
(9, 8),
(0, 0),
(1, 0),
(3, 6),
(1, 4),
],
entries: &[
("\u{9be}", 3),
("\u{9be}\u{9be}ৰট\u{9be}", 3),
("নিয\u{9c1}তট\u{9be}", 6),
("\u{9be}\u{9be}", 3),
("\u{9be}", 5),
("কোঃ", 5),
("\u{9be}খট\u{9be}", 5),
("কোঃট\u{9be}", 9),
("নিঃট\u{9be}", 6),
("নিয\u{9c1}", 6),
("নিঃ", 6),
("\u{9be}", 5),
("নিঃট\u{9be}", 6),
("\u{9be}\u{9be}ৰট\u{9be}", 3),
("কোঃট\u{9be}", 9),
("নিঃ", 6),
("নিয\u{9c1}তট\u{9be}", 6),
("\u{9be}", 5),
("নিয\u{9c1}", 6),
("\u{9be}\u{9be}", 3),
],
},
number_nd_tokens: ::phf::Map {
@ -890,14 +891,15 @@ pub(crate) fn entry(lang: Language) -> Entry {
},
comma_decimal: true,
number_tokens: ::phf::Map {
key: 12913932095322966823,
key: 10121458955350035957,
disps: &[
(2, 0),
],
entries: &[
("hilj", 3),
("mlr", 9),
("mil", 6),
("mlr", 9),
("hilj", 3),
("mlrd", 9),
],
},
number_nd_tokens: ::phf::Map {
@ -3094,8 +3096,9 @@ pub(crate) fn entry(lang: Language) -> Entry {
(0, 0),
],
entries: &[
("mrd", 9),
("mio", 6),
("mln", 6),
("mrd", 9),
],
},
number_nd_tokens: ::phf::Map {

View file

@ -643,6 +643,9 @@ pub(crate) mod tests {
#[case(Language::As, "১ জন গ্ৰাহক", 1)]
#[case(Language::Ru, "Зрителей, ожидающих начала трансляции: 6", 6)]
#[case(Language::Si, "වාදන මි4.6ක්", 4_600_000)]
#[case(Language::As, "3.7 শঃ কোঃ বাৰ প্লে’ কৰা হৈছে", 370_000)]
#[case(Language::Bs, "3,3 mlrd. pregleda", 3_300_000_000)]
#[case(Language::It, "3,73 Mio di iscritti", 3_730_000)]
fn t_parse_large_numstr(#[case] lang: Language, #[case] string: &str, #[case] expect: u64) {
let res = parse_large_numstr::<u64>(string, lang).unwrap();
assert_eq!(res, expect);