aboutsummaryrefslogtreecommitdiff
path: root/src/util/formatting.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/util/formatting.rs')
-rw-r--r--src/util/formatting.rs50
1 files changed, 0 insertions, 50 deletions
diff --git a/src/util/formatting.rs b/src/util/formatting.rs
deleted file mode 100644
index c1b6257..0000000
--- a/src/util/formatting.rs
+++ /dev/null
@@ -1,50 +0,0 @@
-/// Truncates a string after a certain number of characters.
-/// Function always tries to truncate on a word boundary.
-/// Reimplemented from gonzobot.
-pub fn truncate(text: &str, len: usize) -> String {
- if text.len() <= len {
- return text.to_string();
- }
- format!(
- "{}…",
- text[..len]
- .rsplitn(2, " ")
- .collect::<Vec<&str>>()
- .last()
- .copied()
- .expect("This can never happen >inb4 it happens")
- )
-}
-
-#[cfg(test)]
-mod tests {
- use super::truncate;
-
- #[test]
- fn test_truncate_with_input_of_lesser_length_than_limit() {
- let input = "short text";
- let result = truncate(input, input.len() + 1);
- assert_eq!(input, result)
- }
-
- #[test]
- fn test_truncate_with_input_of_equal_length_as_limit() {
- let input = "short text";
- let result = truncate(input, input.len());
- assert_eq!(input, result)
- }
-
- #[test]
- fn test_truncate_with_input_of_greater_length_than_limit() {
- let input = "some longer text";
- let result = truncate(input, input.len() - 1);
- assert_eq!("some longer…", result)
- }
-
- #[test]
- fn test_truncate_with_input_of_greater_length_than_limit_oneword() {
- let input = "somelongertext";
- let result = truncate(input, input.len() - 1);
- assert_eq!("somelongertex…", result)
- }
-}