This commit is contained in:
2024-12-03 17:12:18 +08:00
parent 95925cc855
commit f2a470c59d
62 changed files with 1332 additions and 477 deletions

View File

@@ -1,10 +1,14 @@
project(test-container)
add_executable(${PROJECT_NAME}-string test-lt-string.c)
target_link_libraries(${PROJECT_NAME}-string latch)
if(UNIX)
add_test(${PROJECT_NAME}-string ${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}-string)
elseif(WIN32)
add_test(${PROJECT_NAME}-string ${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}-string.exe)
endif()
add_executable(
${PROJECT_NAME}_string
test_sring.cpp
)
target_link_libraries(
${PROJECT_NAME}_string
latch
gtest::gtest
)
gtest_discover_tests(${PROJECT_NAME}_string)

View File

@@ -1,31 +0,0 @@
#include "latch/container/lt-string.h"
#include <stdio.h>
int main(int argc, char *argv[]){
printf("LT_String 创建测试\n");
LT_String *str = lt_string_new("Hello, world!");
printf("字符串内容: %s\n", str->data);
printf("字符串长度: %ld\n", str->length);
printf("LT_String cut测试 start=0,end=11,step=1\n");
LT_String *str2 = lt_string_cut(str, 0, 11, 1);
printf("字符串内容: %s\n", str2->data);
printf("字符串长度: %ld\n", str2->length);
str2->close(str2);
printf("LT_String cut测试-反转cut start=0,end=11,step=-1\n");
LT_String *str3 = lt_string_cut(str, 0, 11, -1);
printf("字符串内容: %s\n", str3->data);
printf("字符串长度: %ld\n", str3->length);
str3->close(str3);
printf("LT_String 测试反转\n");
LT_String *str4 = lt_string_reverse(str);
printf("字符串内容: %s\n", str4->data);
printf("字符串长度: %ld\n", str4->length);
str4->close(str4);
str->close(str);
return 0;
}

View File

@@ -0,0 +1,47 @@
#include "latch/container/lt-string.h"
#include "gtest/gtest.h"
TEST(TestString, StringNew) {
lt_string_t *str = lt_string_new("Hello World");
EXPECT_STREQ(str->data, "Hello World");
lt_string_close(str);
}
TEST(TestString, StringReverse) {
lt_string_t *str = lt_string_new("Hello World");
EXPECT_STREQ(str->data, "Hello World");
lt_string_t *str_r = lt_string_reverse(str);
EXPECT_STREQ(str_r->data, "dlroW olleH");
lt_string_close(str);
lt_string_close(str_r);
}
TEST(TestString, StringCut) {
lt_string_t *str = lt_string_new("Hello World");
EXPECT_STREQ(str->data, "Hello World");
EXPECT_EQ(str->length, 11);
lt_string_t *str_c = lt_string_cut(str, 0, 5, 1);
EXPECT_STREQ(str_c->data, "Hello");
EXPECT_EQ(str_c->length, 5);
lt_string_t *str_c1 = lt_string_cut(str, 0, 5, -1);
EXPECT_STREQ(str_c1->data, "dlroW");
EXPECT_EQ(str_c1->length, 5);
lt_string_t *str_c2 = lt_string_cut(str, 0, 5, 2);
EXPECT_STREQ(str_c2->data, "Hlo");
EXPECT_EQ(str_c2->length, 3);
lt_string_t *str_c3 = lt_string_cut(str, 0, 5, -2);
EXPECT_STREQ(str_c3->data, "drW");
EXPECT_EQ(str_c3->length, 3);
lt_string_close(str);
lt_string_close(str_c);
lt_string_close(str_c1);
lt_string_close(str_c2);
lt_string_close(str_c3);
}