@@ -799,6 +799,16 @@ TEST(format_test, zero_flag) {
799
799
format_error, " format specifier requires numeric argument" );
800
800
}
801
801
802
+ TEST (format_test, zero_flag_and_align) {
803
+ // If the 0 character and an align option both appear, the 0 character is ignored.
804
+ EXPECT_EQ (" 42 " , fmt::format (" {0:<05}" , 42 ));
805
+ EXPECT_EQ (" -42 " , fmt::format (" {0:<05}" , -42 ));
806
+ EXPECT_EQ (" 42 " , fmt::format (" {0:^05}" , 42 ));
807
+ EXPECT_EQ (" -42 " , fmt::format (" {0:^05}" , -42 ));
808
+ EXPECT_EQ (" 42" , fmt::format (" {0:>05}" , 42 ));
809
+ EXPECT_EQ (" -42" , fmt::format (" {0:>05}" , -42 ));
810
+ }
811
+
802
812
TEST (format_test, width) {
803
813
char format_str[buffer_size];
804
814
safe_sprintf (format_str, " {0:%u" , UINT_MAX);
@@ -833,7 +843,7 @@ TEST(format_test, width) {
833
843
EXPECT_EQ (fmt::format (" {:*^8}" , " 你好" ), " **你好**" );
834
844
EXPECT_EQ (fmt::format (" {:#6}" , 42.0 ), " 42.0" );
835
845
EXPECT_EQ (fmt::format (" {:6c}" , static_cast <int >(' x' )), " x " );
836
- EXPECT_EQ (fmt::format (" {:>06.0f}" , 0.00884311 ), " 000000 " );
846
+ EXPECT_EQ (fmt::format (" {:>06.0f}" , 0.00884311 ), " 0 " );
837
847
}
838
848
839
849
TEST (format_test, runtime_width) {
0 commit comments