/** * Start watching the list of watched directories */ void sxe_dirwatch_start(void) { SXEE61("sxe_dirwatch_start() // fd=%d", sxe_dirwatch_watcher.fd); ev_io_start(sxe_private_main_loop, &sxe_dirwatch_watcher); SXER60("return"); }
int main(void) { struct object self; struct object * this = &self; plan_tests(47); /* Test sxe_return_to_string() */ is_eq(sxe_return_to_string(SXE_RETURN_OK), "OK" , "sxe_return_to_string(SXE_RETURN_OK) eq \"OK\""); is_eq(sxe_return_to_string(SXE_RETURN_ERROR_INTERNAL), "ERROR_INTERNAL", "sxe_return_to_string(SXE_RETURN_ERROR_INTERNAL) eq \"ERROR_INTERNAL\""); is( sxe_return_to_string(~0U), NULL, "sxe_return_to_string(~0U) == NULL"); TEST_CASE_RETURN_TO_STRING(EXPIRED_VALUE); TEST_CASE_RETURN_TO_STRING(NO_UNUSED_ELEMENTS); TEST_CASE_RETURN_TO_STRING(IN_PROGRESS); TEST_CASE_RETURN_TO_STRING(UNCATEGORIZED); TEST_CASE_RETURN_TO_STRING(END_OF_FILE); TEST_CASE_RETURN_TO_STRING(WARN_ALREADY_INITIALIZED); TEST_CASE_RETURN_TO_STRING(WARN_WOULD_BLOCK); TEST_CASE_RETURN_TO_STRING(WARN_ALREADY_CLOSED); TEST_CASE_RETURN_TO_STRING(ERROR_NOT_INITIALIZED); TEST_CASE_RETURN_TO_STRING(ERROR_ALLOC); TEST_CASE_RETURN_TO_STRING(ERROR_NO_CONNECTION); TEST_CASE_RETURN_TO_STRING(ERROR_ALREADY_CONNECTED); TEST_CASE_RETURN_TO_STRING(ERROR_INVALID_URI); TEST_CASE_RETURN_TO_STRING(ERROR_BAD_MESSAGE); TEST_CASE_RETURN_TO_STRING(ERROR_ADDRESS_IN_USE); TEST_CASE_RETURN_TO_STRING(ERROR_INTERRUPTED); TEST_CASE_RETURN_TO_STRING(ERROR_COMMAND_NOT_RUN); TEST_CASE_RETURN_TO_STRING(ERROR_LOCK_NOT_TAKEN); TEST_CASE_RETURN_TO_STRING(ERROR_INCORRECT_STATE); TEST_CASE_RETURN_TO_STRING(ERROR_TIMED_OUT); TEST_CASE_RETURN_TO_STRING(ERROR_WRITE_FAILED); TEST_CASE_RETURN_TO_STRING(INVALID_VALUE); /* Just for coverage */ ok(signal(SIGABRT, test_abort_handler) != SIG_ERR, "Caught abort signal"); sxe_log_hook_line_out(NULL); /* for coverage */ sxe_log_hook_line_out(log_line); PUTENV("SXE_LOG_LEVEL=6"); /* Trigger processing of the level in the first call to the log */ SXEE60(entering); PUTENV("SXE_LOG_LEVEL=1"); /* This should be ignored. If it is not, the tests will fail */ this->id = 99; SXEL60I(logging); SXEA60(1, "Asserting true"); SXED60(dumpdata, 4); SXER60(exiting); SXEL60(verylong); SXEE61("really long entry message: %s", verylong); SXEL60(escape); SXEL60(hextrunc); SXED60(dumpdata, 0); /* Edge case */ SXEA80(1, "We should not get this, because level 8 is too low!"); is(sxe_log_decrease_level(SXE_LOG_LEVEL_ERROR), SXE_LOG_LEVEL_TRACE, "Level decreased to ERROR (2) from TRACE (6)"); is(sxe_log_set_level( SXE_LOG_LEVEL_INFORMATION), SXE_LOG_LEVEL_ERROR, "Level set to INFO, was ERROR"); is(sxe_log_decrease_level(SXE_LOG_LEVEL_TRACE), SXE_LOG_LEVEL_INFORMATION, "Level was INFO, TRACE is not a decrease"); #if defined(_WIN32) && defined(LOCAL_SXE_DEBUG) skip(3, "Can't test aborts in a Windows debug build, due to pop up Window stopping the build"); #else SXEA60(this != &self, "This is not self"); /* Abort - must be the last thing we do*/ fail("Did not catch an abort signal"); #endif } /* Oog! Close the brace opened in the SXEE61 macro above */