From a911b08bc4d244b6cefc5f844796d140c4429cae Mon Sep 17 00:00:00 2001 From: Slava Monich Date: Fri, 11 Mar 2016 19:46:40 +0200 Subject: [PATCH] [test] Added test_retrieve_order --- mms-lib/test/Makefile | 1 + mms-lib/test/common/test_connman.c | 23 + mms-lib/test/common/test_handler.c | 73 ++- mms-lib/test/common/test_handler.h | 33 +- mms-lib/test/common/test_http.c | 143 ++++-- mms-lib/test/common/test_http.h | 18 +- mms-lib/test/coverage/run | 3 +- mms-lib/test/test_retrieve/test_retrieve.c | 9 +- mms-lib/test/test_retrieve_order/Makefile | 7 + .../data/Order/m-notification1.ind | Bin 0 -> 131 bytes .../data/Order/m-notification2.ind | Bin 0 -> 117 bytes .../data/Order/m-retrieve1.conf | Bin 0 -> 83241 bytes .../data/Order/m-retrieve2.conf | Bin 0 -> 66368 bytes .../test_retrieve_order/test_retrieve_order.c | 435 ++++++++++++++++++ 14 files changed, 687 insertions(+), 58 deletions(-) create mode 100644 mms-lib/test/test_retrieve_order/Makefile create mode 100644 mms-lib/test/test_retrieve_order/data/Order/m-notification1.ind create mode 100644 mms-lib/test/test_retrieve_order/data/Order/m-notification2.ind create mode 100644 mms-lib/test/test_retrieve_order/data/Order/m-retrieve1.conf create mode 100644 mms-lib/test/test_retrieve_order/data/Order/m-retrieve2.conf create mode 100644 mms-lib/test/test_retrieve_order/test_retrieve_order.c diff --git a/mms-lib/test/Makefile b/mms-lib/test/Makefile index f566ce9..74eb11a 100644 --- a/mms-lib/test/Makefile +++ b/mms-lib/test/Makefile @@ -11,4 +11,5 @@ all: @$(MAKE) -C test_retrieve $* @$(MAKE) -C test_retrieve_cancel $* @$(MAKE) -C test_retrieve_no_proxy $* + @$(MAKE) -C test_retrieve_order $* @$(MAKE) -C test_send $* diff --git a/mms-lib/test/common/test_connman.c b/mms-lib/test/common/test_connman.c index 4f63f31..595671f 100644 --- a/mms-lib/test/common/test_connman.c +++ b/mms-lib/test/common/test_connman.c @@ -38,6 +38,27 @@ G_DEFINE_TYPE(MMSConnManTest, mms_connman_test, MMS_TYPE_CONNMAN); #define MMS_CONNMAN_TEST(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj),\ MMS_TYPE_CONNMAN_TEST, MMSConnManTest)) +static +gboolean +mms_connman_test_busy_cb( + gpointer data) +{ + MMSConnManTest* test = MMS_CONNMAN_TEST(data); + mms_connman_busy_dec(&test->cm); + mms_connman_ref(&test->cm); + return G_SOURCE_REMOVE; +} + +static +void +mms_connman_test_make_busy( + MMSConnManTest* test) +{ + mms_connman_ref(&test->cm); + mms_connman_busy_inc(&test->cm); + g_idle_add(mms_connman_test_busy_cb, test); +} + void mms_connman_test_set_port( MMSConnMan* cm, @@ -74,6 +95,7 @@ mms_connman_test_close_connection( MMSConnManTest* test = MMS_CONNMAN_TEST(cm); if (test->conn) { MMS_DEBUG("Closing connection..."); + mms_connman_test_make_busy(test); mms_connection_close(test->conn); mms_connection_unref(test->conn); test->conn = NULL; @@ -111,6 +133,7 @@ mms_connman_test_open_connection( if (test->offline) { return NULL; } else { + mms_connman_test_make_busy(test); test->conn = mms_connection_test_new(imsi, test->port, test->proxy); if (test->connect_fn) test->connect_fn(test->connect_param); return mms_connection_ref(test->conn); diff --git a/mms-lib/test/common/test_handler.c b/mms-lib/test/common/test_handler.c index 3c1d475..bd275d0 100644 --- a/mms-lib/test/common/test_handler.c +++ b/mms-lib/test/common/test_handler.c @@ -1,5 +1,5 @@ /* - * Copyright (C) 2013-2015 Jolla Ltd. + * Copyright (C) 2013-2016 Jolla Ltd. * Contact: Slava Monich * * This program is free software; you can redistribute it and/or modify @@ -30,10 +30,8 @@ typedef struct mms_handler_test { MMSDispatcher* dispatcher; mms_handler_test_prenotify_fn prenotify_fn; mms_handler_test_postnotify_fn postnotify_fn; - mms_handler_test_msgreceived_fn msgreceived_fn; void* prenotify_data; void* postnotify_data; - void* msgreceived_data; } MMSHandlerTest; typedef enum mms_handler_record_type { @@ -84,6 +82,19 @@ struct mms_handler_message_received_call { void* param; }; +enum mms_handler_signal { + SIGNAL_MESSAGE_RECEIVED, + SIGNAL_MESSAGE_RECEIVE_STATE_CHANGED, + SIGNAL_MESSAGE_SEND_STATE_CHANGED, + SIGNAL_COUNT +}; + +#define SIGNAL_MESSAGE_RECEIVED_NAME "message-received" +#define SIGNAL_MESSAGE_RECEIVE_STATE_CHANGED_NAME "receive-state-changed" +#define SIGNAL_MESSAGE_SEND_STATE_CHANGED_NAME "send-state-changed" + +static guint mms_handler_test_signals[SIGNAL_COUNT] = { 0 }; + G_DEFINE_TYPE(MMSHandlerTest, mms_handler_test, MMS_TYPE_HANDLER); #define MMS_TYPE_HANDLER_TEST (mms_handler_test_get_type()) #define MMS_HANDLER_TEST(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), \ @@ -569,9 +580,8 @@ mms_handler_test_message_received( recv->msg = mms_message_ref(msg); mms_handler_busy_inc(handler); - if (test->msgreceived_fn) { - test->msgreceived_fn(handler, msg, test->msgreceived_data); - } + g_signal_emit(handler, mms_handler_test_signals[ + SIGNAL_MESSAGE_RECEIVED], 0, msg); call->handler = mms_handler_ref(handler); call->msg = mms_message_ref(msg); @@ -596,6 +606,8 @@ mms_handler_test_message_receive_state_changed( if (recv) { recv->state = state; MMS_DEBUG("Message %s receive state %d", id, state); + g_signal_emit(handler, mms_handler_test_signals[ + SIGNAL_MESSAGE_RECEIVE_STATE_CHANGED], 0, id, state); return TRUE; } else { MMS_ERR("No such incoming message: %s", id); @@ -641,6 +653,8 @@ mms_handler_test_message_send_state_changed( } else { MMS_DEBUG("Message %s send state %d", id, state); } + g_signal_emit(handler, mms_handler_test_signals[ + SIGNAL_MESSAGE_SEND_STATE_CHANGED], 0, id, state, details); return TRUE; } else { MMS_ERR("No such outbound message: %s", id); @@ -768,6 +782,21 @@ mms_handler_test_class_init( klass->fn_read_report = mms_handler_test_read_report; klass->fn_read_report_send_status = mms_handler_test_read_report_send_status; + mms_handler_test_signals[SIGNAL_MESSAGE_RECEIVED] = + g_signal_new(SIGNAL_MESSAGE_RECEIVED_NAME, + G_OBJECT_CLASS_TYPE(klass), G_SIGNAL_RUN_FIRST, + 0, NULL, NULL, NULL, G_TYPE_NONE, + 1, G_TYPE_POINTER); + mms_handler_test_signals[SIGNAL_MESSAGE_RECEIVE_STATE_CHANGED] = + g_signal_new(SIGNAL_MESSAGE_RECEIVE_STATE_CHANGED_NAME, + G_OBJECT_CLASS_TYPE(klass), G_SIGNAL_RUN_FIRST, + 0, NULL, NULL, NULL, G_TYPE_NONE, + 2, G_TYPE_POINTER, G_TYPE_INT); + mms_handler_test_signals[SIGNAL_MESSAGE_SEND_STATE_CHANGED] = + g_signal_new(SIGNAL_MESSAGE_SEND_STATE_CHANGED_NAME, + G_OBJECT_CLASS_TYPE(klass), G_SIGNAL_RUN_FIRST, + 0, NULL, NULL, NULL, G_TYPE_NONE, + 3, G_TYPE_POINTER, G_TYPE_INT, G_TYPE_POINTER); } static @@ -819,16 +848,34 @@ mms_handler_test_set_postnotify_fn( test->postnotify_data = user_data; } -void -mms_handler_test_set_msgreceived_fn( +gulong +mms_handler_test_add_msgreceived_fn( MMSHandler* handler, mms_handler_test_msgreceived_fn cb, void* user_data) { - MMSHandlerTest* test = MMS_HANDLER_TEST(handler); - MMS_ASSERT(!test->msgreceived_fn); - test->msgreceived_fn = cb; - test->msgreceived_data = user_data; + return g_signal_connect(handler, SIGNAL_MESSAGE_RECEIVED_NAME, + G_CALLBACK(cb), user_data); +} + +gulong +mms_handler_test_add_send_state_fn( + MMSHandler* handler, + mms_handler_test_send_state_fn cb, + void* user_data) +{ + return g_signal_connect(handler, SIGNAL_MESSAGE_SEND_STATE_CHANGED_NAME, + G_CALLBACK(cb), user_data); +} + +gulong +mms_handler_test_add_receive_state_fn( + MMSHandler* handler, + mms_handler_test_receive_state_fn cb, + void* user_data) +{ + return g_signal_connect(handler, SIGNAL_MESSAGE_RECEIVE_STATE_CHANGED_NAME, + G_CALLBACK(cb), user_data); } void @@ -843,8 +890,6 @@ mms_handler_test_reset( test->prenotify_data = NULL; test->postnotify_fn = NULL; test->postnotify_data = NULL; - test->msgreceived_fn = NULL; - test->msgreceived_data = NULL; } /* diff --git a/mms-lib/test/common/test_handler.h b/mms-lib/test/common/test_handler.h index e0db3a8..9319f21 100644 --- a/mms-lib/test/common/test_handler.h +++ b/mms-lib/test/common/test_handler.h @@ -1,5 +1,5 @@ /* - * Copyright (C) 2013-2015 Jolla Ltd. + * Copyright (C) 2013-2016 Jolla Ltd. * Contact: Slava Monich * * This program is free software; you can redistribute it and/or modify @@ -116,6 +116,21 @@ typedef void MMSMessage* msg, void* user_data); +typedef void +(*mms_handler_test_receive_state_fn)( + MMSHandler* handler, + const char* id, + MMS_RECEIVE_STATE state, + void* user_data); + +typedef void +(*mms_handler_test_send_state_fn)( + MMSHandler* handler, + const char* id, + MMS_SEND_STATE state, + const char* details, + void* user_data); + void mms_handler_test_set_prenotify_fn( MMSHandler* handler, @@ -128,12 +143,24 @@ mms_handler_test_set_postnotify_fn( mms_handler_test_postnotify_fn cb, void* user_data); -void -mms_handler_test_set_msgreceived_fn( +gulong +mms_handler_test_add_msgreceived_fn( MMSHandler* handler, mms_handler_test_msgreceived_fn cb, void* user_data); +gulong +mms_handler_test_add_send_state_fn( + MMSHandler* handler, + mms_handler_test_send_state_fn cb, + void* user_data); + +gulong +mms_handler_test_add_receive_state_fn( + MMSHandler* handler, + mms_handler_test_receive_state_fn cb, + void* user_data); + void mms_handler_test_reset( MMSHandler* handler); diff --git a/mms-lib/test/common/test_http.c b/mms-lib/test/common/test_http.c index ce737fd..29a3fec 100644 --- a/mms-lib/test/common/test_http.c +++ b/mms-lib/test/common/test_http.c @@ -1,5 +1,5 @@ /* - * Copyright (C) 2013-2014 Jolla Ltd. + * Copyright (C) 2013-2016 Jolla Ltd. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 as @@ -18,17 +18,30 @@ #include -/* A single HTTP transaction */ +/* A single HTTP response */ +typedef struct test_http_response { + GMappedFile* file; + char* content_type; + int status; +} TestHttpResponse; + struct test_http { gint ref_count; SoupServer* server; - GMappedFile* resp_file; - GBytes* req_bytes; - int resp_status; - char* resp_content_type; + GPtrArray* responses; + GPtrArray* post_data; gboolean disconnected; + guint current_resp; }; +static +void +test_http_post_data_free( + gpointer data) +{ + soup_buffer_free((SoupBuffer*)data); +} + static void test_http_callback( @@ -39,6 +52,7 @@ test_http_callback( SoupClientContext* context, gpointer data) { + TestHttp* http = data; char* uri = soup_uri_to_string(soup_message_get_uri (msg), FALSE); MMS_VERBOSE("%s %s HTTP/1.%d", msg->method, uri, soup_message_get_http_version(msg)); @@ -46,29 +60,34 @@ test_http_callback( if (msg->method == SOUP_METHOD_CONNECT) { soup_message_set_status(msg, SOUP_STATUS_NOT_IMPLEMENTED); } else { - TestHttp* http = data; if (msg->request_body->length) { - SoupBuffer* request = soup_message_body_flatten(msg->request_body); - if (http->req_bytes) g_bytes_unref(http->req_bytes); - http->req_bytes = g_bytes_new_with_free_func(request->data, - request->length, (GDestroyNotify)soup_buffer_free, request); + SoupBuffer* post = soup_message_body_flatten(msg->request_body); + g_ptr_array_add(http->post_data, + g_bytes_new_with_free_func(post->data, post->length, + test_http_post_data_free, post)); } - soup_message_set_status(msg, http->resp_status); - soup_message_headers_set_content_type(msg->response_headers, - http->resp_content_type ? http->resp_content_type : "text/plain", - NULL); - soup_message_headers_append(msg->response_headers, - "Accept-Ranges", "bytes"); - soup_message_headers_append(msg->response_headers, - "Connection", "close"); - if (http->resp_file) { - soup_message_headers_set_content_length(msg->response_headers, - g_mapped_file_get_length(http->resp_file)); - soup_message_body_append(msg->response_body, SOUP_MEMORY_TEMPORARY, - g_mapped_file_get_contents(http->resp_file), - g_mapped_file_get_length(http->resp_file)); + if (http->current_resp >= http->responses->len) { + soup_message_set_status(msg, SOUP_STATUS_NOT_FOUND); } else { - soup_message_headers_set_content_length(msg->response_headers, 0); + const TestHttpResponse* resp = + http->responses->pdata[(http->current_resp)++]; + soup_message_set_status(msg, resp->status); + soup_message_headers_set_content_type(msg->response_headers, + resp->content_type ? resp->content_type : "text/plain", NULL); + soup_message_headers_append(msg->response_headers, + "Accept-Ranges", "bytes"); + soup_message_headers_append(msg->response_headers, + "Connection", "close"); + if (resp->file) { + soup_message_headers_set_content_length(msg->response_headers, + g_mapped_file_get_length(resp->file)); + soup_message_body_append(msg->response_body, + SOUP_MEMORY_TEMPORARY, + g_mapped_file_get_contents(resp->file), + g_mapped_file_get_length(resp->file)); + } else { + soup_message_headers_set_content_length(msg->response_headers,0); + } } } soup_message_body_complete(msg->request_body); @@ -81,11 +100,27 @@ test_http_get_port( return soup_server_get_port(http->server); } +guint +test_http_get_post_count( + TestHttp* http) +{ + return http ? http->post_data->len : 0; +} + +GBytes* +test_http_get_post_data_at( + TestHttp* http, + guint index) +{ + return (http && index < http->post_data->len) ? + http->post_data->pdata[index] : NULL; +} + GBytes* test_http_get_post_data( TestHttp* http) { - return http ? http->req_bytes : NULL; + return (http && http->post_data->len) ? http->post_data->pdata[0] : NULL; } void @@ -98,23 +133,60 @@ test_http_close( } } +static +void +test_http_post_data_bytes_free( + gpointer data) +{ + g_bytes_unref(data); +} + +static +void +test_http_response_free( + gpointer data) +{ + TestHttpResponse* resp = data; + if (resp->file) { + g_mapped_file_unref(resp->file); + g_free(resp->content_type); + } + g_free(resp); +} + +void +test_http_add_response( + TestHttp* http, + GMappedFile* file, + const char* content_type, + int status) +{ + TestHttpResponse* resp = g_new0(TestHttpResponse, 1); + if (file) { + resp->file = g_mapped_file_ref(file); + resp->content_type = g_strdup(content_type); + } + resp->status = status; + g_ptr_array_add(http->responses, resp); +} + TestHttp* test_http_new( - GMappedFile* resp_file, + GMappedFile* get_file, const char* resp_content_type, int resp_status) { TestHttp* http = g_new0(TestHttp, 1); http->ref_count = 1; - if (resp_file) { - http->resp_file = g_mapped_file_ref(resp_file); - http->resp_content_type = g_strdup(resp_content_type); - } - http->resp_status = resp_status; + http->responses = g_ptr_array_new_full(0, test_http_response_free); + http->post_data = g_ptr_array_new_full(0, test_http_post_data_bytes_free); http->server = g_object_new(SOUP_TYPE_SERVER, NULL); MMS_DEBUG("Listening on port %hu", soup_server_get_port(http->server)); soup_server_add_handler(http->server, NULL, test_http_callback, http, NULL); soup_server_run_async(http->server); + if (get_file || resp_content_type || resp_status) { + test_http_add_response(http, get_file, resp_content_type, resp_status); + } return http; } @@ -137,10 +209,9 @@ test_http_unref( MMS_ASSERT(http->ref_count > 0); if (g_atomic_int_dec_and_test(&http->ref_count)) { test_http_close(http); - if (http->resp_file) g_mapped_file_unref(http->resp_file); - if (http->req_bytes) g_bytes_unref(http->req_bytes); + g_ptr_array_unref(http->responses); + g_ptr_array_unref(http->post_data); g_object_unref(http->server); - g_free(http->resp_content_type); g_free(http); } } diff --git a/mms-lib/test/common/test_http.h b/mms-lib/test/common/test_http.h index c0af890..cb65320 100644 --- a/mms-lib/test/common/test_http.h +++ b/mms-lib/test/common/test_http.h @@ -1,5 +1,5 @@ /* - * Copyright (C) 2013-2014 Jolla Ltd. + * Copyright (C) 2013-2016 Jolla Ltd. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 as @@ -38,6 +38,22 @@ guint test_http_get_port( TestHttp* http); +void +test_http_add_response( + TestHttp* http, + GMappedFile* file, + const char* content_type, + int status); + +guint +test_http_get_post_count( + TestHttp* http); + +GBytes* +test_http_get_post_data_at( + TestHttp* http, + guint index); + GBytes* test_http_get_post_data( TestHttp* http); diff --git a/mms-lib/test/coverage/run b/mms-lib/test/coverage/run index 92e1a0b..9c67556 100755 --- a/mms-lib/test/coverage/run +++ b/mms-lib/test/coverage/run @@ -5,7 +5,8 @@ TESTS="test_media_type test_mms_codec test_delivery_ind \ test_read_ind test_read_report test_resize test_retrieve \ -test_retrieve_cancel test_retrieve_no_proxy test_send" +test_retrieve_cancel test_retrieve_no_proxy test_retrieve_order \ +test_send" FLAVOR="release" pushd `dirname $0` > /dev/null diff --git a/mms-lib/test/test_retrieve/test_retrieve.c b/mms-lib/test/test_retrieve/test_retrieve.c index 1be15af..db0a25b 100644 --- a/mms-lib/test/test_retrieve/test_retrieve.c +++ b/mms-lib/test/test_retrieve/test_retrieve.c @@ -1,5 +1,5 @@ /* - * Copyright (C) 2013-2015 Jolla Ltd. + * Copyright (C) 2013-2016 Jolla Ltd. * Contact: Slava Monich * * This program is free software; you can redistribute it and/or modify @@ -76,6 +76,7 @@ typedef struct test { GMappedFile* retrieve_conf; GMainLoop* loop; guint timeout_id; + gulong msgreceived_id; TestHttp* http; int ret; } Test; @@ -500,6 +501,7 @@ test_finish( } MMS_INFO("%s: %s", (test->ret == RET_OK) ? "OK" : "FAILED", name); mms_handler_test_reset(test->handler); + g_signal_handler_disconnect(test->handler, test->msgreceived_id); g_main_loop_quit(test->loop); } @@ -627,8 +629,9 @@ test_init( mms_handler_test_defer_receive(test->handler, test->disp); } mms_handler_test_set_prenotify_fn(test->handler, test_notify, test); - mms_handler_test_set_msgreceived_fn(test->handler, - test_msgreceived, test); + test->msgreceived_id = + mms_handler_test_add_msgreceived_fn(test->handler, + test_msgreceived, test); mms_settings_unref(settings); test->ret = RET_ERR; ok = TRUE; diff --git a/mms-lib/test/test_retrieve_order/Makefile b/mms-lib/test/test_retrieve_order/Makefile new file mode 100644 index 0000000..41cad99 --- /dev/null +++ b/mms-lib/test/test_retrieve_order/Makefile @@ -0,0 +1,7 @@ +# -*- Mode: makefile-gmake -*- + +EXE = test_retrieve_order +SRC = $(EXE).c +COMMON_SRC = test_connection.c test_connman.c test_handler.c test_http.c + +include ../common/Makefile diff --git a/mms-lib/test/test_retrieve_order/data/Order/m-notification1.ind b/mms-lib/test/test_retrieve_order/data/Order/m-notification1.ind new file mode 100644 index 0000000000000000000000000000000000000000..820e689004e87978a1cfe6d2d96e5998f516c762 GIT binary patch literal 131 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 z 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

