summaryrefslogtreecommitdiff
path: root/source/test/unittests/thread.test.c
diff options
context:
space:
mode:
authorMitya Selivanov <automainint@guattari.tech>2023-09-02 20:59:29 +0200
committerMitya Selivanov <automainint@guattari.tech>2023-09-02 20:59:29 +0200
commit835e1fcd131c63ee2b3b647e327b33a3bfb369e3 (patch)
tree9d6fb42d6296a7bbec4a6ea58358c0fdb5de7e05 /source/test/unittests/thread.test.c
parent34ba87d8c8cfef5ed249b34bd2d2b7e41a34d2f7 (diff)
downloadkit-835e1fcd131c63ee2b3b647e327b33a3bfb369e3.zip
[Linux] Change build system; Remove CMake
Diffstat (limited to 'source/test/unittests/thread.test.c')
-rw-r--r--source/test/unittests/thread.test.c91
1 files changed, 0 insertions, 91 deletions
diff --git a/source/test/unittests/thread.test.c b/source/test/unittests/thread.test.c
deleted file mode 100644
index 01198c2..0000000
--- a/source/test/unittests/thread.test.c
+++ /dev/null
@@ -1,91 +0,0 @@
-#include "../../kit/thread.h"
-
-#define KIT_TEST_FILE thread
-#include "../../kit_test/test.h"
-
-static int test_nothing(void *_) {
- return 0;
-}
-
-static int test_run(void *data) {
- int *n = (int *) data;
- return *n + 20;
-}
-
-static int test_exit(void *data) {
- int *n = (int *) data;
-
- *n = 1;
- thrd_exit(3);
- *n = 2;
- return 4;
-}
-
-static int test_yield(void *data) {
- thrd_yield();
- return 0;
-}
-
-static int test_sleep(void *data) {
- struct timespec t = { .tv_sec = 0, .tv_nsec = 10000000 };
- thrd_sleep(&t, NULL);
- return 0;
-}
-
-TEST("thread run") {
- thrd_t t;
- int data = 22;
- int result;
- REQUIRE(thrd_create(&t, test_run, &data) == thrd_success);
- REQUIRE(thrd_join(t, &result) == thrd_success);
- REQUIRE(result == 42);
-}
-
-TEST("thread stack size") {
- thrd_t foo;
- REQUIRE(thrd_create_with_stack(&foo, test_nothing, NULL, 30000) ==
- thrd_success);
- REQUIRE(thrd_join(foo, NULL) == thrd_success);
-}
-
-TEST("thread equal") {
- thrd_t foo, bar;
- REQUIRE(thrd_create(&foo, test_nothing, NULL) == thrd_success);
- REQUIRE(thrd_create(&bar, test_nothing, NULL) == thrd_success);
- REQUIRE(thrd_equal(foo, foo));
- REQUIRE(!thrd_equal(foo, bar));
- REQUIRE(!thrd_equal(foo, thrd_current()));
- REQUIRE(thrd_join(foo, NULL) == thrd_success);
- REQUIRE(thrd_join(bar, NULL) == thrd_success);
-}
-
-TEST("thread exit") {
- thrd_t foo;
- int data;
- int result;
- REQUIRE(thrd_create(&foo, test_exit, &data) == thrd_success);
- REQUIRE(thrd_join(foo, &result) == thrd_success);
- REQUIRE(data == 1);
- REQUIRE(result == 3);
-}
-
-TEST("thread yield") {
- thrd_t foo;
- REQUIRE(thrd_create(&foo, test_yield, NULL) == thrd_success);
- REQUIRE(thrd_join(foo, NULL) == thrd_success);
-}
-
-TEST("thread sleep") {
- thrd_t foo;
- REQUIRE(thrd_create(&foo, test_sleep, NULL) == thrd_success);
- REQUIRE(thrd_join(foo, NULL) == thrd_success);
-}
-
-TEST("thread detach") {
- thrd_t foo;
- REQUIRE(thrd_create(&foo, test_nothing, NULL) == thrd_success);
- REQUIRE(thrd_detach(foo) == thrd_success);
-
- struct timespec t = { .tv_sec = 0, .tv_nsec = 10000000 };
- thrd_sleep(&t, NULL);
-}