Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/google/cpu_features.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorHenry Lee <lee0906@hotmail.com>2020-09-21 10:39:58 +0300
committerGitHub <noreply@github.com>2020-09-21 10:39:58 +0300
commit9e03e13ae7d51909ef885a6494b229a967d7c60c (patch)
tree1e65a2fe3ff90cbdf66c04244655fe7552ed8b3d /test
parent339bfd32be1285877ff517cba8b82ce72e946afd (diff)
Add more test cases for the string view (#119)
Diffstat (limited to 'test')
-rw-r--r--test/string_view_test.cc48
1 files changed, 48 insertions, 0 deletions
diff --git a/test/string_view_test.cc b/test/string_view_test.cc
index abfcc2c..0b6c7c2 100644
--- a/test/string_view_test.cc
+++ b/test/string_view_test.cc
@@ -38,6 +38,8 @@ TEST(StringViewTest, Build) {
TEST(StringViewTest, CpuFeatures_StringView_IndexOfChar) {
// Found.
EXPECT_EQ(CpuFeatures_StringView_IndexOfChar(str("test"), 'e'), 1);
+ EXPECT_EQ(CpuFeatures_StringView_IndexOfChar(str("test"), 't'), 0);
+ EXPECT_EQ(CpuFeatures_StringView_IndexOfChar(str("beef"), 'e'), 1);
// Not found.
EXPECT_EQ(CpuFeatures_StringView_IndexOfChar(str("test"), 'z'), -1);
// Empty.
@@ -47,6 +49,8 @@ TEST(StringViewTest, CpuFeatures_StringView_IndexOfChar) {
TEST(StringViewTest, CpuFeatures_StringView_IndexOf) {
// Found.
EXPECT_EQ(CpuFeatures_StringView_IndexOf(str("test"), str("es")), 1);
+ EXPECT_EQ(CpuFeatures_StringView_IndexOf(str("test"), str("test")), 0);
+ EXPECT_EQ(CpuFeatures_StringView_IndexOf(str("tesstest"), str("test")), 4);
// Not found.
EXPECT_EQ(CpuFeatures_StringView_IndexOf(str("test"), str("aa")), -1);
// Empty.
@@ -56,6 +60,9 @@ TEST(StringViewTest, CpuFeatures_StringView_IndexOf) {
TEST(StringViewTest, CpuFeatures_StringView_StartsWith) {
EXPECT_TRUE(CpuFeatures_StringView_StartsWith(str("test"), str("te")));
+ EXPECT_TRUE(CpuFeatures_StringView_StartsWith(str("test"), str("test")));
+ EXPECT_FALSE(CpuFeatures_StringView_StartsWith(str("test"), str("st")));
+ EXPECT_FALSE(CpuFeatures_StringView_StartsWith(str("test"), str("est")));
EXPECT_FALSE(CpuFeatures_StringView_StartsWith(str("test"), str("")));
EXPECT_FALSE(
CpuFeatures_StringView_StartsWith(str("test"), kEmptyStringView));
@@ -68,8 +75,11 @@ TEST(StringViewTest, CpuFeatures_StringView_IsEquals) {
CpuFeatures_StringView_IsEquals(kEmptyStringView, kEmptyStringView));
EXPECT_TRUE(CpuFeatures_StringView_IsEquals(kEmptyStringView, str("")));
EXPECT_TRUE(CpuFeatures_StringView_IsEquals(str(""), kEmptyStringView));
+ EXPECT_TRUE(CpuFeatures_StringView_IsEquals(str("test"), str("test")));
EXPECT_TRUE(CpuFeatures_StringView_IsEquals(str("a"), str("a")));
EXPECT_FALSE(CpuFeatures_StringView_IsEquals(str("a"), str("b")));
+ EXPECT_FALSE(CpuFeatures_StringView_IsEquals(str("aa"), str("a")));
+ EXPECT_FALSE(CpuFeatures_StringView_IsEquals(str("a"), str("aa")));
EXPECT_FALSE(CpuFeatures_StringView_IsEquals(str("a"), kEmptyStringView));
EXPECT_FALSE(CpuFeatures_StringView_IsEquals(kEmptyStringView, str("a")));
}
@@ -81,11 +91,49 @@ TEST(StringViewTest, CpuFeatures_StringView_PopFront) {
EXPECT_EQ(CpuFeatures_StringView_PopFront(str("test"), 100), str(""));
}
+TEST(StringViewTest, CpuFeatures_StringView_PopBack) {
+ EXPECT_EQ(CpuFeatures_StringView_PopBack(str("test"), 2), str("te"));
+ EXPECT_EQ(CpuFeatures_StringView_PopBack(str("test"), 0), str("test"));
+ EXPECT_EQ(CpuFeatures_StringView_PopBack(str("test"), 4), str(""));
+ EXPECT_EQ(CpuFeatures_StringView_PopBack(str("test"), 100), str(""));
+}
+
+TEST(StringViewTest, CpuFeatures_StringView_KeepFront) {
+ EXPECT_EQ(CpuFeatures_StringView_KeepFront(str("test"), 2), str("te"));
+ EXPECT_EQ(CpuFeatures_StringView_KeepFront(str("test"), 0), str(""));
+ EXPECT_EQ(CpuFeatures_StringView_KeepFront(str("test"), 4), str("test"));
+ EXPECT_EQ(CpuFeatures_StringView_KeepFront(str("test"), 6), str("test"));
+}
+
+TEST(StringViewTest, CpuFeatures_StringView_Front) {
+ EXPECT_EQ(CpuFeatures_StringView_Front(str("apple")), 'a');
+ EXPECT_EQ(CpuFeatures_StringView_Front(str("a")), 'a');
+}
+
+TEST(StringViewTest, CpuFeatures_StringView_Back) {
+ EXPECT_EQ(CpuFeatures_StringView_Back(str("apple")), 'e');
+ EXPECT_EQ(CpuFeatures_StringView_Back(str("a")), 'a');
+}
+
+TEST(StringViewTest, CpuFeatures_StringView_TrimWhitespace) {
+ EXPECT_EQ(CpuFeatures_StringView_TrimWhitespace(str(" first middle last ")),
+ str("first middle last"));
+ EXPECT_EQ(CpuFeatures_StringView_TrimWhitespace(str("first middle last ")),
+ str("first middle last"));
+ EXPECT_EQ(CpuFeatures_StringView_TrimWhitespace(str(" first middle last")),
+ str("first middle last"));
+ EXPECT_EQ(CpuFeatures_StringView_TrimWhitespace(str("first middle last")),
+ str("first middle last"));
+}
+
TEST(StringViewTest, CpuFeatures_StringView_ParsePositiveNumber) {
EXPECT_EQ(CpuFeatures_StringView_ParsePositiveNumber(str("42")), 42);
EXPECT_EQ(CpuFeatures_StringView_ParsePositiveNumber(str("0x2a")), 42);
EXPECT_EQ(CpuFeatures_StringView_ParsePositiveNumber(str("0x2A")), 42);
+ EXPECT_EQ(CpuFeatures_StringView_ParsePositiveNumber(str("0x2A2a")), 10794);
+ EXPECT_EQ(CpuFeatures_StringView_ParsePositiveNumber(str("0x2a2A")), 10794);
+ EXPECT_EQ(CpuFeatures_StringView_ParsePositiveNumber(str("-10")), -1);
EXPECT_EQ(CpuFeatures_StringView_ParsePositiveNumber(str("-0x2A")), -1);
EXPECT_EQ(CpuFeatures_StringView_ParsePositiveNumber(str("abc")), -1);
EXPECT_EQ(CpuFeatures_StringView_ParsePositiveNumber(str("")), -1);