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,7 +1,5 @@
project(test)
add_subdirectory(container)
add_subdirectory(io)
# add_subdirectory(io)

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);
}

View File

@@ -1,11 +0,0 @@
project(test-io)
add_executable(${PROJECT_NAME}-file test-lt-file.c)
target_link_libraries(${PROJECT_NAME}-file latch)
if(UNIX)
add_test(${PROJECT_NAME}-file ${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}-file)
elseif(WIN32)
add_test(${PROJECT_NAME}-file ${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}-file.exe)
endif()

View File

@@ -1,16 +0,0 @@
#include "latch/io/lt-file.h"
#include <stdio.h>
int main(int argc, char *argv[]){
LT_File* f = lt_file_open("test.txt", "w");
printf("LT_File size: %ld\n", sizeof(LT_File));
printf("File: %p\n", f);
printf("File name: %s\n", f->name->data);
printf("File path: %s\n", f->path->data);
printf("File size: %ld\n", f->size);
printf("file create time %ld\n", f->create_time);
printf("file modify time %ld\n", f->modify_time);
f->close(f);
return 0;
}