1use core::fmt;
8
9use super::FileTime;
10
11impl fmt::Display for FileTime {
12 fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
25 u64::from(*self).fmt(f)
26 }
27}
28
29#[cfg(test)]
30mod tests {
31 #[cfg(feature = "std")]
32 use proptest::prop_assert_eq;
33 #[cfg(feature = "std")]
34 use test_strategy::proptest;
35
36 use super::*;
37
38 #[test]
39 fn debug() {
40 assert_eq!(format!("{:?}", FileTime::NT_TIME_EPOCH), "FileTime(0)");
41 assert_eq!(
42 format!("{:?}", FileTime::UNIX_EPOCH),
43 "FileTime(116444736000000000)"
44 );
45 assert_eq!(
46 format!("{:?}", FileTime::SIGNED_MAX),
47 "FileTime(9223372036854775807)"
48 );
49 assert_eq!(
50 format!("{:?}", FileTime::MAX),
51 "FileTime(18446744073709551615)"
52 );
53 }
54
55 #[test]
56 fn display() {
57 assert_eq!(format!("{}", FileTime::NT_TIME_EPOCH), "0");
58 assert_eq!(format!("{}", FileTime::UNIX_EPOCH), "116444736000000000");
59 assert_eq!(format!("{}", FileTime::SIGNED_MAX), "9223372036854775807");
60 assert_eq!(format!("{}", FileTime::MAX), "18446744073709551615");
61 }
62
63 #[cfg(feature = "std")]
64 #[proptest]
65 fn display_roundtrip(ft: FileTime) {
66 prop_assert_eq!(format!("{ft}"), format!("{}", ft.to_raw()));
67 }
68}