Build on osx

This commit is contained in:
Nils O. Selåsdal
2025-07-16 00:50:07 +02:00
parent c0d46d31fb
commit 6d7b80a6d2
5 changed files with 52 additions and 45 deletions
+5 -1
View File
@@ -2,9 +2,13 @@ file(GLOB TEST_SOURCE_FILES test_*.c)
if (${CMAKE_SYSTEM_NAME} MATCHES "Darwin") if (${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
include_directories("/opt/homebrew/include") include_directories("/opt/homebrew/include")
link_directories("/opt/homebrew/lib")
list(REMOVE_ITEM TEST_SOURCE_FILES ${CMAKE_CURRENT_SOURCE_DIR}/test_ringbuf.c)
else()
target_link_libraries(rt)
endif() endif()
add_executable(test_runner ${TEST_SOURCE_FILES}) add_executable(test_runner ${TEST_SOURCE_FILES})
target_link_libraries(test_runner check ucore rt) target_link_libraries(test_runner check ucore)
add_custom_target(runtest COMMAND test_runner add_custom_target(runtest COMMAND test_runner
DEPENDS test_runner DEPENDS test_runner
Executable
BIN
View File
Binary file not shown.
+2
View File
@@ -66,7 +66,9 @@ static suite_func suites[] = {
iomux_suite, iomux_suite,
iomux_signal_suite, iomux_signal_suite,
string_suite, string_suite,
#ifndef __APPLE__
ringbuf_suite ringbuf_suite
#endif
}; };
+24 -23
View File
@@ -7,7 +7,7 @@
START_TEST (test_getfields) START_TEST (test_getfields)
{
char str[] = "a;b;c"; char str[] = "a;b;c";
char *letters[5] = {NULL}; char *letters[5] = {NULL};
@@ -18,11 +18,11 @@ START_TEST (test_getfields)
ck_assert_str_eq("a", letters[0]); ck_assert_str_eq("a", letters[0]);
ck_assert_str_eq("b", letters[1]); ck_assert_str_eq("b", letters[1]);
ck_assert_str_eq("c", letters[2]); ck_assert_str_eq("c", letters[2]);
}
END_TEST END_TEST
START_TEST (test_getfields_consecutive) START_TEST (test_getfields_consecutive)
{
char str[] = "a;;b;c;;;"; char str[] = "a;;b;c;;;";
char *letters[7] = {NULL}; char *letters[7] = {NULL};
@@ -37,10 +37,11 @@ START_TEST (test_getfields_consecutive)
ck_assert_str_eq("b", letters[2]); ck_assert_str_eq("b", letters[2]);
ck_assert_str_eq("c", letters[3]); ck_assert_str_eq("c", letters[3]);
ck_assert_str_eq(";;", letters[4]); ck_assert_str_eq(";;", letters[4]);
}
END_TEST END_TEST
START_TEST (test_getfields_mflag) START_TEST (test_getfields_mflag)
{
char str[] = "a;b;c"; char str[] = "a;b;c";
char *letters[5] = {NULL}; char *letters[5] = {NULL};
@@ -51,11 +52,11 @@ START_TEST (test_getfields_mflag)
ck_assert_str_eq("a", letters[0]); ck_assert_str_eq("a", letters[0]);
ck_assert_str_eq("b", letters[1]); ck_assert_str_eq("b", letters[1]);
ck_assert_str_eq("c", letters[2]); ck_assert_str_eq("c", letters[2]);
}
END_TEST END_TEST
START_TEST (test_getfields_consecutive_mflag) START_TEST (test_getfields_consecutive_mflag)
{
char str[] = "a;;b;c;;;"; char str[] = "a;;b;c;;;";
char *letters[7] = {NULL}; char *letters[7] = {NULL};
@@ -68,11 +69,11 @@ START_TEST (test_getfields_consecutive_mflag)
ck_assert_str_eq("a", letters[0]); ck_assert_str_eq("a", letters[0]);
ck_assert_str_eq("b", letters[1]); ck_assert_str_eq("b", letters[1]);
ck_assert_str_eq("c", letters[2]); ck_assert_str_eq("c", letters[2]);
}
END_TEST END_TEST
START_TEST (test_getfields_too_many) START_TEST (test_getfields_too_many)
{
char str[] = "a\r\nb\r\nc\r\nd\r\ne"; char str[] = "a\r\nb\r\nc\r\nd\r\ne";
char *letters[4] = {NULL}; char *letters[4] = {NULL};
@@ -85,11 +86,11 @@ START_TEST (test_getfields_too_many)
ck_assert_str_eq("", letters[1]); ck_assert_str_eq("", letters[1]);
ck_assert_str_eq("b", letters[2]); ck_assert_str_eq("b", letters[2]);
ck_assert_str_eq("\nc\r\nd\r\ne", letters[3]); ck_assert_str_eq("\nc\r\nd\r\ne", letters[3]);
}
END_TEST END_TEST
START_TEST (test_getfields_too_many_mflag) START_TEST (test_getfields_too_many_mflag)
{
char str[] = "a\r\nb\r\nc\r\nd\r\ne"; char str[] = "a\r\nb\r\nc\r\nd\r\ne";
char *letters[4] = {NULL}; char *letters[4] = {NULL};
@@ -100,11 +101,11 @@ START_TEST (test_getfields_too_many_mflag)
ck_assert_str_eq("b", letters[1]); ck_assert_str_eq("b", letters[1]);
ck_assert_str_eq("c", letters[2]); ck_assert_str_eq("c", letters[2]);
ck_assert_str_eq("d\r\ne", letters[3]); ck_assert_str_eq("d\r\ne", letters[3]);
}
END_TEST END_TEST
START_TEST (test_getfields_empty) START_TEST (test_getfields_empty)
{
char str[] = ""; char str[] = "";
char *letters[4] = {NULL}; char *letters[4] = {NULL};
@@ -115,11 +116,11 @@ START_TEST (test_getfields_empty)
rc = uc_getfields(str, letters, 4, 1, ";\r\n"); rc = uc_getfields(str, letters, 4, 1, ";\r\n");
ck_assert_int_eq(rc, 0); ck_assert_int_eq(rc, 0);
}
END_TEST END_TEST
START_TEST (test_gettokens) START_TEST (test_gettokens)
{
char str[] = "a;b;c"; char str[] = "a;b;c";
char *letters[5] = {NULL}; char *letters[5] = {NULL};
@@ -130,11 +131,11 @@ START_TEST (test_gettokens)
ck_assert_str_eq("a", letters[0]); ck_assert_str_eq("a", letters[0]);
ck_assert_str_eq("b", letters[1]); ck_assert_str_eq("b", letters[1]);
ck_assert_str_eq("c", letters[2]); ck_assert_str_eq("c", letters[2]);
}
END_TEST END_TEST
START_TEST (test_gettokens_consecutive) START_TEST (test_gettokens_consecutive)
{
char str[] = "a;;;b;;c;"; char str[] = "a;;;b;;c;";
char *letters[5] = {NULL}; char *letters[5] = {NULL};
@@ -145,21 +146,21 @@ START_TEST (test_gettokens_consecutive)
ck_assert_str_eq("a", letters[0]); ck_assert_str_eq("a", letters[0]);
ck_assert_str_eq("b", letters[1]); ck_assert_str_eq("b", letters[1]);
ck_assert_str_eq("c", letters[2]); ck_assert_str_eq("c", letters[2]);
}
END_TEST END_TEST
START_TEST (test_gettokens_empty) START_TEST (test_gettokens_empty)
{
char str[] = ""; char str[] = "";
char *letters[5] = {NULL}; char *letters[5] = {NULL};
int rc = uc_gettokens(str, letters, 5,";"); int rc = uc_gettokens(str, letters, 5,";");
ck_assert_int_eq(rc, 0); ck_assert_int_eq(rc, 0);
}
END_TEST END_TEST
START_TEST (test_gettokens_quotes) START_TEST (test_gettokens_quotes)
{
char str[] = "\"abc\";d;\"e \""; char str[] = "\"abc\";d;\"e \"";
char *letters[5] = {NULL}; char *letters[5] = {NULL};
@@ -169,11 +170,11 @@ START_TEST (test_gettokens_quotes)
ck_assert_str_eq("abc", letters[0]); ck_assert_str_eq("abc", letters[0]);
ck_assert_str_eq("d", letters[1]); ck_assert_str_eq("d", letters[1]);
ck_assert_str_eq("e ", letters[2]); ck_assert_str_eq("e ", letters[2]);
}
END_TEST END_TEST
START_TEST (test_gettokens_double_quotes) START_TEST (test_gettokens_double_quotes)
{
char str[] = "\"\"abc\"\";d;\"e\"\"f\"\"\""; char str[] = "\"\"abc\"\";d;\"e\"\"f\"\"\"";
char *letters[5] = {NULL}; char *letters[5] = {NULL};
@@ -183,7 +184,7 @@ START_TEST (test_gettokens_double_quotes)
ck_assert_str_eq("abc", letters[0]); ck_assert_str_eq("abc", letters[0]);
ck_assert_str_eq("d", letters[1]); ck_assert_str_eq("d", letters[1]);
ck_assert_str_eq("e\"f\"", letters[2]); ck_assert_str_eq("e\"f\"", letters[2]);
}
END_TEST END_TEST
Suite *string_suite(void) Suite *string_suite(void)
+2 -2
View File
@@ -136,6 +136,7 @@ START_TEST (test_strv_append_all_nocopy)
END_TEST END_TEST
START_TEST (test_strv_reverse) START_TEST (test_strv_reverse)
{
struct UCStrv strv; struct UCStrv strv;
uc_strv_init(&strv); uc_strv_init(&strv);
@@ -170,8 +171,7 @@ START_TEST (test_strv_reverse)
ck_assert_str_eq("string1", strv.strings[2]); ck_assert_str_eq("string1", strv.strings[2]);
uc_strv_destroy(&strv); uc_strv_destroy(&strv);
}
END_TEST END_TEST
Suite *strv_suite(void) Suite *strv_suite(void)