From 3cb25736c7c14eb435602e39977b453163c053ef Mon Sep 17 00:00:00 2001 From: Kinsey Moore Date: Mon, 13 Aug 2012 20:04:15 +0000 Subject: [PATCH] Add test instrumentation This adds test instrumentation for loading and unloading of modules and for certain actions in MeetMe to be used in the testsuite or any other consumer of AMI events. These will only be generated when Asterisk is built with TEST_FRAMEWORK enabled. (issue PQ-1131) (issue PQ-1133) ........ Merged revisions 371201 from http://svn.asterisk.org/svn/asterisk/branches/1.8 git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@371203 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- apps/app_meetme.c | 11 ++++++++++- main/loader.c | 6 +++++- 2 files changed, 15 insertions(+), 2 deletions(-) diff --git a/apps/app_meetme.c b/apps/app_meetme.c index 4ba43ca783..1f76ad4330 100644 --- a/apps/app_meetme.c +++ b/apps/app_meetme.c @@ -2830,6 +2830,7 @@ static int conf_run(struct ast_channel *chan, struct ast_conference *conf, struc ast_channel_setoption(chan, AST_OPTION_TONE_VERIFY, &x, sizeof(char), 0); } } else { + int lastusers = conf->users; if (user->dahdichannel && ast_test_flag64(confflags, CONFFLAG_STARMENU)) { /* Set CONFMUTE mode on DAHDI channel to mute DTMF tones when the menu is enabled */ x = 1; @@ -3109,7 +3110,15 @@ static int conf_run(struct ast_channel *chan, struct ast_conference *conf, struc } break; } - + + /* Throw a TestEvent if a user exit did not cause this user to leave the conference */ + if (conf->users != lastusers) { + if (conf->users < lastusers) { + ast_test_suite_event_notify("NOEXIT", "Message: CONFFLAG_MARKEDEXIT\r\nLastUsers: %d\r\nUsers: %d", lastusers, conf->users); + } + lastusers = conf->users; + } + /* Check if my modes have changed */ /* If I should be muted but am still talker, mute me */ diff --git a/main/loader.c b/main/loader.c index 97adb6b004..4d1da976de 100644 --- a/main/loader.c +++ b/main/loader.c @@ -54,6 +54,7 @@ ASTERISK_FILE_VERSION(__FILE__, "$Revision$") #include "asterisk/udptl.h" #include "asterisk/heap.h" #include "asterisk/app.h" +#include "asterisk/test.h" #include @@ -567,8 +568,10 @@ int ast_unload_resource(const char *resource_name, enum ast_module_unload_mode f mod->info->restore_globals(); #ifdef LOADABLE_MODULES - if (!error) + if (!error) { unload_dynamic_module(mod); + ast_test_suite_event_notify("MODULE_UNLOAD", "Message: %s", resource_name); + } #endif if (!error) @@ -899,6 +902,7 @@ int ast_load_resource(const char *resource_name) int res; AST_LIST_LOCK(&module_list); res = load_resource(resource_name, 0, NULL, 0); + ast_test_suite_event_notify("MODULE_LOAD", "Message: %s", resource_name); AST_LIST_UNLOCK(&module_list); return res; -- 2.47.2