dedent/tests/main.rs

101 lines
1.3 KiB
Rust
Raw Normal View History

2025-11-20 01:27:59 -08:00
use dedent::dedent;
#[test]
fn dedent_typical() {
assert_eq!(
dedent! {"
foo
bar
baz
"},
"foo\n\n bar\nbaz"
);
}
#[test]
fn dedent_typical_parens() {
assert_eq!(
dedent!(
"
foo
bar
baz
"
),
"foo\n bar\n\nbaz"
);
}
#[test]
fn dedent_whitespace() {
assert_eq!(
dedent! {"
"},
""
);
}
#[test]
fn dedent_trim_trailing() {
assert_eq!(
dedent! {"
trailing:
"},
"trailing:"
);
}
#[test]
fn dedent_flat() {
assert_eq!(dedent! {"foo"}, "foo");
}
#[test]
fn dedent_raw_no_padding() {
assert_eq!(
dedent! {r"
fo\o
bar
"},
"fo\\o\n bar"
);
}
#[test]
fn dedent_raw_with_padding() {
assert_eq!(
dedent! {r###"
fo\o
#bar
"###},
"fo\\o\n #bar"
);
}
#[test]
fn dedent_c_string() {
assert_eq!(
dedent! {c"
foo
bar
"},
c"foo\n bar"
);
}
#[test]
fn dedent_raw_c_string() {
assert_eq!(
dedent! {cr##"
f\oo
b#ar
"##},
c"f\\oo\n b#ar"
);
}