From c8d5aeb5d3048e8a037f1884b59cef8adf7e25b2 Mon Sep 17 00:00:00 2001 From: damitha Date: Thu, 8 Jul 2010 06:38:10 +0000 Subject: Added the simple test suite suggested in AXIS2C-1412 git-svn-id: http://svn.apache.org/repos/asf/axis/axis2/c/core/trunk@961590 13f79535-47bb-0310-9956-ffa450edef68 --- test/core/addr/Makefile.am | 7 +- test/core/addr/test_addr.c | 147 +++++---------------- test/core/clientapi/Makefile.am | 67 +++++----- test/core/clientapi/test_client.c | 79 +++++++---- test/core/clientapi/test_clientapi.c | 3 +- .../core/clientapi/test_svc_client_handler_count.c | 2 +- test/core/context/Makefile.am | 7 +- test/core/context/test_context.c | 55 +++++--- test/core/deployment/Makefile.am | 22 +-- test/core/deployment/test_deployment.c | 133 ++++++------------- test/core/description/Makefile.am | 4 +- test/core/description/test_description.c | 141 ++++++++------------ test/core/engine/Makefile.am | 6 +- test/core/engine/test_engine.c | 61 +++++---- test/core/transport/http/Makefile.am | 49 ++++--- test/core/transport/http/test_http_transport.c | 106 ++++++++------- 16 files changed, 405 insertions(+), 484 deletions(-) (limited to 'test/core') diff --git a/test/core/addr/Makefile.am b/test/core/addr/Makefile.am index 02352b8..a04ad8d 100644 --- a/test/core/addr/Makefile.am +++ b/test/core/addr/Makefile.am @@ -11,11 +11,12 @@ test_addr_LDADD = \ ../../../axiom/src/parser/$(WRAPPER_DIR)/libaxis2_parser.la \ $(top_builddir)/neethi/src/libneethi.la \ $(top_builddir)/src/core/engine/libaxis2_engine.la \ - $(top_builddir)/src/core/transport/http/common/libaxis2_http_common.la + $(top_builddir)/src/core/transport/http/common/libaxis2_http_common.la -INCLUDES = -I${CUTEST_HOME}/include \ +INCLUDES = -I$(CUTEST_HOME)/include \ -I$(top_builddir)/src/xml/guththila \ -I$(top_builddir)/include \ -I ../../../util/include \ - -I ../../../axiom/include + -I ../../../axiom/include \ + -I ../../../cutest/include diff --git a/test/core/addr/test_addr.c b/test/core/addr/test_addr.c index c013a57..ad75511 100644 --- a/test/core/addr/test_addr.c +++ b/test/core/addr/test_addr.c @@ -21,10 +21,10 @@ #include #include #include +#include -int -axis2_test_msg_info_headers( - ) +void +axis2_test_msg_info_headers(axutil_env_t *env) { axis2_endpoint_ref_t *to = NULL; axis2_endpoint_ref_t *from = NULL; @@ -33,9 +33,7 @@ axis2_test_msg_info_headers( axis2_endpoint_ref_t *axis2_endpoint_ref = NULL; axis2_status_t status = AXIS2_FAILURE; axis2_msg_info_headers_t *axis2_msg_info_headers = NULL; - axutil_allocator_t *allocator = axutil_allocator_init(NULL); - const axutil_env_t *env = axutil_env_create(allocator); - const axis2_char_t *action = "test action"; + axis2_char_t *action = "test action"; const axis2_char_t *get_action = NULL; to = axis2_endpoint_ref_create(env, "to"); from = axis2_endpoint_ref_create(env, "from"); @@ -43,140 +41,57 @@ axis2_test_msg_info_headers( fault_to = axis2_endpoint_ref_create(env, "fault to"); axis2_msg_info_headers = axis2_msg_info_headers_create(env, NULL, action); - if (axis2_msg_info_headers) - printf("SUCCESS axis2_msg_info_headers_create\n"); - else - { - printf("ERROR AXIS2_MSG_INFO_HEADERS_CREATE\n"); - return -1; - } - + CUT_ASSERT_PTR_NOT_EQUAL(axis2_msg_info_headers, NULL, 1); status = axis2_msg_info_headers_set_to(axis2_msg_info_headers, env, to); - - if (status == AXIS2_SUCCESS) - printf("SUCCESS axis2_msg_info_headers_set_to\n"); - else - { - printf("ERROR axis2_msg_info_headers_set_to"); - return -1; - } + CUT_ASSERT_INT_EQUAL(status, AXIS2_SUCCESS, 1); axis2_endpoint_ref = axis2_msg_info_headers_get_to(axis2_msg_info_headers, env); + CUT_ASSERT_PTR_NOT_EQUAL(axis2_endpoint_ref, NULL, 1); - if (axis2_endpoint_ref) - printf("SUCCESS axis2_msg_info_headers_get_to\n"); - else - { - printf("ERROR axis2_msg_info_headers_get_to\n"); - return -1; - } - - status = AXIS2_FAILURE; status = axis2_msg_info_headers_set_from(axis2_msg_info_headers, env, from); + CUT_ASSERT_INT_EQUAL(status, AXIS2_SUCCESS, 1); - if (status) - printf("SUCCESS axis2_msg_info_headers_set_from\n"); - else - { - printf("ERROR axis2_msg_info_headers_set_from\n"); - return -1; - } - - axis2_endpoint_ref = NULL; axis2_endpoint_ref = axis2_msg_info_headers_get_from(axis2_msg_info_headers, env); + CUT_ASSERT_PTR_NOT_EQUAL(axis2_endpoint_ref, NULL, 1); - if (axis2_endpoint_ref) - printf("SUCCESS axis2_msg_info_headers_get_from\n"); - else - { - printf("ERROR axis2_msg_info_headers_get_from\n"); - return -1; - } - - axis2_endpoint_ref = NULL; axis2_endpoint_ref = axis2_msg_info_headers_get_reply_to(axis2_msg_info_headers, env); + CUT_ASSERT_PTR_EQUAL(axis2_endpoint_ref, NULL, 0); - if (status) - printf("SUCCESS axis2_msg_info_headers_get_reply_to\n"); - else - { - printf("ERROR axis2_msg_info_headers_get_reply_to\n"); - return -1; - } - - status = AXIS2_FAILURE; status = - axis2_msg_info_headers_set_reply_to(axis2_msg_info_headers, env, - reply_to); - - if (status) - printf("SUCCESS axis2_msg_info_headers_set_reply_to\n"); - else - { - printf("ERROR axis2_msg_info_headers_set_reply_to\n"); - return -1; - } - - status = AXIS2_FAILURE; + axis2_msg_info_headers_set_reply_to(axis2_msg_info_headers, env, reply_to); + CUT_ASSERT_INT_EQUAL(status, AXIS2_SUCCESS, 1); + axis2_endpoint_ref = + axis2_msg_info_headers_get_reply_to(axis2_msg_info_headers, env); + CUT_ASSERT_PTR_NOT_EQUAL(axis2_endpoint_ref, NULL, 1); status = - axis2_msg_info_headers_set_fault_to(axis2_msg_info_headers, env, - fault_to); - if (status) - printf("SUCCESS axis2_msg_info_headers_set_fault_to\n"); - else - { - printf("ERROR axis2_msg_info_headers_set_fault_to\n"); - return -1; - } + axis2_msg_info_headers_set_fault_to(axis2_msg_info_headers, env, fault_to); + CUT_ASSERT_INT_EQUAL(status, AXIS2_SUCCESS, 0); - axis2_endpoint_ref = NULL; axis2_endpoint_ref = axis2_msg_info_headers_get_fault_to(axis2_msg_info_headers, env); - if (axis2_endpoint_ref) - printf("SUCCESS axis2_msg_info_headers_get_fault_to\n"); - else - { - printf("ERROR axis2_msg_info_headers_get_fault_to\n"); - return -1; - } + CUT_ASSERT_PTR_NOT_EQUAL(axis2_endpoint_ref, NULL, 0); get_action = axis2_msg_info_headers_get_action(axis2_msg_info_headers, env); - if (get_action) - printf("SUCCESS axis2_msg_info_headers_get_action\n"); - else - { - printf("ERROR axis2_msg_info_headers_get_action\n"); - return -1; - } - - status = AXIS2_FAILURE; + CUT_ASSERT_STR_EQUAL(get_action, action, 0); + status = axis2_msg_info_headers_set_action(axis2_msg_info_headers, env, action); - if (status) - printf("SUCCESS axis2_msg_info_headers_set_action\n"); - else - { - printf("ERROR axis2_msg_info_headers_set_action\n"); - } + CUT_ASSERT_INT_EQUAL(status, AXIS2_SUCCESS, 0); - status = AXIS2_FAILURE; - /* status = axis2_msg_info_headers_free(axis2_msg_info_headers, env); */ - if (status) - printf("SUCCESS axis2_msg_info_headers_free\n"); - else - { - printf("ERROR axis2_msg_info_headers_free\n"); - } - return 0; + axis2_msg_info_headers_free(axis2_msg_info_headers, env); } -int -main( - ) +int main() { - axis2_test_msg_info_headers(); - return 0; + axutil_env_t *env = cut_setup_env("Core Addr"); + CUT_ASSERT(env != NULL); + if (env) { + axis2_test_msg_info_headers(env); + axutil_env_free(env); + } + CUT_RETURN_ON_FAILURE(-1); + return 0; } diff --git a/test/core/clientapi/Makefile.am b/test/core/clientapi/Makefile.am index b47041d..00ab2c4 100644 --- a/test/core/clientapi/Makefile.am +++ b/test/core/clientapi/Makefile.am @@ -2,45 +2,52 @@ TESTS = test_client test_clientapi test_svc_client_handler_count noinst_PROGRAMS = test_client test_clientapi test_svc_client_handler_count check_PROGRAMS = test_client test_clientapi test_svc_client_handler_count SUBDIRS = -AM_CFLAGS = -g +AM_CFLAGS = -g -pthread test_client_SOURCES = test_client.c test_clientapi_SOURCES = test_clientapi.c test_svc_client_handler_count_SOURCES = test_svc_client_handler_count.c test_clientapi_LDADD = \ - ../../../util/src/libaxutil.la \ - ../../../axiom/src/om/libaxis2_axiom.la \ - ../../../axiom/src/parser/$(WRAPPER_DIR)/libaxis2_parser.la \ - $(top_builddir)/neethi/src/libneethi.la \ - $(top_builddir)/src/core/engine/libaxis2_engine.la \ - $(top_builddir)/src/core/transport/http/sender/libaxis2_http_sender.la + ../../../util/src/libaxutil.la \ + ../../../axiom/src/om/libaxis2_axiom.la \ + ../../../axiom/src/parser/$(WRAPPER_DIR)/libaxis2_parser.la \ + $(top_builddir)/neethi/src/libneethi.la \ + -lpthread \ + $(top_builddir)/src/core/engine/libaxis2_engine.la \ + $(top_builddir)/src/core/transport/http/sender/libaxis2_http_sender.la test_client_LDADD = \ - ../../../util/src/libaxutil.la \ - ../../../axiom/src/om/libaxis2_axiom.la \ - ../../../axiom/src/parser/$(WRAPPER_DIR)/libaxis2_parser.la \ - $(top_builddir)/neethi/src/libneethi.la \ - $(top_builddir)/src/core/engine/libaxis2_engine.la \ - $(top_builddir)/src/core/transport/http/sender/libaxis2_http_sender.la + ../../../util/src/libaxutil.la \ + ../../../axiom/src/om/libaxis2_axiom.la \ + ../../../axiom/src/parser/$(WRAPPER_DIR)/libaxis2_parser.la \ + $(top_builddir)/neethi/src/libneethi.la \ + -lpthread \ + $(top_builddir)/src/core/engine/libaxis2_engine.la \ + $(top_builddir)/src/core/transport/http/util/libaxis2_http_util.la \ + $(top_builddir)/src/core/transport/http/common/libaxis2_http_common.la \ + $(top_builddir)/src/core/transport/http/receiver/libaxis2_http_receiver.la \ + $(top_builddir)/src/core/transport/http/sender/libaxis2_http_sender.la test_svc_client_handler_count_LDADD = \ - ../../../util/src/libaxutil.la \ - ../../../axiom/src/om/libaxis2_axiom.la \ - ../../../axiom/src/parser/$(WRAPPER_DIR)/libaxis2_parser.la \ - $(top_builddir)/neethi/src/libneethi.la \ - $(top_builddir)/src/core/engine/libaxis2_engine.la \ - $(top_builddir)/src/core/transport/http/sender/libaxis2_http_sender.la + ../../../util/src/libaxutil.la \ + ../../../axiom/src/om/libaxis2_axiom.la \ + ../../../axiom/src/parser/$(WRAPPER_DIR)/libaxis2_parser.la \ + $(top_builddir)/neethi/src/libneethi.la \ + -lpthread \ + $(top_builddir)/src/core/engine/libaxis2_engine.la \ + $(top_builddir)/src/core/transport/http/sender/libaxis2_http_sender.la -INCLUDES = -I${CUTEST_HOME}/include \ - -I$(top_builddir)/include \ - -I$(top_builddir)/src/core/description \ - -I$(top_builddir)/src/core/context \ - -I$(top_builddir)/src/core/phaseresolver \ - -I$(top_builddir)/src/core/deployment \ - -I$(top_builddir)/src/core/engine \ - -I$(top_builddir)/src/core/clientapi \ - -I ../../../util/include \ - -I ../../../neethi/include \ - -I ../../../axiom/include +INCLUDES = -I$(CUTEST_HOME)/include \ + -I$(top_builddir)/include \ + -I$(top_builddir)/src/core/description \ + -I$(top_builddir)/src/core/context \ + -I$(top_builddir)/src/core/phaseresolver \ + -I$(top_builddir)/src/core/deployment \ + -I$(top_builddir)/src/core/engine \ + -I$(top_builddir)/src/core/clientapi \ + -I ../../../util/include \ + -I ../../../neethi/include \ + -I ../../../axiom/include \ + -I ../../../cutest/include diff --git a/test/core/clientapi/test_client.c b/test/core/clientapi/test_client.c index 83a417e..5eb6788 100644 --- a/test/core/clientapi/test_client.c +++ b/test/core/clientapi/test_client.c @@ -16,19 +16,15 @@ * limitations under the License. */ -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include +#include #include -#include +#include +#include + +#if defined (WIN32) +#define bcopy(s, d, n) memcpy(d, s, n) +#define bzero(s, n) memset(s, 0, n) +#endif /* Function prototypes */ int write_to_socket( @@ -44,7 +40,18 @@ error( const char *msg) { perror(msg); - exit(0); + exit(-1); +} + +void +axis2_test_temp(axutil_env_t *env) +{ + /* To avoid warning of not using cut_ptr_equal */ + CUT_ASSERT_PTR_EQUAL(NULL, NULL, 0); + /* To avoid warning of not using cut_int_equal */ + CUT_ASSERT_INT_EQUAL(0, 0, 0); + /* To avoid warning of not using cut_str_equal */ + CUT_ASSERT_STR_EQUAL("", "", 0); } int @@ -56,6 +63,9 @@ main( const axis2_char_t *port = "9090"; const axis2_char_t *filename = "echo.xml"; const axis2_char_t *endpoint = "/axis2/services/echo/echo"; + axutil_env_t *env = NULL; + +#ifndef WIN32 int c; extern char *optarg; @@ -77,11 +87,19 @@ main( break; } } - - write_to_socket(hostname, port, filename, endpoint); - return 0; +#endif + env = cut_setup_env("test HTTP server"); + CUT_ASSERT(env != NULL); + if ( ut_start_http_server(env) != 0 ) return -1; + write_to_socket(hostname, port, filename, endpoint); + ut_stop_http_server(env); + + axis2_test_temp(env); + CUT_RETURN_ON_FAILURE(-1); + return 0; } +#define TEST_BUF_LEN 4999 int write_to_socket( const char *address, @@ -89,17 +107,16 @@ write_to_socket( const char *filename, const char *endpoint) { - axis2_char_t buffer_l[4999]; - int sockfd, - portno, - n, - i; + axis2_char_t buffer_l[TEST_BUF_LEN]; + int sockfd, portno, n, i, fd; struct sockaddr_in serv_addr; struct hostent *server; struct stat buf; axis2_char_t *buffer; axis2_char_t tmpstr[10]; int bufsize = 0; + int reste; + axis2_char_t *pbuf; portno = atoi(port); sockfd = socket(AF_INET, SOCK_STREAM, 0); @@ -123,7 +140,7 @@ write_to_socket( stat(filename, &buf); bufsize = (buf.st_size + 1) * sizeof(char); buffer = (char *) malloc(bufsize); - int fd = open(filename, O_RDONLY, 0); + fd = open(filename, O_RDONLY, 0); if (fd == -1) { printf("can't open file %s\n", filename); @@ -154,22 +171,25 @@ write_to_socket( strcat(buffer_l, "\r\n"); printf("Writing buffer_1...\n%s", buffer_l); - n = write(sockfd, buffer_l, strlen(buffer_l)); + n = send(sockfd, buffer_l, strlen(buffer_l), 0); - n = write(sockfd, buffer, strlen(buffer)); + n = send(sockfd, buffer, strlen(buffer), 0); if (n < 0) error("ERROR writing to socket"); printf("Done writing to server\n"); buffer[0] = '\0'; - - printf("Reading the reply from server :\n"); - while ((n = read(sockfd, buffer, bufsize - 1)) > 0) + pbuf = buffer_l; + reste = TEST_BUF_LEN - 1; + printf("Read server response %s\n", filename); + while ((n = recv(sockfd, pbuf, reste, 0)) > 0) { - buffer[n] = '\0'; - printf("%s", buffer); + pbuf += n; + reste -= n; } + buffer_l[pbuf - buffer_l] = '\0'; + printf("\nReading from server done ...\n"); if (n < 0) @@ -177,6 +197,7 @@ write_to_socket( error("ERROR reading from socket"); buffer[0] = '\0'; } + free(buffer); return 0; } diff --git a/test/core/clientapi/test_clientapi.c b/test/core/clientapi/test_clientapi.c index e20d44a..ccd8709 100644 --- a/test/core/clientapi/test_clientapi.c +++ b/test/core/clientapi/test_clientapi.c @@ -42,11 +42,11 @@ axis2_test_svc_client_blocking( axis2_endpoint_ref_t *endpoint_ref = NULL; axutil_allocator_t *allocator = axutil_allocator_init(NULL); - env = axutil_env_create(allocator); axiom_element_t *result_ele = NULL; const axis2_char_t *echo_text = "echo_text"; axis2_char_t *result = NULL; + env = axutil_env_create(allocator); address = "http://localhost:9090/axis2/services/echo/echo"; endpoint_ref = axis2_endpoint_ref_create(env, address); client_home = AXIS2_GETENV("AXIS2C_HOME"); @@ -83,6 +83,7 @@ axis2_test_svc_client_blocking( printf("axis2_test SVC_CLIENT_SEND_RECEIVE FAILURE\n"); } } + axis2_svc_client_free(svc_client, env); } diff --git a/test/core/clientapi/test_svc_client_handler_count.c b/test/core/clientapi/test_svc_client_handler_count.c index a4904dd..0a05567 100644 --- a/test/core/clientapi/test_svc_client_handler_count.c +++ b/test/core/clientapi/test_svc_client_handler_count.c @@ -12,10 +12,10 @@ main( int i; for (i = 1; i <= TIMES; ++i) { - printf("%d\n", i); axis2_svc_client_t *svc_client = axis2_svc_client_create(env, AXIS2_GETENV("AXIS2C_HOME")); axis2_svc_client_free(svc_client, env); + printf("%d\n", i); } axutil_env_free(env); return 0; diff --git a/test/core/context/Makefile.am b/test/core/context/Makefile.am index 52bf04a..b205f3f 100644 --- a/test/core/context/Makefile.am +++ b/test/core/context/Makefile.am @@ -11,11 +11,12 @@ test_context_LDADD = ../../../util/src/libaxutil.la \ ../../../axiom/src/parser/$(WRAPPER_DIR)/libaxis2_parser.la \ $(top_builddir)/src/core/engine/libaxis2_engine.la \ $(top_builddir)/src/core/transport/http/common/libaxis2_http_common.la \ - $(top_builddir)/neethi/src/libneethi.la + $(top_builddir)/neethi/src/libneethi.la -INCLUDES = -I${CUTEST_HOME}/include \ +INCLUDES = -I$(CUTEST_HOME)/include \ -I$(top_builddir)/src/xml/guththila/src \ -I$(top_builddir)/include \ -I$(top_builddir)/src/core/description \ -I ../../../util/include \ - -I ../../../axiom/include + -I ../../../axiom/include \ + -I ../../../cutest/include diff --git a/test/core/context/test_context.c b/test/core/context/test_context.c index 253691a..2066ac5 100644 --- a/test/core/context/test_context.c +++ b/test/core/context/test_context.c @@ -22,9 +22,10 @@ #include #include #include +#include void -axis2_test_conf_ctx_init( +axis2_test_conf_ctx_init(axutil_env_t *env ) { struct axis2_conf *conf = NULL; @@ -45,38 +46,50 @@ axis2_test_conf_ctx_init( struct axutil_hash_t *op_ctx_map = NULL; struct axutil_hash_t *svc_ctx_map = NULL; struct axutil_hash_t *svc_grp_ctx_map = NULL; - axis2_status_t status = AXIS2_FAILURE; - axutil_allocator_t *allocator = axutil_allocator_init(NULL); - const axutil_env_t *env = axutil_env_create(allocator); conf = axis2_conf_create(env); - - op = axis2_op_create(env); + CUT_ASSERT_PTR_NOT_EQUAL(conf, NULL, 1); conf_ctx = axis2_conf_ctx_create(env, conf); - + CUT_ASSERT_PTR_NOT_EQUAL(conf_ctx, NULL, 1); + svc_grp1 = axis2_svc_grp_create(env); + CUT_ASSERT_PTR_NOT_EQUAL(svc_grp1, NULL, 0); svc_grp2 = axis2_svc_grp_create(env); + CUT_ASSERT_PTR_NOT_EQUAL(svc_grp2, NULL, 0); svc_grp_ctx1 = axis2_svc_grp_ctx_create(env, svc_grp1, conf_ctx); + CUT_ASSERT_PTR_NOT_EQUAL(svc_grp_ctx1, NULL, 0); svc_grp_ctx2 = axis2_svc_grp_ctx_create(env, svc_grp2, conf_ctx); + CUT_ASSERT_PTR_NOT_EQUAL(svc_grp_ctx2, NULL, 0); qname1 = axutil_qname_create(env, "name1", NULL, NULL); + CUT_ASSERT_PTR_NOT_EQUAL(qname1, NULL, 0); qname2 = axutil_qname_create(env, "name2", NULL, NULL); + CUT_ASSERT_PTR_NOT_EQUAL(qname2, NULL, 0); svc1 = axis2_svc_create_with_qname(env, qname1); + CUT_ASSERT_PTR_NOT_EQUAL(svc1, NULL, 0); svc2 = axis2_svc_create_with_qname(env, qname2); + CUT_ASSERT_PTR_NOT_EQUAL(svc2, NULL, 0); svc_ctx1 = axis2_svc_ctx_create(env, svc1, svc_grp_ctx1); + CUT_ASSERT_PTR_NOT_EQUAL(svc_ctx1, NULL, 0); svc_ctx2 = axis2_svc_ctx_create(env, svc2, svc_grp_ctx2); + CUT_ASSERT_PTR_NOT_EQUAL(svc_ctx1, NULL, 0); op = axis2_op_create(env); + CUT_ASSERT_PTR_NOT_EQUAL(op, NULL, 0); + op_ctx1 = axis2_op_ctx_create(env, op, svc_ctx1); + CUT_ASSERT_PTR_NOT_EQUAL(op_ctx1, NULL, 0); + op_ctx2 = axis2_op_ctx_create(env, op, svc_ctx2); + CUT_ASSERT_PTR_NOT_EQUAL(op_ctx2, NULL, 0); op_ctx_map = axis2_conf_ctx_get_op_ctx_map(conf_ctx, env); - + CUT_ASSERT_PTR_NOT_EQUAL(op_ctx_map, NULL, 0); if (op_ctx_map) { axutil_hash_set(op_ctx_map, "op_ctx1", AXIS2_HASH_KEY_STRING, op_ctx1); @@ -84,7 +97,7 @@ axis2_test_conf_ctx_init( } svc_ctx_map = axis2_conf_ctx_get_svc_ctx_map(conf_ctx, env); - + CUT_ASSERT_PTR_NOT_EQUAL(svc_ctx_map, NULL, 0); if (svc_ctx_map) { axutil_hash_set(svc_ctx_map, "svc_ctx1", AXIS2_HASH_KEY_STRING, @@ -94,6 +107,7 @@ axis2_test_conf_ctx_init( } svc_grp_ctx_map = axis2_conf_ctx_get_svc_grp_ctx_map(conf_ctx, env); + CUT_ASSERT_PTR_NOT_EQUAL(svc_grp_ctx_map, NULL, 0); if (svc_grp_ctx_map) { @@ -104,13 +118,14 @@ axis2_test_conf_ctx_init( } status = axis2_conf_ctx_init(conf_ctx, env, conf); - - if (status != AXIS2_SUCCESS) - { - printf("ERROR %d\n", status); - } - else - printf("SUCCESS\n"); + CUT_ASSERT_INT_EQUAL(status, AXIS2_SUCCESS, 0); + printf("Error code : %d\n", env->error->error_number); + /* + CUT_ASSERT_INT_EQUAL(env->error->status_code, AXIS2_SUCCESS, 0); + */ + + /* To avoid warning of not using cut_str_equal */ + CUT_ASSERT_STR_EQUAL("", "", 0); axis2_conf_ctx_free(conf_ctx, env); } @@ -119,6 +134,12 @@ int main( ) { - axis2_test_conf_ctx_init(); + axutil_env_t *env = cut_setup_env("Context"); + CUT_ASSERT(env != NULL); + if (env) { + axis2_test_conf_ctx_init(env); + axutil_env_free(env); + } + CUT_RETURN_ON_FAILURE(-1); return 0; } diff --git a/test/core/deployment/Makefile.am b/test/core/deployment/Makefile.am index ff0cfb8..539ea0f 100644 --- a/test/core/deployment/Makefile.am +++ b/test/core/deployment/Makefile.am @@ -10,16 +10,18 @@ test_deployment_LDADD = \ ../../../axiom/src/parser/$(WRAPPER_DIR)/libaxis2_parser.la \ $(top_builddir)/neethi/src/libneethi.la \ $(top_builddir)/src/core/engine/libaxis2_engine.la \ - $(top_builddir)/src/core/transport/http/common/libaxis2_http_common.la + $(top_builddir)/src/core/transport/http/common/libaxis2_http_common.la -INCLUDES = -I$(top_builddir)/include \ - -I$(top_builddir)/src/core/description \ - -I$(top_builddir)/src/core/context \ - -I$(top_builddir)/src/core/phaseresolver \ - -I$(top_builddir)/src/core/deployment \ - -I$(top_builddir)/src/core/engine \ - -I$(top_builddir)/src/core/clientapi \ - -I$(top_builddir)/src/core/util \ +INCLUDES = -I ../../../include \ + -I$(CUTEST_HOME)/include \ + -I ../../../src/core/description \ + -I ../../../src/core/context \ + -I ../../../src/core/phaseresolver \ + -I ../../../src/core/deployment \ + -I ../../../src/core/engine \ + -I ../../../src/core/clientapi \ + -I ../../../src/core/util \ -I ../../../util/include \ -I ../../../axiom/include \ - -I ../../../neethi/include + -I ../../../neethi/include \ + -I ../../../cutest/include diff --git a/test/core/deployment/test_deployment.c b/test/core/deployment/test_deployment.c index d0730d8..761f398 100644 --- a/test/core/deployment/test_deployment.c +++ b/test/core/deployment/test_deployment.c @@ -31,11 +31,10 @@ #include #include #include +#include -const axutil_env_t *env = NULL; - -int -axis2_test_dep_engine_load( +void +axis2_test_dep_engine_load(axutil_env_t *env ) { axis2_dep_engine_t *dep_engine = NULL; @@ -44,35 +43,19 @@ axis2_test_dep_engine_load( axutil_array_list_t *in_phases = NULL; axis2_char_t *axis2c_home = NULL; - printf("******************************************\n"); - printf("testing dep_engine_load method \n"); - printf("******************************************\n"); - axis2c_home = AXIS2_GETENV("AXIS2C_HOME"); dep_engine = axis2_dep_engine_create_with_repos_name(env, axis2c_home); - if (!dep_engine) - { - printf("dep engine is not created \n"); - return -1; - } + CUT_ASSERT_PTR_NOT_EQUAL(dep_engine, NULL, 1); conf = axis2_dep_engine_load(dep_engine, env); axis2_conf_set_dep_engine(conf, env, dep_engine); - if (!conf) - { - printf("conf is NULL\n)"); - return -1; - } - + CUT_ASSERT_PTR_NOT_EQUAL(conf, NULL, 1); svc_map = axis2_conf_get_all_svcs(conf, env); - if (svc_map) - printf("svc_map count = %d\n", axutil_hash_count(svc_map)); - else - printf("svc_map count = zero\n"); - + CUT_ASSERT_PTR_NOT_EQUAL(svc_map, NULL, 0); if (svc_map) { axutil_hash_index_t *hi = NULL; void *service = NULL; + printf("svc_map count = %d\n", axutil_hash_count(svc_map)); for (hi = axutil_hash_first(svc_map, env); hi; hi = axutil_hash_next(env, hi)) { @@ -91,12 +74,11 @@ axis2_test_dep_engine_load( ops = axis2_svc_get_all_ops(svc, env); if (ops) { - printf("ops count = %d\n", axutil_hash_count(ops)); - axutil_hash_index_t *hi2 = NULL; void *op = NULL; axis2_char_t *oname = NULL; - + printf("ops count = %d\n", axutil_hash_count(ops)); + for (hi2 = axutil_hash_first(ops, env); hi2; hi2 = axutil_hash_next(env, hi2)) { @@ -119,21 +101,18 @@ axis2_test_dep_engine_load( in_phases = axis2_conf_get_in_phases_upto_and_including_post_dispatch(conf, env); - if (!in_phases) - { - printf("in phases up to and including post dispatch is NULL\n"); - } - else - { - printf("dep engine load is successfull\n"); - } + CUT_ASSERT_PTR_NOT_EQUAL(in_phases, NULL, 0); + CUT_ASSERT_INT_EQUAL(env->error->status_code, AXIS2_SUCCESS, 0); + + /* To avoid warning of not using cut_str_equal */ + CUT_ASSERT_STR_EQUAL("", "", 0); + axis2_conf_free(conf, env); - return 0; } int -axis2_test_transport_receiver_load( +axis2_test_transport_receiver_load(axutil_env_t *env ) { axutil_dll_desc_t *dll_desc = NULL; @@ -169,7 +148,7 @@ axis2_test_transport_receiver_load( } int -axis2_test_transport_sender_load( +axis2_test_transport_sender_load(axutil_env_t *env ) { axutil_dll_desc_t *dll_desc = NULL; @@ -203,8 +182,8 @@ axis2_test_transport_sender_load( return 0; } -int -axis2_test_default_module_version( +void +axis2_test_default_module_version(axutil_env_t *env ) { @@ -226,9 +205,6 @@ axis2_test_default_module_version( axis2_bool_t found2 = AXIS2_FALSE; axis2_bool_t found3 = AXIS2_FALSE; - printf("******************************************\n"); - printf("testing axis2_default_module_version\n"); - printf("******************************************\n"); axis_conf = axis2_conf_create(env); mod_qname1 = axutil_qname_create(env, "module1", NULL, NULL); @@ -256,24 +232,13 @@ axis2_test_default_module_version( (axis_conf, env), axis_conf); def_mod = axis2_conf_get_default_module(axis_conf, env, "module1"); - if (def_mod != module1) - { - printf("axis2_default_module_version (module1) .. FAILED\n"); - return AXIS2_FAILURE; - } - def_mod = axis2_conf_get_default_module(axis_conf, env, "module2"); - if (def_mod != module3) - { - printf("axis2_default_module_version (module2) .. FAILED\n"); - return AXIS2_FAILURE; - } - def_mod = axis2_conf_get_default_module(axis_conf, env, "test_module"); - if (def_mod != module5) - { - printf("axis2_default_module_version (test_module) .. FAILED\n"); - return AXIS2_FAILURE; - } - engage_qname = axutil_qname_create(env, "module2", NULL, NULL); + CUT_ASSERT_PTR_EQUAL(def_mod, module1, 0); + def_mod = axis2_conf_get_default_module(axis_conf, env, "module2-0.92"); + CUT_ASSERT_PTR_EQUAL(def_mod, module3, 0); + def_mod = axis2_conf_get_default_module(axis_conf, env, "test_module-1.92"); + CUT_ASSERT_PTR_EQUAL(def_mod, module5, 0); + + engage_qname = axutil_qname_create(env, "module2-0.92", NULL, NULL); axis2_conf_engage_module(axis_conf, env, engage_qname); axutil_qname_free(engage_qname, env); engage_qname = NULL; @@ -287,12 +252,13 @@ axis2_test_default_module_version( "1.92"); engaged_modules = axis2_conf_get_all_engaged_modules(axis_conf, env); - + CUT_ASSERT_PTR_NOT_EQUAL(engaged_modules, NULL, 0); if (engaged_modules) { int list_size = 0; int i = 0; list_size = axutil_array_list_size(engaged_modules, env); + CUT_ASSERT_INT_EQUAL(list_size, 3, 0); for (i = 0; i < list_size; i++) { axutil_qname_t *engaged_mod_qname = NULL; @@ -318,43 +284,24 @@ axis2_test_default_module_version( } } - if (AXIS2_FALSE == found1) - { - printf("axis2_default_module_version (module2 engaging) .. FAILED\n"); - return AXIS2_FAILURE; - } - if (AXIS2_FALSE == found2) - { - printf("axis2_default_module_version (module1 engaging) .. FAILED\n"); - return AXIS2_FAILURE; - } - if (AXIS2_FALSE == found3) - { - printf - ("axis2_default_module_version (test_module engaging) .. FAILED\n"); - return AXIS2_FAILURE; - } - printf("axis2_default_module_version .. SUCCESS\n"); + CUT_ASSERT_INT_NOT_EQUAL(found1, AXIS2_FALSE, 0); + CUT_ASSERT_INT_NOT_EQUAL(found2, AXIS2_FALSE, 0); + CUT_ASSERT_INT_NOT_EQUAL(found3, AXIS2_FALSE, 0); axis2_conf_free(axis_conf, env); - return AXIS2_SUCCESS; + CUT_ASSERT_INT_EQUAL(env->error->status_code, AXIS2_SUCCESS, 0); } int main( ) { - axutil_allocator_t *allocator = NULL; - axutil_error_t *error = NULL; - axutil_log_t *log = NULL; - - allocator = axutil_allocator_init(NULL); - error = axutil_error_create(allocator); - log = axutil_log_create(allocator, NULL, "test_deployment.log"); - env = axutil_env_create_with_error_log(allocator, error, log); - env->log->level = AXIS2_LOG_LEVEL_INFO; - /*axis2_test_transport_receiver_load(); - axis2_test_transport_sender_load(); */ - axis2_test_dep_engine_load(); - axis2_test_default_module_version(); + axutil_env_t *env = cut_setup_env("Context"); + CUT_ASSERT(env != NULL); + if (env) { + axis2_test_dep_engine_load(env); + axis2_test_default_module_version(env); + axutil_env_free(env); + } + CUT_RETURN_ON_FAILURE(-1); return 0; } diff --git a/test/core/description/Makefile.am b/test/core/description/Makefile.am index 4208ddf..2ac48ed 100644 --- a/test/core/description/Makefile.am +++ b/test/core/description/Makefile.am @@ -13,6 +13,7 @@ test_description_LDADD = \ $(top_builddir)/src/core/transport/http/common/libaxis2_http_common.la INCLUDES = -I$(top_builddir)/include \ + -I$(CUTEST_HOME)/include \ -I$(top_builddir)/src/core/description \ -I$(top_builddir)/src/core/context \ -I$(top_builddir)/src/core/phaseresolver \ @@ -21,5 +22,6 @@ INCLUDES = -I$(top_builddir)/include \ -I$(top_builddir)/src/core/engine \ -I$(top_builddir)/src/core/clientapi \ -I ../../../util/include \ - -I ../../../axiom/include + -I ../../../axiom/include \ + -I ../../../cutest/include diff --git a/test/core/description/test_description.c b/test/core/description/test_description.c index 17675ba..f3ce7d3 100644 --- a/test/core/description/test_description.c +++ b/test/core/description/test_description.c @@ -1,4 +1,3 @@ - /* * Licensed to the Apache Software Foundation (ASF) under one or more * contributor license agreements. See the NOTICE file distributed with @@ -23,119 +22,100 @@ #include #include #include +#include -struct axis2_module_desc *create_module_desc( - const axutil_env_t * env); - -int -axis2_test_op_engage_module( +void +axis2_test_op_engage_module(axutil_env_t *env ) { struct axis2_module_desc *moduleref = NULL; axis2_conf_t *conf = NULL; - + struct axutil_qname *qname = NULL; + axis2_op_t *op = NULL; axis2_status_t status = AXIS2_FAILURE; - printf("******************************************\n"); - printf("testing axis2_op_engage_module\n"); - printf("******************************************\n"); - - axutil_allocator_t *allocator = axutil_allocator_init(NULL); - axutil_env_t *env = axutil_env_create(allocator); - axis2_op_t *op = axis2_op_create(env); + qname = axutil_qname_create(env, "op1", NULL, NULL); + CUT_ASSERT_PTR_NOT_EQUAL(qname, NULL, 0); + CUT_ASSERT_INT_EQUAL(env->error->status_code, AXIS2_SUCCESS, 0); + op = axis2_op_create_with_qname(env, qname); + CUT_ASSERT_PTR_NOT_EQUAL(op, NULL, 0); + CUT_ASSERT(env->error->status_code == AXIS2_SUCCESS); moduleref = axis2_module_desc_create(env); + CUT_ASSERT(moduleref != NULL); + CUT_ASSERT(env->error->status_code == AXIS2_SUCCESS); conf = axis2_conf_create(env); + CUT_ASSERT(conf != NULL); + CUT_ASSERT(env->error->status_code == AXIS2_SUCCESS); status = axis2_op_engage_module(op, env, moduleref, conf); - moduleref = NULL; - if (status != AXIS2_SUCCESS) - { - axis2_op_free(op, env); - printf("ERROR %d\n", status); - } + CUT_ASSERT(status == AXIS2_SUCCESS); + CUT_ASSERT(env->error->status_code == AXIS2_SUCCESS); + + /* To avoid warning of not using cut_str_equal */ + CUT_ASSERT_STR_EQUAL("", "", 0); axis2_op_free(op, env); - axutil_env_free(env); - return 0; } -int -axis2_test_svc_add_module_ops( +void +axis2_test_svc_add_module_ops(axutil_env_t *env ) { struct axis2_svc *svc = NULL; struct axutil_qname *qname = NULL; + struct axutil_qname *qname1 = NULL; struct axis2_module_desc *module_desc = NULL; struct axis2_conf *axis2_config = NULL; axis2_status_t status = AXIS2_FAILURE; - printf("******************************************\n"); - printf("testing axis2_svc_add_module_ops\n"); - printf("******************************************\n"); - - axutil_allocator_t *allocator = axutil_allocator_init(NULL); - const axutil_env_t *env = axutil_env_create(allocator); - qname = axutil_qname_create(env, "name1", NULL, NULL); + qname = axutil_qname_create(env, "svc1", NULL, NULL); svc = axis2_svc_create_with_qname(env, qname); - module_desc = axis2_module_desc_create(env); + CUT_ASSERT(svc != NULL); + CUT_ASSERT(env->error->status_code == AXIS2_SUCCESS); + qname1 = axutil_qname_create(env, "mod1", NULL, NULL); + module_desc = axis2_module_desc_create_with_qname(env, qname1); + CUT_ASSERT(module_desc != NULL); + CUT_ASSERT(env->error->status_code == AXIS2_SUCCESS); axis2_config = axis2_conf_create(env); + CUT_ASSERT(axis2_config != NULL); + CUT_ASSERT(env->error->status_code == AXIS2_SUCCESS); status = axis2_svc_add_module_ops(svc, env, module_desc, axis2_config); - if (status != AXIS2_SUCCESS) - { - printf("axis2_test_description_add_module_ops ERROR %d\n", status); - } - else - printf("axis2_test_add_module_ops SUCCESS\n"); + CUT_ASSERT(status == AXIS2_SUCCESS); + CUT_ASSERT(env->error->status_code == AXIS2_SUCCESS); axis2_svc_free(svc, env); - axutil_qname_free(qname, env); axis2_module_desc_free(module_desc, env); axis2_conf_free(axis2_config, env); - - return 0; } -int -axis2_test_svc_engage_module( +void axis2_test_svc_engage_module(axutil_env_t *env ) { axis2_svc_t *svc = NULL; axutil_qname_t *qname = NULL; + axutil_qname_t *qname1 = NULL; axis2_module_desc_t *moduleref = NULL; axis2_conf_t *axis2_config = NULL; axis2_status_t status = AXIS2_FAILURE; - printf("******************************************\n"); - printf("testing axis2_svc_engage_module\n"); - printf("******************************************\n"); - - axutil_allocator_t *allocator = axutil_allocator_init(NULL); - const axutil_env_t *env = axutil_env_create(allocator); - qname = axutil_qname_create(env, "name1", NULL, NULL); + qname = axutil_qname_create(env, "svc1", NULL, NULL); svc = axis2_svc_create_with_qname(env, qname); - moduleref = axis2_module_desc_create(env); + qname1 = axutil_qname_create(env, "mod1", NULL, NULL); + moduleref = axis2_module_desc_create_with_qname(env, qname1); axis2_config = axis2_conf_create(env); status = axis2_svc_engage_module(svc, env, moduleref, axis2_config); - moduleref = NULL; - if (status != AXIS2_SUCCESS) - { - printf("axis2_test_description_svc_engage_module ERROR %d\n", status); - } - else - printf("axis2_test_svc_engage_module SUCCESS\n"); + CUT_ASSERT(status == AXIS2_SUCCESS); + CUT_ASSERT(env->error->status_code == AXIS2_SUCCESS); axis2_svc_free(svc, env); - axutil_qname_free(qname, env); axis2_conf_free(axis2_config, env); - - return 0; } -int -axis2_test_svc_get_op( +void +axis2_test_svc_get_op(axutil_env_t *env ) { struct axis2_svc *svc = NULL; @@ -144,12 +124,6 @@ axis2_test_svc_get_op( struct axis2_op *op = NULL; axis2_status_t status = AXIS2_SUCCESS; - printf("******************************************\n"); - printf("testing axis2_svc_get_op\n"); - printf("******************************************\n"); - - axutil_allocator_t *allocator = axutil_allocator_init(NULL); - const axutil_env_t *env = axutil_env_create(allocator); qname = axutil_qname_create(env, "op1", NULL, NULL); op = axis2_op_create_with_qname(env, qname); qname = axutil_qname_create(env, "svc1", NULL, NULL); @@ -162,23 +136,16 @@ axis2_test_svc_get_op( status = axis2_svc_add_op(svc, env, op); ops = axis2_svc_get_all_ops(svc, env); - - if (ops) - printf("SUCCESS AXIS2_SVC_GET_OPS\n"); - else - { - printf("ERROR AXIS2_SVC_GET_OPS\n"); - return -1; - } + CUT_ASSERT(ops != NULL); + CUT_ASSERT(env->error->status_code == AXIS2_SUCCESS); if (ops) { - printf("ops count = %d\n", axutil_hash_count(ops)); - axutil_hash_index_t *hi2 = NULL; void *op2 = NULL; axis2_char_t *oname = NULL; int count = 0; + printf("ops count = %d\n", axutil_hash_count(ops)); for (hi2 = axutil_hash_first(ops, env); hi2; hi2 = axutil_hash_next(env, hi2)) @@ -199,17 +166,23 @@ axis2_test_svc_get_op( } else printf("ops count = zero\n"); + CUT_ASSERT(env->error->status_code == AXIS2_SUCCESS); - return 0; } int main( ) { - axis2_test_op_engage_module(); - axis2_test_svc_add_module_ops(); - axis2_test_svc_engage_module(); - axis2_test_svc_get_op(); + axutil_env_t *env = cut_setup_env("Core description"); + CUT_ASSERT(env != NULL); + if (env) { + axis2_test_op_engage_module(env); + axis2_test_svc_add_module_ops(env); + axis2_test_svc_engage_module(env); + axis2_test_svc_get_op(env); + axutil_env_free(env); + } + CUT_RETURN_ON_FAILURE(-1); return 0; } diff --git a/test/core/engine/Makefile.am b/test/core/engine/Makefile.am index c7d3b7d..9b2a70a 100644 --- a/test/core/engine/Makefile.am +++ b/test/core/engine/Makefile.am @@ -12,14 +12,16 @@ test_engine_LDADD = \ ../../../axiom/src/parser/$(WRAPPER_DIR)/libaxis2_parser.la \ $(top_builddir)/src/core/engine/libaxis2_engine.la \ $(top_builddir)/src/core/transport/http/common/libaxis2_http_common.la \ - $(top_builddir)/neethi/src/libneethi.la + $(top_builddir)/neethi/src/libneethi.la INCLUDES = -I$(top_builddir)/src/xml/guththila \ + -I$(CUTEST_HOME)/include \ -I$(top_builddir)/include \ -I$(top_builddir)/src/core/description \ -I$(top_builddir)/src/core/deployment \ -I$(top_builddir)/src/core/engine \ -I ../../../util/include \ -I ../../../axiom/include \ - -I ../../../neethi/include + -I ../../../neethi/include \ + -I ../../../cutest/include diff --git a/test/core/engine/test_engine.c b/test/core/engine/test_engine.c index 4df5b1d..e189fb3 100644 --- a/test/core/engine/test_engine.c +++ b/test/core/engine/test_engine.c @@ -21,17 +21,15 @@ #include #include #include -#include +#include +/* #include */ -int -axis2_test_engine_send( +void +axis2_test_engine_send(axutil_env_t *env ) { axis2_status_t status = AXIS2_FAILURE; - axutil_allocator_t *allocator = axutil_allocator_init(NULL); - const axutil_env_t *env = axutil_env_create(allocator); struct axis2_conf *conf = NULL; - conf = axis2_conf_create(env); struct axis2_conf_ctx *conf_ctx; struct axis2_msg_ctx *msg_ctx; @@ -42,7 +40,9 @@ axis2_test_engine_send( struct axis2_svc_grp *svc_grp; struct axis2_svc_grp_ctx *svc_grp_ctx; struct axutil_qname *qname; - + axis2_engine_t *engine = NULL; + + conf = axis2_conf_create(env); conf_ctx = axis2_conf_ctx_create(env, conf); svc_grp = axis2_svc_grp_create(env); @@ -61,14 +61,15 @@ axis2_test_engine_send( axis2_msg_ctx_set_op_ctx(msg_ctx, env, op_ctx); axis2_msg_ctx_set_svc_ctx(msg_ctx, env, svc_ctx); - axis2_engine_t *engine = axis2_engine_create(env, conf_ctx); + engine = axis2_engine_create(env, conf_ctx); status = axis2_engine_send(engine, env, msg_ctx); - if (status != AXIS2_SUCCESS) - { - printf("axis2_test_engine_send ERROR %d\n", status); - } - else - printf("axis2_test_engine_send SUCCESS\n"); + CUT_ASSERT_INT_NOT_EQUAL(status, AXIS2_SUCCESS, 0); + printf("Error code : %d\n", env->error->error_number); + + /* To avoid warning of not using cut_str_equal */ + CUT_ASSERT_STR_EQUAL("", "", 0); + /* To avoid warning of not using cut_ptr_equal */ + CUT_ASSERT_PTR_EQUAL("", "", 0); axis2_conf_ctx_free(conf_ctx, env); axis2_msg_ctx_free(msg_ctx, env); @@ -79,45 +80,43 @@ axis2_test_engine_send( axis2_op_ctx_free(op_ctx, env); axis2_op_free(op, env); axis2_engine_free(engine, env); - return 0; } -int -axis2_test_engine_receive( +void +axis2_test_engine_receive(axutil_env_t *env ) { axis2_status_t status = AXIS2_FAILURE; - axutil_allocator_t *allocator = axutil_allocator_init(NULL); - const axutil_env_t *env = axutil_env_create(allocator); axis2_conf_t *conf = NULL; - conf = axis2_conf_create(env); - struct axis2_conf_ctx *conf_ctx; struct axis2_msg_ctx *msg_ctx; + axis2_engine_t *engine = NULL; + + conf = axis2_conf_create(env); conf_ctx = axis2_conf_ctx_create(env, conf); msg_ctx = axis2_msg_ctx_create(env, conf_ctx, NULL, NULL); - axis2_engine_t *engine = axis2_engine_create(env, conf_ctx); + engine = axis2_engine_create(env, conf_ctx); status = axis2_engine_receive(engine, env, msg_ctx); - if (status != AXIS2_SUCCESS) - { - printf("axis2_test_engine_receive ERROR %d\n", status); - } - else - printf("axis2_test_engine_receive SUCCESS\n"); + CUT_ASSERT_INT_EQUAL(status, AXIS2_SUCCESS, 0); axis2_conf_ctx_free(conf_ctx, env); axis2_msg_ctx_free(msg_ctx, env); axis2_engine_free(engine, env); - return 0; } int main( ) { - axis2_test_engine_send(); - axis2_test_engine_receive(); + axutil_env_t *env = cut_setup_env("Core engine"); + CUT_ASSERT(env != NULL); + if (env) { + axis2_test_engine_send(env); + axis2_test_engine_receive(env); + axutil_env_free(env); + } + CUT_RETURN_ON_FAILURE(-1); return 0; } diff --git a/test/core/transport/http/Makefile.am b/test/core/transport/http/Makefile.am index f709259..2370f6e 100644 --- a/test/core/transport/http/Makefile.am +++ b/test/core/transport/http/Makefile.am @@ -1,21 +1,40 @@ -TESTS = test_http_transport -check_PROGRAMS = test_http_transport -noinst_PROGRAMS = test_http_transport +TESTS = test_http_server test_http_transport +check_PROGRAMS = test_http_transport test_http_server +noinst_PROGRAMS = test_http_transport test_http_server SUBDIRS = -AM_CFLAGS = -g +AM_CFLAGS = -g -pthread test_http_transport_SOURCES = test_http_transport.c +test_http_server_SOURCES = test_http_server.c test_http_transport_LDADD = \ - $(LDFLAGS) \ - ../../../../util/src/libaxutil.la \ - ../../../../axiom/src/om/libaxis2_axiom.la \ - $(top_builddir)/neethi/src/libneethi.la \ - ../../../../axiom/src/parser/$(WRAPPER_DIR)/libaxis2_parser.la \ - $(top_builddir)/src/core/engine/libaxis2_engine.la \ - $(top_builddir)/src/core/transport/http/sender/libaxis2_http_sender.la + $(LDFLAGS) \ + ../../../../util/src/libaxutil.la \ + ../../../../axiom/src/om/libaxis2_axiom.la \ + $(top_builddir)/neethi/src/libneethi.la \ + ../../../../axiom/src/parser/$(WRAPPER_DIR)/libaxis2_parser.la \ + $(top_builddir)/src/core/engine/libaxis2_engine.la \ + $(top_builddir)/src/core/transport/http/receiver/libaxis2_http_receiver.la \ + $(top_builddir)/src/core/transport/http/sender/libaxis2_http_sender.la -INCLUDES = -I${CUTEST_HOME}/include \ - -I$(top_builddir)/include \ - -I ../../../../util/include \ - -I ../../../../axiom/include +test_http_server_LDADD = \ + $(LDFLAGS) \ + $(top_builddir)/src/core/transport/http/util/libaxis2_http_util.la \ + $(top_builddir)/src/core/transport/http/common/libaxis2_http_common.la \ + $(top_builddir)/axiom/src/om/libaxis2_axiom.la \ + $(top_builddir)/util/src/libaxutil.la \ + $(top_builddir)/axiom/src/parser/$(WRAPPER_DIR)/libaxis2_parser.la \ + $(top_builddir)/src/core/description/libaxis2_description.la \ + $(top_builddir)/src/core/deployment/libaxis2_deployment.la \ + $(top_builddir)/src/core/context/libaxis2_context.la \ + $(top_builddir)/src/core/clientapi/libaxis2_clientapi.la \ + $(top_builddir)/src/core/engine/libaxis2_engine.la \ + $(top_builddir)/src/core/transport/http/sender/libaxis2_http_sender.la \ + $(top_builddir)/src/core/transport/http/receiver/libaxis2_http_receiver.la \ + $(top_builddir)/neethi/src/libneethi.la + +INCLUDES = -I$(CUTEST_HOME)/include \ + -I$(top_builddir)/include \ + -I ../../../../util/include \ + -I ../../../../axiom/include \ + -I ../../../../cutest/include diff --git a/test/core/transport/http/test_http_transport.c b/test/core/transport/http/test_http_transport.c index d961316..bee1068 100644 --- a/test/core/transport/http/test_http_transport.c +++ b/test/core/transport/http/test_http_transport.c @@ -1,4 +1,3 @@ - /* * Licensed to the Apache Software Foundation (ASF) under one or more * contributor license agreements. See the NOTICE file distributed with @@ -23,29 +22,15 @@ #include #include #include - -typedef struct a -{ - axis2_char_t *value; -} -a; - -axutil_env_t * -test_init( - ) -{ - axutil_allocator_t *allocator = axutil_allocator_init(NULL); - axutil_error_t *error = axutil_error_create(allocator); - axutil_env_t *env = axutil_env_create_with_error(allocator, error); - return env; -} +#include +#include void test_http_request_line( const axutil_env_t * env) { - const char *request_line_str = - "POST http://ws.apache.org/axis2/c/services/test_svc/test_op?x=1 HTTP/1.1\r\n"; + char *request_line_str = axutil_strdup(env, + "POST http://ws.apache.org/axis2/c/services/test_svc/test_op?x=1 HTTP/1.1\r\n"); axis2_http_request_line_t *request_line; printf("Starting http_request_line tests\n"); @@ -54,6 +39,14 @@ test_http_request_line( axis2_http_request_line_get_method(request_line, env), axis2_http_request_line_get_uri(request_line, env), axis2_http_request_line_get_http_version(request_line, env)); + + /* To avoid warning of not using cut_ptr_equal */ + CUT_ASSERT_PTR_EQUAL(NULL, NULL, 0); + /* To avoid warning of not using cut_int_equal */ + CUT_ASSERT_INT_EQUAL(0, 0, 0); + /* To avoid warning of not using cut_str_equal */ + CUT_ASSERT_STR_EQUAL("", "", 0); + axis2_http_request_line_free(request_line, env); printf("Finished http_request_line tests ..........\n\n"); } @@ -85,14 +78,14 @@ test_http_header( { const char *header_name = "Content-Type"; const char *header_value = "text/xml"; - const char *str_header = "Content-Type: text/xml; charset=UTF-8\r\n"; + const char *str_header = axutil_strdup(env,"Content-Type: text/xml; charset=UTF-8\r\n"); axis2_http_header_t *http_header; axis2_char_t *external_form = NULL; printf("Starting http_header tests\n"); http_header = axis2_http_header_create(env, header_name, header_value); external_form = axis2_http_header_to_external_form(http_header, env); - printf("Heder Name :%s|Header Value:%s|External Form:%s\n", + printf("Header Name :%s|Header Value:%s|External Form:%s\n", axis2_http_header_get_name(http_header, env), axis2_http_header_get_value(http_header, env), external_form); AXIS2_FREE(env->allocator, external_form); @@ -124,46 +117,59 @@ test_url( void test_http_client( - const axutil_env_t * env) + axutil_env_t * env) { axis2_http_client_t *client = NULL; axis2_http_simple_request_t *request = NULL; axis2_http_request_line_t *request_line = NULL; axutil_url_t *url = NULL; axis2_http_header_t *header = NULL; - axutil_stream_t *request_body = NULL; axis2_http_simple_response_t *response = NULL; - int status = 0; + axis2_status_t status; char *body_bytes = NULL; int body_bytes_len = 0; - + char * content ="echo5"; + char tmpbuf[100]; printf("Starting http_client tests\n"); - request_line = axis2_http_request_line_create(env, "GET", - "/axis2/services", - "HTTP/1.0"); - request_body = axutil_stream_create_basic(env); + if ( ut_start_http_server(env) != 0 ) return; + request_line = axis2_http_request_line_create(env, "POST", + "/axis2/services/echo/echo", + "HTTP/1.1"); request = axis2_http_simple_request_create(env, request_line, NULL, 0, NULL); - url = axutil_url_create(env, "http", "localhost", 80, NULL); + axis2_http_simple_request_set_body_string(request, env, content, strlen(content)); + url = axutil_url_create(env, "http", "localhost", 9090, NULL); + sprintf(tmpbuf,"%s:%d", axutil_url_get_host(url, env), axutil_url_get_port(url, env)); header = - axis2_http_header_create(env, "Host", axutil_url_get_host(url, env)); + axis2_http_header_create(env, "Host", tmpbuf); + axis2_http_simple_request_add_header(request, env, header); + header = + axis2_http_header_create(env, "Content-Type", "application/soap+xml"); + axis2_http_simple_request_add_header(request, env, header); + sprintf(tmpbuf,"%d", (int) strlen(content)); + header = + axis2_http_header_create(env, "Content-Length", tmpbuf); axis2_http_simple_request_add_header(request, env, header); client = axis2_http_client_create(env, url); + AXIS2_LOG_DEBUG(env->log, AXIS2_LOG_SI, "Trying to call axis2_http_client_send"); status = axis2_http_client_send(client, env, request, NULL); - if (status < 0) + CUT_ASSERT(status == AXIS2_SUCCESS); + if (status != AXIS2_SUCCESS) { - printf("Test FAILED .........Can't send the request. Status :%d\n", + printf("Test FAILED .........Can't send the request. Status : %d\n", status); return; } - status = axis2_http_client_receive_header(client, env); - if (status < 0) + status = axis2_http_client_recieve_header(client, env); + CUT_ASSERT(status == 200); + if (status != 200) { printf("Test FAILED ......... Can't recieve. Status: %d\n", status); return; } response = axis2_http_client_get_response(client, env); + CUT_ASSERT(response != NULL); if (!response) { printf("Test Failed : NULL response"); @@ -180,7 +186,7 @@ test_http_client( axis2_http_client_free(client, env); axis2_http_simple_request_free(request, env); - axutil_stream_free(request_body, env); + ut_stop_http_server(env); AXIS2_FREE(env->allocator, body_bytes); printf("Finished http_client tests ..........\n\n"); } @@ -208,7 +214,7 @@ test_https_client( request_body = axutil_stream_create_basic(env); request = axis2_http_simple_request_create(env, request_line, NULL, 0, NULL); - url = axutil_url_create(env, "https", "localhost", 9090, NULL); + url = axutil_url_create(env, "https", "localhost", 9099, NULL); header = axis2_http_header_create(env, "Host", axutil_url_get_host(url, env)); @@ -229,10 +235,10 @@ test_https_client( status); return; } - status = axis2_http_client_receive_header(client, env); + status = axis2_http_client_recieve_header(client, env); if (status < 0) { - printf("Test FAILED ......... Can't receive. Status: %d\n", status); + printf("Test FAILED ......... Can't recieve. Status: %d\n", status); return; } response = axis2_http_client_get_response(client, env); @@ -261,14 +267,18 @@ int main( void) { - axutil_env_t *env = test_init(); - test_http_request_line(env); - test_http_status_line(env); - test_http_header(env); - test_http_client(env); - test_https_client(env); - test_url(env); - - axutil_env_free(env); + axutil_env_t *env = cut_setup_env("test HTTP server"); + CUT_ASSERT(env != NULL); + if ( env != NULL ) { + test_http_request_line(env); + test_http_status_line(env); + test_http_header(env); + test_http_client(env); + test_https_client(env); + test_url(env); + axutil_env_free(env); + } + CUT_RETURN_ON_FAILURE(-1); return 0; } + -- cgit v1.1-32-gdbae