diff --git a/src/rest/rest_server.h b/src/rest/rest_server.h index fb0dc02..71be5b0 100644 --- a/src/rest/rest_server.h +++ b/src/rest/rest_server.h @@ -1,5 +1,5 @@ /*! - * rest_handler.h + * rest_server.h * * Copyright (c) 2015-2020, NADAL Jean-Baptiste. All rights reserved. * diff --git a/src/tests/test_rest.c b/src/tests/test_rest.c index 50627ec..8076b75 100644 --- a/src/tests/test_rest.c +++ b/src/tests/test_rest.c @@ -28,6 +28,7 @@ #define ksuccess_get_body "{\"status\":\"ok\"}" #define ksuccess_delete_body "{\"status\":\"delete\"}" #define ksuccess_put_body "{\"status\":\"put\"}" +#define kerror_body "{\"status\":\"error\"}" #define kserver_port "7777" #define kapi_test_get "/api/v1/test_get" @@ -41,8 +42,8 @@ int my_error_handler(struct evhttp_request *req, void *arg) { - //restd_http_response(conn, 200, "application/json", "{\"status\":\"error\"}", 18); - //return RESTD_CLOSE; // Close connection. + restd_http_response(req, 200, "application/json", kerror_body); + return RESTD_OK; } /*--------------------------------------------------------------------------*/ @@ -53,7 +54,6 @@ int my_success_http_handler(struct evhttp_request *req, void *arg) return RESTD_OK; } - /*--------------------------------------------------------------------------*/ int my_success_rest_get_handler(struct evhttp_request *req, void *arg) @@ -80,6 +80,14 @@ int my_success_rest_put_handler(struct evhttp_request *req, void *arg) /*--------------------------------------------------------------------------*/ +int my_success_rest_post_handler(struct evhttp_request *req, void *arg) +{ + restd_http_response(req, 200, "application/json", ksuccess_put_body); + return RESTD_OK; +} + +/*--------------------------------------------------------------------------*/ + size_t write_callback(void *ptr, size_t size, size_t nmemb, void *stream) { size_t body_size = 0; @@ -164,7 +172,7 @@ int exec_request(const char *request, const char *path, int expected_code, const printf("Error: %d\n", res); } ASSERT_EQUAL_INT(res, CURLE_OK); - + curl_easy_getinfo(curl_handle, CURLINFO_RESPONSE_CODE, &http_result_code); ASSERT_EQUAL_INT(http_result_code, expected_code); @@ -390,7 +398,7 @@ TEST("Rest - create start access http hook free\t") ret = restd_server_start(rest_server); ASSERT_EQUAL_INT(ret, 0); - ret = exec_request(kget_method, "http://localhost:"kserver_port kapi_test_get, 200, ksuccess_get_body); + ret = exec_request(kget_method, "http://localhost:" kserver_port kapi_test_get, 200, ksuccess_get_body); ASSERT_EQUAL_INT(ret, 0); restd_server_free(rest_server); @@ -416,25 +424,26 @@ TEST("Rest - create start access rest hook free\t") restd_server_register_hook_on_path(rest_server, EVHTTP_REQ_GET, kapi_test_get, my_success_rest_get_handler, NULL); restd_server_register_hook_on_path(rest_server, EVHTTP_REQ_PUT, kapi_test_get, my_success_rest_put_handler, NULL); restd_server_register_hook_on_path(rest_server, EVHTTP_REQ_DELETE, kapi_test_get, my_success_rest_delete_handler, NULL); + restd_server_register_hook_on_path(rest_server, EVHTTP_REQ_POST, kapi_test_get, my_success_rest_post_handler, NULL); + ret = restd_server_start(rest_server); ASSERT_EQUAL_INT(ret, 0); sleep(1); - + PRINTLN("\n - GET"); - ret = exec_request(kget_method, "http://localhost:"kserver_port kapi_test_get, 200, ksuccess_get_body); + ret = exec_request(kget_method, "http://localhost:" kserver_port kapi_test_get, 200, ksuccess_get_body); ASSERT_EQUAL_INT(ret, 0); PRINTLN("\n - DELETE"); - ret = exec_request(kdelete_method, "http://localhost:"kserver_port kapi_test_get, 200, ksuccess_delete_body); + ret = exec_request(kdelete_method, "http://localhost:" kserver_port kapi_test_get, 200, ksuccess_delete_body); ASSERT_EQUAL_INT(ret, 0); - #if 1 PRINTLN("\n - PUT"); - ret = exec_request(kput_method, "http://localhost:"kserver_port kapi_test_get, 200, ksuccess_put_body); + ret = exec_request(kput_method, "http://localhost:" kserver_port kapi_test_get, 200, ksuccess_put_body); ASSERT_EQUAL_INT(ret, 0); -#endif + // TODO POST restd_server_free(rest_server);