diff options
Diffstat (limited to 'core/src/fxcrt')
-rw-r--r-- | core/src/fxcrt/fx_basic_bstring_unittest.cpp | 76 | ||||
-rw-r--r-- | core/src/fxcrt/fx_basic_wstring_unittest.cpp | 76 |
2 files changed, 152 insertions, 0 deletions
diff --git a/core/src/fxcrt/fx_basic_bstring_unittest.cpp b/core/src/fxcrt/fx_basic_bstring_unittest.cpp index 3779397891..d8d880f8b1 100644 --- a/core/src/fxcrt/fx_basic_bstring_unittest.cpp +++ b/core/src/fxcrt/fx_basic_bstring_unittest.cpp @@ -603,3 +603,79 @@ TEST(fxcrt, ByteStringCOperatorNE) { EXPECT_TRUE(c_string2 != byte_string_c); EXPECT_TRUE(c_string3 != byte_string_c); } + +TEST(fxcrt, ByteStringFormatWidth) { + { + CFX_ByteString str; + str.Format("%5d", 1); + EXPECT_EQ(" 1", str); + } + + { + CFX_ByteString str; + str.Format("%d", 1); + EXPECT_EQ("1", str); + } + + { + CFX_ByteString str; + str.Format("%*d", 5, 1); + EXPECT_EQ(" 1", str); + } + + { + CFX_ByteString str; + str.Format("%-1d", 1); + EXPECT_EQ("1", str); + } + + { + CFX_ByteString str; + str.Format("%0d", 1); + EXPECT_EQ("1", str); + } + + { + CFX_ByteString str; + str.Format("%1048576d", 1); + EXPECT_EQ("Bad width", str); + } +} + +TEST(fxcrt, ByteStringFormatPrecision) { + { + CFX_ByteString str; + str.Format("%.2f", 1.12345); + EXPECT_EQ("1.12", str); + } + + { + CFX_ByteString str; + str.Format("%.*f", 3, 1.12345); + EXPECT_EQ("1.123", str); + } + + { + CFX_ByteString str; + str.Format("%f", 1.12345); + EXPECT_EQ("1.123450", str); + } + + { + CFX_ByteString str; + str.Format("%-1f", 1.12345); + EXPECT_EQ("1.123450", str); + } + + { + CFX_ByteString str; + str.Format("%0f", 1.12345); + EXPECT_EQ("1.123450", str); + } + + { + CFX_ByteString str; + str.Format("%.1048576f", 1.2); + EXPECT_EQ("Bad precision", str); + } +} diff --git a/core/src/fxcrt/fx_basic_wstring_unittest.cpp b/core/src/fxcrt/fx_basic_wstring_unittest.cpp index b75a6fbd39..5141cdd61f 100644 --- a/core/src/fxcrt/fx_basic_wstring_unittest.cpp +++ b/core/src/fxcrt/fx_basic_wstring_unittest.cpp @@ -440,3 +440,79 @@ TEST(fxcrt, WideStringCOperatorNE) { EXPECT_TRUE(c_string2 != wide_string_c); EXPECT_TRUE(c_string3 != wide_string_c); } + +TEST(fxcrt, WideStringFormatWidth) { + { + CFX_WideString str; + str.Format(L"%5d", 1); + EXPECT_EQ(L" 1", str); + } + + { + CFX_WideString str; + str.Format(L"%d", 1); + EXPECT_EQ(L"1", str); + } + + { + CFX_WideString str; + str.Format(L"%*d", 5, 1); + EXPECT_EQ(L" 1", str); + } + + { + CFX_WideString str; + str.Format(L"%-1d", 1); + EXPECT_EQ(L"1", str); + } + + { + CFX_WideString str; + str.Format(L"%0d", 1); + EXPECT_EQ(L"1", str); + } + + { + CFX_WideString str; + str.Format(L"%1048576d", 1); + EXPECT_EQ(L"Bad width", str); + } +} + +TEST(fxcrt, WideStringFormatPrecision) { + { + CFX_WideString str; + str.Format(L"%.2f", 1.12345); + EXPECT_EQ(L"1.12", str); + } + + { + CFX_WideString str; + str.Format(L"%.*f", 3, 1.12345); + EXPECT_EQ(L"1.123", str); + } + + { + CFX_WideString str; + str.Format(L"%f", 1.12345); + EXPECT_EQ(L"1.123450", str); + } + + { + CFX_WideString str; + str.Format(L"%-1f", 1.12345); + EXPECT_EQ(L"1.123450", str); + } + + { + CFX_WideString str; + str.Format(L"%0f", 1.12345); + EXPECT_EQ(L"1.123450", str); + } + + { + CFX_WideString str; + str.Format(L"%.1048576f", 1.2); + EXPECT_EQ(L"Bad precision", str); + } +} |