Clang: Return ClangString instead of Utf8String

Utf8String is allocating memory but for many compares it is not needed.
In an inner loop this can be expensive.

Change-Id: I6320823ab7e086008447eea255e52859a7faaad7
Reviewed-by: Ivan Donchevskii <ivan.donchevskii@qt.io>
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
This commit is contained in:
Marco Bubke
2017-06-13 16:04:45 +02:00
parent 02194a5542
commit ae485ac551
5 changed files with 58 additions and 22 deletions

View File

@@ -167,4 +167,31 @@ TEST(ClangString, EqualCStringAndClangStringPointer)
ASSERT_TRUE(textIsEqual);
}
TEST(ClangString, NullStringHasNoContent)
{
ClangString text(CXString{nullptr, 0});
bool hasContent = text.hasContent();
ASSERT_FALSE(hasContent);
}
TEST(ClangString, EmptyStringHasNoContent)
{
ClangString text(CXString{"", 0});
bool hasContent = text.hasContent();
ASSERT_FALSE(hasContent);
}
TEST(ClangString, StringHasNoContent)
{
ClangString text(CXString{"text", 0});
bool hasContent = text.hasContent();
ASSERT_TRUE(hasContent);
}
}