use super::{display_width, fit_width};
#[test]
fn wide_glyphs_measure_two_columns() {
assert_eq!(display_width("abc"), 3);
assert_eq!(display_width("\u{65E5}\u{672C}"), 4);
assert_eq!(display_width("a\u{65E5}b"), 4);
}
#[test]
fn combining_marks_measure_nothing() {
assert_eq!(display_width("e\u{0301}"), 1);
}
#[test]
fn fitting_keeps_short_text_untouched() {
assert_eq!(fit_width("hi", 4), "hi");
assert_eq!(fit_width("", 0), "");
}
#[test]
fn fitting_truncates_with_an_ellipsis() {
assert_eq!(fit_width("hello", 4), "hel\u{2026}");
assert_eq!(fit_width("hello", 1), "\u{2026}");
}
#[test]
fn fitting_never_splits_a_wide_glyph() {
assert_eq!(fit_width("\u{65E5}\u{672C}\u{8A9E}", 4), "\u{65E5}\u{2026}");
}