@@ -133,3 +133,56 @@ TEST_CASE(base10_units)
133133 EXPECT_EQ (human_readable_size (1100 , AK::HumanReadableBasedOn::Base10), " 1.1 KB" );
134134 EXPECT_EQ (human_readable_size (1000000 , AK::HumanReadableBasedOn::Base10), " 1.0 MB" );
135135}
136+
137+ TEST_CASE (human_readable_short_time)
138+ {
139+ EXPECT_EQ (human_readable_short_time (AK::Duration::from_nanoseconds (0 )), " 0ns" );
140+ EXPECT_EQ (human_readable_short_time (AK::Duration::from_nanoseconds (1 )), " 1ns" );
141+ EXPECT_EQ (human_readable_short_time (AK::Duration::from_nanoseconds (99 )), " 99ns" );
142+ EXPECT_EQ (human_readable_short_time (AK::Duration::from_nanoseconds (999 )), " 999ns" );
143+ EXPECT_EQ (human_readable_short_time (AK::Duration::from_nanoseconds (1009 )), " 1.009µs" );
144+ EXPECT_EQ (human_readable_short_time (AK::Duration::from_nanoseconds (1099 )), " 1.099µs" );
145+ EXPECT_EQ (human_readable_short_time (AK::Duration::from_nanoseconds (1999 )), " 1.999µs" );
146+
147+ EXPECT_EQ (human_readable_short_time (AK::Duration::from_microseconds (1 )), " 1µs" );
148+ EXPECT_EQ (human_readable_short_time (AK::Duration::from_microseconds (999 )), " 999µs" );
149+ EXPECT_EQ (human_readable_short_time (AK::Duration::from_microseconds (1009 )), " 1.009ms" );
150+ EXPECT_EQ (human_readable_short_time (AK::Duration::from_microseconds (1099 )), " 1.099ms" );
151+ EXPECT_EQ (human_readable_short_time (AK::Duration::from_microseconds (1999 )), " 1.999ms" );
152+
153+ EXPECT_EQ (human_readable_short_time (AK::Duration::from_milliseconds (1 )), " 1ms" );
154+ EXPECT_EQ (human_readable_short_time (AK::Duration::from_milliseconds (99 )), " 99ms" );
155+ EXPECT_EQ (human_readable_short_time (AK::Duration::from_milliseconds (999 )), " 999ms" );
156+ EXPECT_EQ (human_readable_short_time (AK::Duration::from_milliseconds (1009 )), " 1.009s" );
157+ EXPECT_EQ (human_readable_short_time (AK::Duration::from_milliseconds (1099 )), " 1.099s" );
158+ EXPECT_EQ (human_readable_short_time (AK::Duration::from_milliseconds (1999 )), " 1.999s" );
159+
160+ EXPECT_EQ (human_readable_short_time (AK::Duration::from_seconds (1 )), " 1s" );
161+ EXPECT_EQ (human_readable_short_time (AK::Duration::from_milliseconds (1001 )), " 1.001s" );
162+ EXPECT_EQ (human_readable_short_time (AK::Duration::from_milliseconds (1999 )), " 1.999s" );
163+ EXPECT_EQ (human_readable_short_time (AK::Duration::from_seconds (59 )), " 59s" );
164+ EXPECT_EQ (human_readable_short_time (AK::Duration::from_milliseconds (59999 )), " 59.999s" );
165+
166+ EXPECT_EQ (human_readable_short_time (AK::Duration::from_seconds (60 )), " 1m" );
167+ EXPECT_EQ (human_readable_short_time (AK::Duration::from_milliseconds (60001 )), " 1m 0.001s" );
168+ EXPECT_EQ (human_readable_short_time (AK::Duration::from_seconds (61 )), " 1m 1s" );
169+ EXPECT_EQ (human_readable_short_time (AK::Duration::from_milliseconds (61001 )), " 1m 1.001s" );
170+ EXPECT_EQ (human_readable_short_time (AK::Duration::from_microseconds (61001001 )), " 1m 1.001s" );
171+ EXPECT_EQ (human_readable_short_time (AK::Duration::from_seconds (3599 )), " 59m 59s" );
172+
173+ EXPECT_EQ (human_readable_short_time (AK::Duration::from_seconds (3600 )), " 1h" );
174+ EXPECT_EQ (human_readable_short_time (AK::Duration::from_seconds (3601 )), " 1h 1s" );
175+ EXPECT_EQ (human_readable_short_time (AK::Duration::from_milliseconds (3600001 )), " 1h 0.001s" );
176+ EXPECT_EQ (human_readable_short_time (AK::Duration::from_microseconds (3601001001 )), " 1h 1.001s" );
177+ EXPECT_EQ (human_readable_short_time (AK::Duration::from_seconds (3661 )), " 1h 1m 1s" );
178+ EXPECT_EQ (human_readable_short_time (AK::Duration::from_seconds (3661 )), " 1h 1m 1s" );
179+ EXPECT_EQ (human_readable_short_time (AK::Duration::from_seconds (86399 )), " 23h 59m 59s" );
180+ EXPECT_EQ (human_readable_short_time (AK::Duration::from_milliseconds (86399001 )), " 23h 59m 59.001s" );
181+ EXPECT_EQ (human_readable_short_time (AK::Duration::from_milliseconds (86399999 )), " 23h 59m 59.999s" );
182+
183+ EXPECT_EQ (human_readable_short_time (AK::Duration::from_seconds (86400 )), " 1d" );
184+ EXPECT_EQ (human_readable_short_time (AK::Duration::from_seconds (86401 )), " 1d 1s" );
185+ EXPECT_EQ (human_readable_short_time (AK::Duration::from_seconds (86461 )), " 1d 1m 1s" );
186+ EXPECT_EQ (human_readable_short_time (AK::Duration::from_seconds (90061 )), " 1d 1h 1m 1s" );
187+ EXPECT_EQ (human_readable_short_time (AK::Duration::from_milliseconds (90061001 )), " 1d 1h 1m 1.001s" );
188+ }
0 commit comments