summaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorClement Sibille <clements+git@lisible.xyz>2024-05-19 23:33:44 +0900
committerClement Sibille <clements+git@lisible.xyz>2024-05-19 23:33:44 +0900
commit399be44fbc3767e7c1ff505119f9e07ee25b1078 (patch)
treeff51f3967754aa91577292ead342e8c9348f2c7c /tests
parent5a26e1f481fe85f08093a414e27c1056b85c6715 (diff)
Add String_eq and update the String API
Diffstat (limited to 'tests')
-rw-r--r--tests/string.c29
1 files changed, 24 insertions, 5 deletions
diff --git a/tests/string.c b/tests/string.c
index e3d68f4..6b4d411 100644
--- a/tests/string.c
+++ b/tests/string.c
@@ -2,13 +2,32 @@
#include "test.h"
#include <lisiblestd/string.h>
-void t_String_from_str(void) {
- String string;
- String_from_str(&system_allocator, &string, "Some string");
- T_ASSERT(strncmp(string.value, "Some string", 11));
+void t_String_new(void) {
+ String string = String_new(&system_allocator, "Some string");
+ T_ASSERT(strncmp(string.value, "Some string", 11) == 0);
T_ASSERT_EQ(string.length, 11);
+ String_destroy(&system_allocator, &string);
+}
+
+void t_String_eq(void) {
+ String first_string = String_new(&system_allocator, "abc");
+ String second_string = String_new(&system_allocator, "abc");
+ String third_string = String_new(&system_allocator, "bcd");
+ T_ASSERT(String_eq(&first_string, &second_string));
+ T_ASSERT(!String_eq(&second_string, &third_string));
+ T_ASSERT(!String_eq(&second_string, NULL));
+ T_ASSERT(!String_eq(NULL, NULL));
+ String_destroy(&system_allocator, &first_string);
+ String_destroy(&system_allocator, &second_string);
+ String_destroy(&system_allocator, &third_string);
+}
+void t_String_view(void) {
+ String string = String_new(&system_allocator, "abc");
+ StringView string_view = String_view(&string);
+ T_ASSERT_EQ(string_view.length, 3);
+ T_ASSERT(strncmp(string_view.value, "abc", 3) == 0);
String_destroy(&system_allocator, &string);
}
-TEST_SUITE(TEST(t_String_from_str))
+TEST_SUITE(TEST(t_String_new), TEST(t_String_eq), TEST(t_String_view))
Go back to lisible.xyz