UJX;zo>{W@HjY-e)S!~&-;|0{$ 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 literal 0 HcmV?d00001 diff --git a/mms-lib/test/test_retrieve_order/data/Order/m-retrieve2.conf b/mms-lib/test/test_retrieve_order/data/Order/m-retrieve2.conf new file mode 100644 index 0000000000000000000000000000000000000000..b2b637a81cf9cdca9a59e7afd33ac1bfe9edfae9 GIT binary patch literal 66368 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 z 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 z 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 O|GnLRzPs)Ewf_gzs#8D! literal 0 HcmV?d00001 diff --git a/mms-lib/test/test_retrieve_order/test_retrieve_order.c b/mms-lib/test/test_retrieve_order/test_retrieve_order.c new file mode 100644 index 0000000..83651d6 --- /dev/null +++ b/mms-lib/test/test_retrieve_order/test_retrieve_order.c @@ -0,0 +1,435 @@ +/* + * Copyright (C) 2016 Jolla Ltd. + * Contact: Slava Monich + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + */ + +#include "test_connman.h" +#include "test_handler.h" +#include "test_http.h" + +#include "mms_codec.h" +#include "mms_file_util.h" +#include "mms_lib_log.h" +#include "mms_lib_util.h" +#include "mms_settings.h" +#include "mms_dispatcher.h" + +#include + +#define RET_OK (0) +#define RET_ERR (1) +#define RET_TIMEOUT (2) + +#define DATA_DIR "data/" + +#define TEST_TIMEOUT (10) /* seconds */ + +#define TEST_ARRAY_AND_COUNT(a) a, G_N_ELEMENTS(a) + +typedef struct test_receive_state { + const char* id; + MMS_RECEIVE_STATE state; +} TestReceiveState; + +typedef struct test_receive_state_event { + char* id; + MMS_RECEIVE_STATE state; +} TestReceiveStateEvent; + +typedef struct test_message_files { + const char* notification_ind; + const char* retrieve_conf; +} TestMessageFiles; + +typedef struct test_mapped_files { + GMappedFile* notification_ind; + GMappedFile* retrieve_conf; +} TestMappedFiles; + +typedef struct test_desc { + const char* name; + const TestMessageFiles* message_files; + unsigned int num_message_files; + const TestReceiveState* receive_states; + unsigned int num_receive_states; + int flags; +} TestDesc; + +typedef struct test { + const TestDesc* desc; + const MMSConfig* config; + MMSDispatcherDelegate delegate; + MMSConnMan* cm; + MMSHandler* handler; + MMSDispatcher* disp; + GMainLoop* loop; + GPtrArray* files; + GPtrArray* receive_states; + guint timeout_id; + gulong receive_state_event_id; + TestHttp* http; + int ret; +} Test; + +static const TestMessageFiles test1_files[] = { + { "m-notification1.ind", "m-retrieve1.conf" }, + { "m-notification2.ind", "m-retrieve2.conf" } +}; + +static const TestReceiveState test1_receive_states[] = { + { "1", MMS_RECEIVE_STATE_RECEIVING }, + { "1", MMS_RECEIVE_STATE_DECODING }, + { "2", MMS_RECEIVE_STATE_RECEIVING }, + { "2", MMS_RECEIVE_STATE_DECODING } +}; + +static const TestDesc retrieve_order_tests[] = { + { + "Order", + TEST_ARRAY_AND_COUNT(test1_files), + TEST_ARRAY_AND_COUNT(test1_receive_states) + } +}; + +static +void +test_free_receive_state( + gpointer data) +{ + TestReceiveStateEvent* event = data; + g_free(event->id); + g_free(event); +} + +static +void +test_finish( + Test* test) +{ + const TestDesc* desc = test->desc; + const char* name = desc->name; + if (test->ret == RET_OK) { + guint n = test->receive_states->len; + if (n != desc->num_receive_states) { + MMS_ERR("Unexpected number of state changes %u", n); + test->ret = RET_ERR; + } else { + guint i; + for (i=0; ireceive_states->pdata[i]; + const TestReceiveState* expected = desc->receive_states + i; + if (g_strcmp0(event->id, expected->id)) { + MMS_ERR("Unexpected task id %s at %u", event->id, i); + test->ret = RET_ERR; + } + if (event->state != expected->state) { + MMS_ERR("Unexpected state %d at %u", event->state, i); + test->ret = RET_ERR; + } + } + } + } + MMS_INFO("%s: %s", (test->ret == RET_OK) ? "OK" : "FAILED", name); + mms_handler_test_reset(test->handler); + g_signal_handler_disconnect(test->handler, test->receive_state_event_id); + g_main_loop_quit(test->loop); +} + +static +void +test_done( + MMSDispatcherDelegate* delegate, + MMSDispatcher* dispatcher) +{ + Test* test = MMS_CAST(delegate,Test,delegate); + if (!mms_handler_test_receive_pending(test->handler, NULL)) { + test_finish(test); + } +} + +static +gboolean +test_timeout( + gpointer data) +{ + Test* test = data; + test->timeout_id = 0; + test->ret = RET_TIMEOUT; + MMS_INFO("%s TIMEOUT", test->desc->name); + if (test->http) test_http_close(test->http); + mms_connman_test_close_connection(test->cm); + mms_dispatcher_cancel(test->disp, NULL); + return FALSE; +} + +static +void +test_receive_state_changed( + MMSHandler* handler, + const char* id, + MMS_RECEIVE_STATE state, + void* user_data) +{ + Test* test = user_data; + TestReceiveStateEvent* event = g_new0(TestReceiveStateEvent, 1); + event->id = g_strdup(id); + event->state = state; + g_ptr_array_add(test->receive_states, event); +} + +static +void +test_free_mapped_files( + gpointer data) +{ + TestMappedFiles* files = data; + g_mapped_file_unref(files->notification_ind); + g_mapped_file_unref(files->retrieve_conf); + g_free(files); +} + +static +gboolean +test_init( + Test* test, + const MMSConfig* config, + const TestDesc* desc, + gboolean debug) +{ + guint i; + MMSSettings* settings = mms_settings_default_new(config); + + MMS_DEBUG(">>>>>>>>>> %s <<<<<<<<<<", desc->name); + memset(test, 0, sizeof(*test)); + test->config = config; + test->files = g_ptr_array_new_full(0, test_free_mapped_files); + test->receive_states = g_ptr_array_new_full(0, test_free_receive_state); + test->http = test_http_new(NULL, NULL, SOUP_STATUS_NONE); + + /* Open files */ + for (i=0; inum_message_files; i++) { + GError* err = NULL; + const char* subdir = desc->name; + char* ni = g_strconcat(DATA_DIR, subdir, "/", + desc->message_files[i].notification_ind, NULL); + char* rc = g_strconcat(DATA_DIR, subdir, "/", + desc->message_files[i].retrieve_conf, NULL); + TestMappedFiles* files = g_new0(TestMappedFiles, 1); + files->notification_ind = g_mapped_file_new(ni, FALSE, &err); + if (err) { + MMS_ERR("%s", MMS_ERRMSG(err)); + g_error_free(err); + err = NULL; + } + files->retrieve_conf = g_mapped_file_new(rc, FALSE, &err); + test_http_add_response(test->http, files->retrieve_conf, + MMS_CONTENT_TYPE, SOUP_STATUS_OK); + /* Add empty responses for ack */ + test_http_add_response(test->http, NULL, NULL, SOUP_STATUS_OK); + if (err) { + MMS_ERR("%s", MMS_ERRMSG(err)); + g_error_free(err); + err = NULL; + } + g_ptr_array_add(test->files, files); + g_free(ni); + g_free(rc); + } + + test->desc = desc; + test->cm = mms_connman_test_new(); + test->handler = mms_handler_test_new(); + test->disp = mms_dispatcher_new(settings, test->cm, test->handler); + test->loop = g_main_loop_new(NULL, FALSE); + if (!debug) { + test->timeout_id = g_timeout_add_seconds(TEST_TIMEOUT, + test_timeout, test); + } + test->delegate.fn_done = test_done; + mms_dispatcher_set_delegate(test->disp, &test->delegate); + mms_connman_test_set_port(test->cm, test_http_get_port(test->http), TRUE); + + test->receive_state_event_id = + mms_handler_test_add_receive_state_fn(test->handler, + test_receive_state_changed, test); + + test->ret = RET_OK; + return TRUE; +} + +static +void +test_finalize( + Test* test) +{ + if (test->timeout_id) { + g_source_remove(test->timeout_id); + test->timeout_id = 0; + } + if (test->http) { + test_http_close(test->http); + test_http_unref(test->http); + } + mms_connman_test_close_connection(test->cm); + mms_connman_unref(test->cm); + mms_handler_unref(test->handler); + mms_dispatcher_unref(test->disp); + g_main_loop_unref(test->loop); + g_ptr_array_unref(test->files); + g_ptr_array_unref(test->receive_states); +} + +static +int +test_order_once( + const MMSConfig* config, + const TestDesc* desc, + gboolean debug) +{ + Test test; + if (test_init(&test, config, desc, debug)) { + guint i; + for (i=0; ilen && test.ret == RET_OK; i++) { + TestMappedFiles* files = test.files->pdata[i]; + GError* error = NULL; + GBytes* push = g_bytes_new_static( + g_mapped_file_get_contents(files->notification_ind), + g_mapped_file_get_length(files->notification_ind)); + if (!mms_dispatcher_handle_push(test.disp, "TestConnection", + push, &error)) { + g_error_free(error); + test.ret = RET_ERR; + } + g_bytes_unref(push); + } + if (test.ret == RET_OK) { + if (mms_dispatcher_start(test.disp)) { + g_main_loop_run(test.loop); + } else { + test.ret = RET_ERR; + } + } + if (test.ret != RET_OK) { + MMS_INFO("FAILED: %s", desc->name); + } + test_finalize(&test); + return test.ret; + } else { + return RET_ERR; + } +} + +static +int +test_order( + const MMSConfig* config, + const char* name, + gboolean debug) +{ + int i, ret; + if (name) { + const TestDesc* found = NULL; + for (i=0, ret = RET_ERR; iname, name)) { + ret = test_order_once(config, test, debug); + found = test; + break; + } + } + if (!found) MMS_ERR("No such test: %s", name); + } else { + for (i=0, ret = RET_OK; i