Move the German texts above the tests for clippy

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
AuthorKonata <konata@posteo.jp>
Date
Commit59799f40824925f0b5e68e7c7823898cf2aebad2
Parentbdf547d
1 file changed, 33 insertions(+), 33 deletions(-)
▾Mweb/src/i18n.rs
@@ -61,39 +61,6 @@ fn fill(de: &str, values: &[&str]) -> String {
out
}
#[cfg(test)]
mod tests {
use super::*;
#[test]
fn keys_with_values_match() {
assert_eq!(matches("{} points.", "12 points."), Some(vec!["12"]));
assert_eq!(
matches(
"Theme: {}. Click to change.",
"Theme: dark. Click to change."
),
Some(vec!["dark"])
);
assert_eq!(matches("{} points.", "12 points!"), None);
assert_eq!(matches("Log out", "Log out"), Some(vec![]));
assert_eq!(fill("{1}, dann {0}", &["a", "b"]), "b, dann a");
assert_eq!(fill("{} Punkte", &["3"]), "3 Punkte");
}
#[test]
fn german_texts_keep_every_value() {
for (en, de) in DE {
let values = en.matches("{}").count();
let used = de.matches("{}").count()
+ (0..values)
.filter(|i| de.contains(&format!("{{{i}}}")))
.count();
assert_eq!(values, used, "{en}");
}
}
}
/// English key, German text.
const DE: &[(&str, &str)] = &[
("Theme: light", "Design: hell"),
@@ -590,3 +557,36 @@ const DE: &[(&str, &str)] = &[
"{} teilt die Spur seit {}.",
),
];
#[cfg(test)]
mod tests {
use super::*;
#[test]
fn keys_with_values_match() {
assert_eq!(matches("{} points.", "12 points."), Some(vec!["12"]));
assert_eq!(
matches(
"Theme: {}. Click to change.",
"Theme: dark. Click to change."
),
Some(vec!["dark"])
);
assert_eq!(matches("{} points.", "12 points!"), None);
assert_eq!(matches("Log out", "Log out"), Some(vec![]));
assert_eq!(fill("{1}, dann {0}", &["a", "b"]), "b, dann a");
assert_eq!(fill("{} Punkte", &["3"]), "3 Punkte");
}
#[test]
fn german_texts_keep_every_value() {
for (en, de) in DE {
let values = en.matches("{}").count();
let used = de.matches("{}").count()
+ (0..values)
.filter(|i| de.contains(&format!("{{{i}}}")))
.count();
assert_eq!(values, used, "{en}");
}
}
}