106 lines
2.3 KiB
Rust
Raw Permalink Normal View History

2025-06-27 02:33:44 +01:00
use nu_test_support::{nu, pipeline};
#[test]
fn formatter_not_valid() {
let actual = nu!(r#"
date now | format date '%N'
"#);
assert!(actual.err.contains("invalid format"));
}
#[test]
fn fails_without_input() {
let actual = nu!(r#"
format date "%c"
"#);
assert!(actual.err.contains("Pipeline empty"));
}
#[test]
fn locale_format_respect_different_locale() {
let actual = nu!(
locale: "en_US",
pipeline(
r#"
"2021-10-22 20:00:12 +01:00" | format date "%c"
"#
)
);
assert!(actual.out.contains("Fri 22 Oct 2021 08:00:12 PM +01:00"));
let actual = nu!(
locale: "en_GB",
pipeline(
r#"
"2021-10-22 20:00:12 +01:00" | format date "%c"
"#
)
);
assert!(actual.out.contains("Fri 22 Oct 2021 20:00:12 +01:00"));
let actual = nu!(
locale: "de_DE",
pipeline(
r#"
"2021-10-22 20:00:12 +01:00" | format date "%c"
"#
)
);
assert!(actual.out.contains("Fr 22 Okt 2021 20:00:12 +01:00"));
let actual = nu!(
locale: "zh_CN",
pipeline(
r#"
"2021-10-22 20:00:12 +01:00" | format date "%c"
"#
)
);
assert!(actual.out.contains("2021年10月22日 星期五 20时00分12秒"));
let actual = nu!(
locale: "ja_JP",
pipeline(
r#"
"2021-10-22 20:00:12 +01:00" | format date "%c"
"#
)
);
assert!(actual.out.contains("2021年10月22日 20時00分12秒"));
let actual = nu!(
locale: "fr_FR",
pipeline(
r#"
"2021-10-22 20:00:12 +01:00" | format date "%c"
"#
)
);
assert!(actual.out.contains("ven. 22 oct. 2021 20:00:12 +01:00"));
}
#[test]
fn locale_with_different_format_specifiers() {
let actual = nu!(
locale: "en_US",
pipeline(
r#"
"Thu, 26 Oct 2023 22:52:14 +0200" | format date "%x %X"
"#
)
);
assert!(actual.out.contains("10/26/2023 10:52:14 PM"));
let actual = nu!(
locale: "nl_NL",
pipeline(
r#"
"Thu, 26 Oct 2023 22:52:14 +0200" | format date "%x %X"
"#
)
);
assert!(actual.out.contains("26-10-23 22:52:14"));
}