2024-10-24 19:24:54 +01:00
|
|
|
#include <CuTest.h>
|
2025-08-09 19:57:42 +01:00
|
|
|
#include <blue/ds/string.h>
|
2024-10-24 19:24:54 +01:00
|
|
|
|
|
|
|
|
static void test_string_create(CuTest *tc)
|
|
|
|
|
{
|
|
|
|
|
b_string *str = b_string_create();
|
|
|
|
|
|
|
|
|
|
CuAssertPtrNotNull(tc, str);
|
|
|
|
|
CuAssertIntEquals(tc, 0, b_string_get_size(str, B_STRLEN_NORMAL));
|
|
|
|
|
CuAssertStrEquals(tc, "", b_string_ptr(str));
|
|
|
|
|
|
2025-10-19 21:02:52 +01:00
|
|
|
b_string_unref(str);
|
2024-10-24 19:24:54 +01:00
|
|
|
|
|
|
|
|
str = b_string_create_from_c('A', 8);
|
|
|
|
|
|
|
|
|
|
CuAssertPtrNotNull(tc, str);
|
|
|
|
|
CuAssertIntEquals(tc, 8, b_string_get_size(str, B_STRLEN_NORMAL));
|
|
|
|
|
CuAssertStrEquals(tc, "AAAAAAAA", b_string_ptr(str));
|
|
|
|
|
|
2025-10-19 21:02:52 +01:00
|
|
|
b_string_unref(str);
|
2024-10-24 19:24:54 +01:00
|
|
|
|
|
|
|
|
str = b_string_create_from_cstr("Hello, world!");
|
|
|
|
|
|
|
|
|
|
CuAssertPtrNotNull(tc, str);
|
|
|
|
|
CuAssertIntEquals(tc, 13, b_string_get_size(str, B_STRLEN_NORMAL));
|
|
|
|
|
CuAssertStrEquals(tc, "Hello, world!", b_string_ptr(str));
|
|
|
|
|
|
2025-10-19 21:02:52 +01:00
|
|
|
b_string_unref(str);
|
2024-10-24 19:24:54 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
static void test_string_length(CuTest *tc)
|
|
|
|
|
{
|
|
|
|
|
const char *cstr = "Hello, \033[91;1mworld!";
|
|
|
|
|
b_string *s = b_string_create_from_cstr(cstr);
|
|
|
|
|
|
|
|
|
|
CuAssertIntEquals(tc, 13, b_string_get_size(s, B_STRLEN_IGNORE_ESC));
|
|
|
|
|
CuAssertIntEquals(tc, 20, b_string_get_size(s, B_STRLEN_NORMAL));
|
|
|
|
|
|
2025-10-19 21:02:52 +01:00
|
|
|
b_string_unref(s);
|
2024-10-24 19:24:54 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
CuSuite *get_all_tests(void)
|
|
|
|
|
{
|
|
|
|
|
CuSuite *suite = CuSuiteNew();
|
|
|
|
|
|
|
|
|
|
SUITE_ADD_TEST(suite, test_string_create);
|
|
|
|
|
SUITE_ADD_TEST(suite, test_string_length);
|
|
|
|
|
|
|
|
|
|
return suite;
|
|
|
|
|
}
|