diff options
author | James Booth <boothj5@gmail.com> | 2014-02-23 20:09:00 +0000 |
---|---|---|
committer | James Booth <boothj5@gmail.com> | 2014-02-23 20:09:00 +0000 |
commit | 1f78d5b582205c590eee2cfc6b1c3ddd7f390b26 (patch) | |
tree | e86c3335634f27c2ed81ce6b2321377b574ea41c /tests/test_cmd_otr.c | |
parent | 5307b92821d2988a51c3048db9912d8a45dc6cde (diff) | |
download | profani-tty-1f78d5b582205c590eee2cfc6b1c3ddd7f390b26.tar.gz |
Added tests for /otr start from non chat windows
Diffstat (limited to 'tests/test_cmd_otr.c')
-rw-r--r-- | tests/test_cmd_otr.c | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/tests/test_cmd_otr.c b/tests/test_cmd_otr.c index 57b26df3..5ad66514 100644 --- a/tests/test_cmd_otr.c +++ b/tests/test_cmd_otr.c @@ -468,6 +468,43 @@ void cmd_otr_theirfp_shows_fingerprint(void **state) free(help); } +static void +test_cmd_otr_start_from_wintype(win_type_t wintype) +{ + CommandHelp *help = malloc(sizeof(CommandHelp)); + gchar *args[] = { "start", NULL }; + mock_connection_status(JABBER_CONNECTED); + mock_current_win_type(wintype); + mock_ui_current_print_line(); + + ui_current_print_line_expect("You must be in a regular chat window to start an OTR session."); + + gboolean result = cmd_otr(args, *help); + assert_true(result); + + free(help); +} + +void cmd_otr_start_shows_message_when_in_console(void **state) +{ + test_cmd_otr_start_from_wintype(WIN_CONSOLE); +} + +void cmd_otr_start_shows_message_when_in_muc(void **state) +{ + test_cmd_otr_start_from_wintype(WIN_MUC); +} + +void cmd_otr_start_shows_message_when_in_private(void **state) +{ + test_cmd_otr_start_from_wintype(WIN_PRIVATE); +} + +void cmd_otr_start_shows_message_when_in_duck(void **state) +{ + test_cmd_otr_start_from_wintype(WIN_DUCK); +} + #else void cmd_otr_shows_message_when_otr_unsupported(void **state) { |