diff options
author | David M. Lee <dlee@digium.com> | 2013-04-15 16:43:47 +0000 |
---|---|---|
committer | David M. Lee <dlee@digium.com> | 2013-04-15 16:43:47 +0000 |
commit | c599aca553a57335267406b93c856e53c5e14db4 (patch) | |
tree | c1f8055e6cfc0cf5f1b6aeec5c9ec860ce6236cc /tests | |
parent | 2450722f52401b8537e9c0ffb1192f38b7dd146d (diff) |
Moved core logic from app_stasis to res_stasis
After some discussion on asterisk-dev, it was decided that the bulk of
the logic in app_stasis actually belongs in a resource module instead
of the application module.
This patch does that, leaves the app specific stuff in app_stasis, and
fixes up everything else to be consistent with that change.
* Renamed test_app_stasis to test_res_stasis
* Renamed app_stasis.h to stasis_app.h
* This is still stasis application support, even though it's no
longer in an app_ module. The name should never have been tied to
the type of module, anyways.
* Now that json isn't a resource module anymore, moved the
ast_channel_snapshot_to_json function to main/stasis_channels.c,
where it makes more sense.
Review: https://reviewboard.asterisk.org/r/2430/
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@385742 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'tests')
-rw-r--r-- | tests/test_json.c | 3 | ||||
-rw-r--r-- | tests/test_res_stasis.c (renamed from tests/test_app_stasis.c) | 14 | ||||
-rw-r--r-- | tests/test_stasis_channels.c | 66 |
3 files changed, 74 insertions, 9 deletions
diff --git a/tests/test_json.c b/tests/test_json.c index 9b4be5beb..e87003f74 100644 --- a/tests/test_json.c +++ b/tests/test_json.c @@ -1659,12 +1659,11 @@ AST_TEST_DEFINE(json_test_timeval) break; } - ast_test_validate(test, NULL == ast_json_timeval(NULL, NULL)); expected = ast_json_string_create("2013-02-07T09:32:34.314-0600"); tv.tv_sec = 1360251154; tv.tv_usec = 314159; - uut = ast_json_timeval(&tv, "America/Chicago"); + uut = ast_json_timeval(tv, "America/Chicago"); ast_test_validate(test, ast_json_equal(expected, uut)); diff --git a/tests/test_app_stasis.c b/tests/test_res_stasis.c index 02eb85af0..0e7daf5dd 100644 --- a/tests/test_app_stasis.c +++ b/tests/test_res_stasis.c @@ -25,7 +25,7 @@ /*** MODULEINFO <depend>TEST_FRAMEWORK</depend> - <depend>app_stasis</depend> + <depend>res_stasis</depend> <support_level>core</support_level> ***/ @@ -35,9 +35,9 @@ ASTERISK_FILE_VERSION(__FILE__, "$Revision$") #include "asterisk/module.h" #include "asterisk/test.h" -#include "asterisk/app_stasis.h" +#include "asterisk/stasis_app.h" -static const char *test_category = "/stasis/app/"; +static const char *test_category = "/stasis/res/"; AST_TEST_DEFINE(app_invoke_dne) { @@ -187,8 +187,8 @@ static int load_module(void) return AST_MODULE_LOAD_SUCCESS; } -AST_MODULE_INFO(ASTERISK_GPL_KEY, 0, "Stasis Core testing", - .load = load_module, - .unload = unload_module, - .nonoptreq = "app_stasis" +AST_MODULE_INFO(ASTERISK_GPL_KEY, AST_MODFLAG_DEFAULT, "Stasis Core testing", + .load = load_module, + .unload = unload_module, + .nonoptreq = "res_stasis", ); diff --git a/tests/test_stasis_channels.c b/tests/test_stasis_channels.c index fe398379b..e3527baf3 100644 --- a/tests/test_stasis_channels.c +++ b/tests/test_stasis_channels.c @@ -199,11 +199,76 @@ AST_TEST_DEFINE(multi_channel_blob_snapshots) return AST_TEST_PASS; } +AST_TEST_DEFINE(channel_snapshot_json) +{ + RAII_VAR(struct stasis_message *, msg, NULL, ao2_cleanup); + RAII_VAR(struct ast_channel *, chan, NULL, safe_channel_release); + RAII_VAR(struct ast_channel_snapshot *, snapshot, NULL, ao2_cleanup); + RAII_VAR(struct ast_json *, expected, NULL, ast_json_unref); + RAII_VAR(struct ast_json *, actual, NULL, ast_json_unref); + + switch (cmd) { + case TEST_INIT: + info->name = __func__; + info->category = test_category; + info->summary = "Test creation of ast_channel_blob objects"; + info->description = "Test creation of ast_channel_blob objects"; + return AST_TEST_NOT_RUN; + case TEST_EXECUTE: + break; + } + + ast_test_validate(test, NULL == ast_channel_snapshot_to_json(NULL)); + + chan = ast_channel_alloc(0, AST_STATE_DOWN, "cid_num", "cid_name", "acctcode", "exten", "context", NULL, 0, "TEST/name"); + ast_test_validate(test, NULL != chan); + snapshot = ast_channel_snapshot_create(chan); + ast_test_validate(test, NULL != snapshot); + + actual = ast_channel_snapshot_to_json(snapshot); + expected = ast_json_pack("{ s: s, s: s, s: s, s: s, s: s, s: s, s: s," + " s: s, s: s, s: s, s: s," + " s: { s: s, s: s, s: i }," + " s: { s: s, s: s }," + " s: { s: s, s: s }," + " s: o" + "}", + "name", "TEST/name", + "state", "Down", + "accountcode", "acctcode", + "peeraccount", "", + "userfield", "", + "uniqueid", ast_channel_uniqueid(chan), + "linkedid", ast_channel_uniqueid(chan), + "parkinglot", "", + "hangupsource", "", + "appl", "", + "data", "", + "dialplan", + "context", "context", + "exten", "exten", + "priority", 1, + "caller", + "name", "cid_name", + "number", "cid_num", + "connected", + "name", "", + "number", "", + "creationtime", + ast_json_timeval( + ast_channel_creationtime(chan), NULL)); + + ast_test_validate(test, ast_json_equal(expected, actual)); + + return AST_TEST_PASS; +} + static int unload_module(void) { AST_TEST_UNREGISTER(channel_blob_create); AST_TEST_UNREGISTER(multi_channel_blob_create); AST_TEST_UNREGISTER(multi_channel_blob_snapshots); + AST_TEST_UNREGISTER(channel_snapshot_json); return 0; } @@ -213,6 +278,7 @@ static int load_module(void) AST_TEST_REGISTER(channel_blob_create); AST_TEST_REGISTER(multi_channel_blob_create); AST_TEST_REGISTER(multi_channel_blob_snapshots); + AST_TEST_REGISTER(channel_snapshot_json); return AST_MODULE_LOAD_SUCCESS; } |