From 471b539bdbf658ff7924b7500f89fd237df8be9b Mon Sep 17 00:00:00 2001 From: bonmas14 Date: Sun, 3 Aug 2025 19:24:03 +0000 Subject: Reordering of stuff + plans --- tests/allocs.c | 39 -------------------- tests/cyn/log.c | 5 +++ tests/hello_world.c | 7 ---- tests/lists.c | 50 ------------------------- tests/memctl.c | 42 --------------------- tests/strings.c | 103 ---------------------------------------------------- tests/un/allocs.c | 39 ++++++++++++++++++++ tests/un/lists.c | 50 +++++++++++++++++++++++++ tests/un/memctl.c | 42 +++++++++++++++++++++ tests/un/strings.c | 103 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 10 files changed, 239 insertions(+), 241 deletions(-) delete mode 100644 tests/allocs.c create mode 100644 tests/cyn/log.c delete mode 100644 tests/hello_world.c delete mode 100644 tests/lists.c delete mode 100644 tests/memctl.c delete mode 100644 tests/strings.c create mode 100644 tests/un/allocs.c create mode 100644 tests/un/lists.c create mode 100644 tests/un/memctl.c create mode 100644 tests/un/strings.c (limited to 'tests') diff --git a/tests/allocs.c b/tests/allocs.c deleted file mode 100644 index 608d9f4..0000000 --- a/tests/allocs.c +++ /dev/null @@ -1,39 +0,0 @@ -#include - -int main(void) { - u64 i, size, *value; - size = UN_KB(1); - - { // std - Allocator std = un_allocator_get_standard(); - void *mem = un_memory_alloc(size, std); - - if (mem != NULL) { - un_memory_free(mem, std); - } - } - - { // temp - Allocator temp = un_allocator_get_temporary(); - - u8 *mem = (u8*) un_memory_alloc(size, temp); - assert(mem != NULL); - - for (i = 0; i < size; i++) { - mem[i] = 0xAB; - } - - un_memory_destroy(&temp); - } - - { // arena - Allocator arena = un_allocator_create_arena(size); - - for (i = 0; i < 1000; i++) { - value = un_memory_alloc(8, arena); - *value = 0xAC; - } - - un_memory_destroy(&arena); - } -} diff --git a/tests/cyn/log.c b/tests/cyn/log.c new file mode 100644 index 0000000..a6b0643 --- /dev/null +++ b/tests/cyn/log.c @@ -0,0 +1,5 @@ +#include + +int main(void) { + cyn_log_write(UN_LOG_INFO, UN_STR("Hello %u %d %s!"), (u64)100, (s64)-400, UN_STR("World")); +} diff --git a/tests/hello_world.c b/tests/hello_world.c deleted file mode 100644 index 78f6c29..0000000 --- a/tests/hello_world.c +++ /dev/null @@ -1,7 +0,0 @@ -#include - -int main(void) { - un_log_write(UN_LOG_INFO, un_string_from_cstring(UN_CSTR "Hello world!")); - - return 0; -} diff --git a/tests/lists.c b/tests/lists.c deleted file mode 100644 index a8627ac..0000000 --- a/tests/lists.c +++ /dev/null @@ -1,50 +0,0 @@ -#include - -int main(void) { - u64 i, v, times, size; - List list; - Allocator alloc; - - size = 16; - times = 4; - - { - alloc = un_allocator_get_standard(); - list = un_list_create(size, sizeof(u64), alloc); - - assert(un_list_get(&list, 0) == NULL); - - for (i = 0; i < size; i++) { - v = i * times; - - un_list_append(&list, (void *)(&v)); - } - - assert(*(u64*)un_list_get(&list, size - 1) == ((size - 1) * times)); - - for (i = 0; i < size; i++) { - v = *(u64*)un_list_get(&list, i); - assert(v == i * times); - } - - un_list_remove(&list, 0); - assert(*(u64*)un_list_get(&list, 0) == times); - - un_list_remove(&list, list.count); // will be ignored - un_list_remove(&list, list.count - 1); - - assert(list.count == (size - 2)); - - for (i = 0; i < size; i++) { - v = i * times; - un_list_append(&list, (void *)(&v)); - } - - assert(list.capacity == (size * 2)); - - un_list_destroy(&list); - - assert(list.data == NULL); - } -} - diff --git a/tests/memctl.c b/tests/memctl.c deleted file mode 100644 index 1614442..0000000 --- a/tests/memctl.c +++ /dev/null @@ -1,42 +0,0 @@ -#include - -#define SIZE UN_KB(1) - -u8 buffer_a[SIZE]; -u8 buffer_b[SIZE]; - -int main(void) { - u64 i; - for (i = 0; i < SIZE; i++) { - buffer_a[i] += i << 2; - } - - { - un_memory_copy(buffer_b, buffer_a, SIZE); - - for (i = 0; i < SIZE; i++) { - assert(buffer_b[i] == buffer_a[i]); - } - - assert(un_memory_compare(buffer_a, buffer_b, SIZE) == 0); - - buffer_b[SIZE - 10] = 0; - assert(un_memory_compare(buffer_a, buffer_b, SIZE) == 1); - } - - { - un_memory_move(buffer_a + SIZE / 4, buffer_a, SIZE / 2); - - assert(un_memory_compare(buffer_b, buffer_a + SIZE / 4, SIZE / 2) == 0); - } - - { - un_memory_set(buffer_a, 0, SIZE); - - for (i = 0; i < SIZE; i++) { - assert(buffer_a[i] == 0); - } - } - - return 0; -} diff --git a/tests/strings.c b/tests/strings.c deleted file mode 100644 index d49d525..0000000 --- a/tests/strings.c +++ /dev/null @@ -1,103 +0,0 @@ -#include - -int main(void) { - List splits; - Allocator talloc; - String result; - - assert(un_string_get_length(UN_CSTR "Hello") == 5); - assert(un_string_get_length(UN_CSTR "") == 0); - assert(un_string_get_length(UN_CSTR "What") == 4); - - talloc = un_allocator_get_temporary(); - - result = un_string_concat(UN_STR("Hello "), UN_STR("world!"), talloc); - assert(!un_string_compare(result, UN_STR("Hello world!"))); - - assert(!un_string_compare(un_string_copy(result, talloc), result)); - - splits = un_string_split(UN_STR("Eatin burger wit no honey mustard"), UN_STR(" "), talloc); - - assert(splits.count == 6); - - assert(!un_string_compare(*(String*)un_list_get(&splits, 0), UN_STR("Eatin"))); - assert(!un_string_compare(*(String*)un_list_get(&splits, 1), UN_STR("burger"))); - assert(!un_string_compare(*(String*)un_list_get(&splits, 2), UN_STR("wit"))); - assert(!un_string_compare(*(String*)un_list_get(&splits, 3), UN_STR("no"))); - assert(!un_string_compare(*(String*)un_list_get(&splits, 4), UN_STR("honey"))); - assert(!un_string_compare(*(String*)un_list_get(&splits, 5), UN_STR("mustard"))); - - un_list_destroy(&splits); - - splits = un_string_split(UN_STR("Eatin||burger||wit||no||honey||mustard"), UN_STR("||"), talloc); - - assert(splits.count == 6); - - assert(!un_string_compare(*(String*)un_list_get(&splits, 0), UN_STR("Eatin"))); - assert(!un_string_compare(*(String*)un_list_get(&splits, 1), UN_STR("burger"))); - assert(!un_string_compare(*(String*)un_list_get(&splits, 2), UN_STR("wit"))); - assert(!un_string_compare(*(String*)un_list_get(&splits, 3), UN_STR("no"))); - assert(!un_string_compare(*(String*)un_list_get(&splits, 4), UN_STR("honey"))); - assert(!un_string_compare(*(String*)un_list_get(&splits, 5), UN_STR("mustard"))); - - un_list_destroy(&splits); - - splits = un_string_split(UN_STR("Eatin||burger||wit||no||honey||mustard||a"), UN_STR("||"), talloc); - - assert(splits.count == 7); - - assert(!un_string_compare(*(String*)un_list_get(&splits, 0), UN_STR("Eatin"))); - assert(!un_string_compare(*(String*)un_list_get(&splits, 1), UN_STR("burger"))); - assert(!un_string_compare(*(String*)un_list_get(&splits, 2), UN_STR("wit"))); - assert(!un_string_compare(*(String*)un_list_get(&splits, 3), UN_STR("no"))); - assert(!un_string_compare(*(String*)un_list_get(&splits, 4), UN_STR("honey"))); - assert(!un_string_compare(*(String*)un_list_get(&splits, 5), UN_STR("mustard"))); - assert(!un_string_compare(*(String*)un_list_get(&splits, 6), UN_STR("a"))); - - un_list_destroy(&splits); - - splits = un_string_split(UN_STR("a||Eatin||burger||wit||no||honey||mustard||a"), UN_STR("||"), talloc); - - assert(splits.count == 8); - - assert(!un_string_compare(*(String*)un_list_get(&splits, 0), UN_STR("a"))); - assert(!un_string_compare(*(String*)un_list_get(&splits, 1), UN_STR("Eatin"))); - assert(!un_string_compare(*(String*)un_list_get(&splits, 2), UN_STR("burger"))); - assert(!un_string_compare(*(String*)un_list_get(&splits, 3), UN_STR("wit"))); - assert(!un_string_compare(*(String*)un_list_get(&splits, 4), UN_STR("no"))); - assert(!un_string_compare(*(String*)un_list_get(&splits, 5), UN_STR("honey"))); - assert(!un_string_compare(*(String*)un_list_get(&splits, 6), UN_STR("mustard"))); - assert(!un_string_compare(*(String*)un_list_get(&splits, 7), UN_STR("a"))); - - un_list_destroy(&splits); - - splits = un_string_split(UN_STR("||Eatin||burger||wit||no||honey||mustard||"), UN_STR("||"), talloc); - - assert(splits.count == 6); - - assert(!un_string_compare(*(String*)un_list_get(&splits, 0), UN_STR("Eatin"))); - assert(!un_string_compare(*(String*)un_list_get(&splits, 1), UN_STR("burger"))); - assert(!un_string_compare(*(String*)un_list_get(&splits, 2), UN_STR("wit"))); - assert(!un_string_compare(*(String*)un_list_get(&splits, 3), UN_STR("no"))); - assert(!un_string_compare(*(String*)un_list_get(&splits, 4), UN_STR("honey"))); - assert(!un_string_compare(*(String*)un_list_get(&splits, 5), UN_STR("mustard"))); - - assert(!un_string_compare(un_string_join(splits, UN_STR(" "), talloc), UN_STR("Eatin burger wit no honey mustard"))); - - un_list_destroy(&splits); - - assert(!un_string_compare(un_string_substring(UN_STR("HelloWorld!"), 5, 6), UN_STR("World!"))); - assert(!un_string_compare(un_string_substring(UN_STR("HelloWorld!"), 0, 11), UN_STR("HelloWorld!"))); - assert(!un_string_compare(un_string_substring(UN_STR("HelloWorld!"), 10, 1), UN_STR("!"))); - - assert(un_string_index_of(UN_STR("CP/M"), (u8)'/', 0) == 2); - assert(un_string_index_of_last(UN_STR("https://github.com/bonmas14"), (u8)'/') == 18); - - assert(!un_string_compare(un_string_swap(UN_STR("/path/from/unix/systems/"), (u8)'/', (u8) '\\', talloc), UN_STR("\\path\\from\\unix\\systems\\"))); - - assert(!un_string_compare( - un_string_format(talloc, UN_STR("/path/%s/unix/a %d %u %%"), UN_STR("test"), (s64)-100, (u64)404), - UN_STR("/path/test/unix/a -100 404 %") - ) - ); -} diff --git a/tests/un/allocs.c b/tests/un/allocs.c new file mode 100644 index 0000000..608d9f4 --- /dev/null +++ b/tests/un/allocs.c @@ -0,0 +1,39 @@ +#include + +int main(void) { + u64 i, size, *value; + size = UN_KB(1); + + { // std + Allocator std = un_allocator_get_standard(); + void *mem = un_memory_alloc(size, std); + + if (mem != NULL) { + un_memory_free(mem, std); + } + } + + { // temp + Allocator temp = un_allocator_get_temporary(); + + u8 *mem = (u8*) un_memory_alloc(size, temp); + assert(mem != NULL); + + for (i = 0; i < size; i++) { + mem[i] = 0xAB; + } + + un_memory_destroy(&temp); + } + + { // arena + Allocator arena = un_allocator_create_arena(size); + + for (i = 0; i < 1000; i++) { + value = un_memory_alloc(8, arena); + *value = 0xAC; + } + + un_memory_destroy(&arena); + } +} diff --git a/tests/un/lists.c b/tests/un/lists.c new file mode 100644 index 0000000..a8627ac --- /dev/null +++ b/tests/un/lists.c @@ -0,0 +1,50 @@ +#include + +int main(void) { + u64 i, v, times, size; + List list; + Allocator alloc; + + size = 16; + times = 4; + + { + alloc = un_allocator_get_standard(); + list = un_list_create(size, sizeof(u64), alloc); + + assert(un_list_get(&list, 0) == NULL); + + for (i = 0; i < size; i++) { + v = i * times; + + un_list_append(&list, (void *)(&v)); + } + + assert(*(u64*)un_list_get(&list, size - 1) == ((size - 1) * times)); + + for (i = 0; i < size; i++) { + v = *(u64*)un_list_get(&list, i); + assert(v == i * times); + } + + un_list_remove(&list, 0); + assert(*(u64*)un_list_get(&list, 0) == times); + + un_list_remove(&list, list.count); // will be ignored + un_list_remove(&list, list.count - 1); + + assert(list.count == (size - 2)); + + for (i = 0; i < size; i++) { + v = i * times; + un_list_append(&list, (void *)(&v)); + } + + assert(list.capacity == (size * 2)); + + un_list_destroy(&list); + + assert(list.data == NULL); + } +} + diff --git a/tests/un/memctl.c b/tests/un/memctl.c new file mode 100644 index 0000000..1614442 --- /dev/null +++ b/tests/un/memctl.c @@ -0,0 +1,42 @@ +#include + +#define SIZE UN_KB(1) + +u8 buffer_a[SIZE]; +u8 buffer_b[SIZE]; + +int main(void) { + u64 i; + for (i = 0; i < SIZE; i++) { + buffer_a[i] += i << 2; + } + + { + un_memory_copy(buffer_b, buffer_a, SIZE); + + for (i = 0; i < SIZE; i++) { + assert(buffer_b[i] == buffer_a[i]); + } + + assert(un_memory_compare(buffer_a, buffer_b, SIZE) == 0); + + buffer_b[SIZE - 10] = 0; + assert(un_memory_compare(buffer_a, buffer_b, SIZE) == 1); + } + + { + un_memory_move(buffer_a + SIZE / 4, buffer_a, SIZE / 2); + + assert(un_memory_compare(buffer_b, buffer_a + SIZE / 4, SIZE / 2) == 0); + } + + { + un_memory_set(buffer_a, 0, SIZE); + + for (i = 0; i < SIZE; i++) { + assert(buffer_a[i] == 0); + } + } + + return 0; +} diff --git a/tests/un/strings.c b/tests/un/strings.c new file mode 100644 index 0000000..d49d525 --- /dev/null +++ b/tests/un/strings.c @@ -0,0 +1,103 @@ +#include + +int main(void) { + List splits; + Allocator talloc; + String result; + + assert(un_string_get_length(UN_CSTR "Hello") == 5); + assert(un_string_get_length(UN_CSTR "") == 0); + assert(un_string_get_length(UN_CSTR "What") == 4); + + talloc = un_allocator_get_temporary(); + + result = un_string_concat(UN_STR("Hello "), UN_STR("world!"), talloc); + assert(!un_string_compare(result, UN_STR("Hello world!"))); + + assert(!un_string_compare(un_string_copy(result, talloc), result)); + + splits = un_string_split(UN_STR("Eatin burger wit no honey mustard"), UN_STR(" "), talloc); + + assert(splits.count == 6); + + assert(!un_string_compare(*(String*)un_list_get(&splits, 0), UN_STR("Eatin"))); + assert(!un_string_compare(*(String*)un_list_get(&splits, 1), UN_STR("burger"))); + assert(!un_string_compare(*(String*)un_list_get(&splits, 2), UN_STR("wit"))); + assert(!un_string_compare(*(String*)un_list_get(&splits, 3), UN_STR("no"))); + assert(!un_string_compare(*(String*)un_list_get(&splits, 4), UN_STR("honey"))); + assert(!un_string_compare(*(String*)un_list_get(&splits, 5), UN_STR("mustard"))); + + un_list_destroy(&splits); + + splits = un_string_split(UN_STR("Eatin||burger||wit||no||honey||mustard"), UN_STR("||"), talloc); + + assert(splits.count == 6); + + assert(!un_string_compare(*(String*)un_list_get(&splits, 0), UN_STR("Eatin"))); + assert(!un_string_compare(*(String*)un_list_get(&splits, 1), UN_STR("burger"))); + assert(!un_string_compare(*(String*)un_list_get(&splits, 2), UN_STR("wit"))); + assert(!un_string_compare(*(String*)un_list_get(&splits, 3), UN_STR("no"))); + assert(!un_string_compare(*(String*)un_list_get(&splits, 4), UN_STR("honey"))); + assert(!un_string_compare(*(String*)un_list_get(&splits, 5), UN_STR("mustard"))); + + un_list_destroy(&splits); + + splits = un_string_split(UN_STR("Eatin||burger||wit||no||honey||mustard||a"), UN_STR("||"), talloc); + + assert(splits.count == 7); + + assert(!un_string_compare(*(String*)un_list_get(&splits, 0), UN_STR("Eatin"))); + assert(!un_string_compare(*(String*)un_list_get(&splits, 1), UN_STR("burger"))); + assert(!un_string_compare(*(String*)un_list_get(&splits, 2), UN_STR("wit"))); + assert(!un_string_compare(*(String*)un_list_get(&splits, 3), UN_STR("no"))); + assert(!un_string_compare(*(String*)un_list_get(&splits, 4), UN_STR("honey"))); + assert(!un_string_compare(*(String*)un_list_get(&splits, 5), UN_STR("mustard"))); + assert(!un_string_compare(*(String*)un_list_get(&splits, 6), UN_STR("a"))); + + un_list_destroy(&splits); + + splits = un_string_split(UN_STR("a||Eatin||burger||wit||no||honey||mustard||a"), UN_STR("||"), talloc); + + assert(splits.count == 8); + + assert(!un_string_compare(*(String*)un_list_get(&splits, 0), UN_STR("a"))); + assert(!un_string_compare(*(String*)un_list_get(&splits, 1), UN_STR("Eatin"))); + assert(!un_string_compare(*(String*)un_list_get(&splits, 2), UN_STR("burger"))); + assert(!un_string_compare(*(String*)un_list_get(&splits, 3), UN_STR("wit"))); + assert(!un_string_compare(*(String*)un_list_get(&splits, 4), UN_STR("no"))); + assert(!un_string_compare(*(String*)un_list_get(&splits, 5), UN_STR("honey"))); + assert(!un_string_compare(*(String*)un_list_get(&splits, 6), UN_STR("mustard"))); + assert(!un_string_compare(*(String*)un_list_get(&splits, 7), UN_STR("a"))); + + un_list_destroy(&splits); + + splits = un_string_split(UN_STR("||Eatin||burger||wit||no||honey||mustard||"), UN_STR("||"), talloc); + + assert(splits.count == 6); + + assert(!un_string_compare(*(String*)un_list_get(&splits, 0), UN_STR("Eatin"))); + assert(!un_string_compare(*(String*)un_list_get(&splits, 1), UN_STR("burger"))); + assert(!un_string_compare(*(String*)un_list_get(&splits, 2), UN_STR("wit"))); + assert(!un_string_compare(*(String*)un_list_get(&splits, 3), UN_STR("no"))); + assert(!un_string_compare(*(String*)un_list_get(&splits, 4), UN_STR("honey"))); + assert(!un_string_compare(*(String*)un_list_get(&splits, 5), UN_STR("mustard"))); + + assert(!un_string_compare(un_string_join(splits, UN_STR(" "), talloc), UN_STR("Eatin burger wit no honey mustard"))); + + un_list_destroy(&splits); + + assert(!un_string_compare(un_string_substring(UN_STR("HelloWorld!"), 5, 6), UN_STR("World!"))); + assert(!un_string_compare(un_string_substring(UN_STR("HelloWorld!"), 0, 11), UN_STR("HelloWorld!"))); + assert(!un_string_compare(un_string_substring(UN_STR("HelloWorld!"), 10, 1), UN_STR("!"))); + + assert(un_string_index_of(UN_STR("CP/M"), (u8)'/', 0) == 2); + assert(un_string_index_of_last(UN_STR("https://github.com/bonmas14"), (u8)'/') == 18); + + assert(!un_string_compare(un_string_swap(UN_STR("/path/from/unix/systems/"), (u8)'/', (u8) '\\', talloc), UN_STR("\\path\\from\\unix\\systems\\"))); + + assert(!un_string_compare( + un_string_format(talloc, UN_STR("/path/%s/unix/a %d %u %%"), UN_STR("test"), (s64)-100, (u64)404), + UN_STR("/path/test/unix/a -100 404 %") + ) + ); +} -- cgit v1.2.3-70-g09d2