END_TEST START_TEST(tcp_socket_create_and_destroy) { int result = 0; struct pico_mqtt_socket* socket = NULL; result = pico_mqtt_connection_open(&socket, "127.0.0.1", "1883"); ck_assert_msg(socket != NULL, "Error while creating the socket"); ck_assert_msg(result == SUCCES, "Error while creating the socket"); result = pico_mqtt_connection_close( &socket ); ck_assert_msg(result == SUCCES, "Error while closing the socket"); }
int main() { int result = 0; uint32_t written = 0; struct pico_mqtt_socket* socket; struct timeval time_left = {.tv_usec = 0, .tv_sec = 1}; char message[12] = "Hello World\0"; struct pico_mqtt_data output_buffer= {.length = 12, .data = (void*) message}; pico_mqtt_connection_open(socket, "127.0.0.1", 1083); pico_mqtt_connection_send(socket, &output_buffer, &time_left); return SUCCES; }
END_TEST START_TEST(tcp_socket_send_test) { struct pico_mqtt_socket* socket; int result = 0; struct timeval time_left = {.tv_usec = 0, .tv_sec = 1}; /*struct test_thread thread;*/ char buffer[100] = "Hallo world"; struct pico_mqtt_data data = {.length = 12, .data = buffer}; char* ip = "127.0.0.1"; /*thread = create_test_thread(tcp_v4_echo_server, (void*) NULL);*/ /*sleep(1);*/ result = pico_mqtt_connection_open(&socket, ip, "1883"); ck_assert_msg(result == SUCCES, "Unable to find host"); /**buffer = 'a';*/ result = pico_mqtt_connection_send(socket, &data, &time_left); ck_assert_msg(result == SUCCES, "Error while writing to the socket."); /* *buffer = 'b'; result = read(thread.read_descriptor, buffer, 1); if(result == -1) printf("error: %s\n", strerror(errno)); close(thread.write_descriptor); close(thread.read_descriptor); wait(NULL); ck_assert_msg(*buffer == 'a', "thread not writing to parent");*/ } END_TEST Suite * tcp_suite(void) { Suite *test_suite; TCase *test_case_core; test_suite = suite_create("TCP"); /* Core test case */ test_case_core = tcase_create("Core"); tcase_add_test(test_case_core, fork_test); tcase_add_test(test_case_core, tcp_socket_create_and_destroy); tcase_add_test(test_case_core, tcp_socket_send_test); suite_add_tcase(test_suite, test_case_core); return test_suite; } int main(void) { int number_failed; Suite *test_suite; SRunner *suite_runner; test_suite = tcp_suite(); suite_runner = srunner_create(test_suite); srunner_run_all(suite_runner, CK_NORMAL); number_failed = srunner_ntests_failed(suite_runner); srunner_free(suite_runner); return (number_failed == 0) ? EXIT_SUCCESS : EXIT_FAILURE; }