APT::StringView charp2String{charp};
EXPECT_EQ(0, strString.length());
- constexpr APT::StringView charaString{""};
- static_assert( 0 == charaString.length(), "chara right size");
+ const APT::StringView charaString{""};
+ EXPECT_EQ(0, charaString.length());
EXPECT_TRUE(APT::StringView("") == "");
EXPECT_FALSE(APT::StringView("") != "");
TEST(StringViewTest,FooString)
{
- constexpr APT::StringView defString("foo", 3);
+ constexpr APT::StringView defString("fooGARBAGE", 3);
static_assert( 3 == defString.length(), "def right size");
- EXPECT_EQ(defString.to_string(), defString.data());
+ EXPECT_EQ(0, defString.to_string().compare(0, defString.length(), defString.data(), 3));
APT::StringView strString{std::string{"foo"}};
EXPECT_EQ(3, strString.length());
- EXPECT_EQ(strString.to_string(), strString.data());
+ EXPECT_EQ(0, strString.to_string().compare(0, strString.length(), strString.data(), 3));
- constexpr char const * const charp = "foo";
+ constexpr char const * const charp = "fooGARBAGE";
constexpr APT::StringView charpString{charp, 3};
- static_assert( 3 == charpString.length(), "charp right size");
- EXPECT_EQ(charpString.to_string(), charpString.data());
+ EXPECT_EQ(3, charpString.length());
+ EXPECT_EQ(0, charpString.to_string().compare(0, charpString.length(), charpString.data(), 3));
- APT::StringView charp2String{charp};
+ char * charp2 = strdup("foo");
+ APT::StringView charp2String{charp2};
EXPECT_EQ(3, charp2String.length());
- EXPECT_EQ(charp2String.to_string(), charp2String.data());
+ EXPECT_EQ(0, charp2String.to_string().compare(0, charp2String.length(), charp2String.data(), 3));
+ free(charp2);
- constexpr APT::StringView charaString{"foo"};
- static_assert( 3 == charaString.length(), "chara right size");
- EXPECT_EQ(charaString.to_string(), charaString.data());
+ const APT::StringView charaString{"foo"};
+ EXPECT_EQ(3, charaString.length());
+ EXPECT_EQ(0, charaString.to_string().compare(0, charaString.length(), charaString.data(), 3));
EXPECT_TRUE(APT::StringView("foo") == "foo");
EXPECT_FALSE(APT::StringView("foo") != "foo");
TEST(StringViewTest,SubStr)
{
- constexpr APT::StringView defString("Hello World!");
+ const APT::StringView defString("Hello World!");
EXPECT_EQ(defString.to_string().substr(6), defString.substr(6).to_string());
EXPECT_EQ(defString.to_string().substr(0,5), defString.substr(0,5).to_string());
EXPECT_EQ(defString.to_string().substr(6,5), defString.substr(6,5).to_string());
TEST(StringViewTest,Find)
{
- constexpr APT::StringView defString("Hello World!");
+ const APT::StringView defString("Hello World!");
EXPECT_EQ(defString.to_string().find('l'), defString.find('l'));
EXPECT_EQ(defString.to_string().find('X'), defString.find('X'));
EXPECT_EQ(defString.to_string().find('e',3), defString.find('e',3));
TEST(StringViewTest,RFind)
{
- constexpr APT::StringView defString("Hello World!");
+ const APT::StringView defString("Hello World!");
EXPECT_EQ(defString.to_string().rfind('l'), defString.rfind('l'));
EXPECT_EQ(defString.to_string().rfind('X'), defString.rfind('X'));
EXPECT_EQ(defString.to_string().rfind('e',3), defString.rfind('e',3));