Index: core/src/fxcrt/fx_basic_wstring_unittest.cpp |
diff --git a/core/src/fxcrt/fx_basic_wstring_unittest.cpp b/core/src/fxcrt/fx_basic_wstring_unittest.cpp |
index c6e5c2f3d0b790aebb145a2df4e26dbe3fa9d7ce..64b906517a7ce8153a9a532a213efd16899ca41d 100644 |
--- a/core/src/fxcrt/fx_basic_wstring_unittest.cpp |
+++ b/core/src/fxcrt/fx_basic_wstring_unittest.cpp |
@@ -27,3 +27,42 @@ TEST(fxcrt, WideStringUTF16LE_Encode) { |
<< " for case number " << i; |
} |
} |
+ |
+TEST(fxcrt, WideStringCOperatorSubscript) { |
+ // CFX_WideStringC includes the NUL terminator for non-empty strings. |
+ CFX_WideStringC abc(L"abc"); |
+ EXPECT_EQ('a', abc[0]); |
Lei Zhang
2015/04/21 22:07:56
I'm surprised this compiles given that operator[]
Tom Sepez
2015/04/22 17:06:45
Done.
|
+ EXPECT_EQ('b', abc[1]); |
+ EXPECT_EQ('c', abc[2]); |
+ EXPECT_EQ(0, abc[3]); |
+} |
+ |
+TEST(fxcrt, WideStringCOperatorLT) { |
+ CFX_WideStringC empty; |
+ CFX_WideStringC a(L"a"); |
+ CFX_WideStringC abc(L"\x0110qq"); // Comes before despite endianness. |
+ CFX_WideStringC def(L"\x1001qq"); // Comes after despite endianness. |
+ |
+ EXPECT_FALSE(empty < empty); |
+ EXPECT_FALSE(a < a); |
+ EXPECT_FALSE(abc < abc); |
+ EXPECT_FALSE(def < def); |
+ |
+ EXPECT_TRUE(empty < a); |
+ EXPECT_FALSE(a < empty); |
+ |
+ EXPECT_TRUE(empty < abc); |
+ EXPECT_FALSE(abc < empty); |
+ |
+ EXPECT_TRUE(empty < def); |
+ EXPECT_FALSE(def < empty); |
+ |
+ EXPECT_TRUE(a < abc); |
+ EXPECT_FALSE(abc < a); |
+ |
+ EXPECT_TRUE(a < def); |
+ EXPECT_FALSE(def < a); |
+ |
+ EXPECT_TRUE(abc < def); |
+ EXPECT_FALSE(def < abc); |
+} |