1
0
mirror of https://github.com/profanity-im/profanity.git synced 2024-09-22 19:45:54 -04:00

Added test to ensure chat sessions cleared on cmd_disconnect

This commit is contained in:
James Booth 2015-01-10 01:06:52 +00:00
parent 9bd2315d83
commit ab7bd6fe5f
7 changed files with 47 additions and 1 deletions

View File

@ -77,6 +77,7 @@ tests_sources = \
tests/test_cmd_statuses.c tests/test_cmd_statuses.h \
tests/test_cmd_sub.c tests/test_cmd_sub.h \
tests/test_cmd_win.c tests/test_cmd_win.h \
tests/test_cmd_disconnect.c tests/test_cmd_disconnect.h \
tests/test_common.c tests/test_common.h \
tests/test_contact.c tests/test_contact.h \
tests/test_form.c tests/test_form.h \

View File

@ -0,0 +1,34 @@
#include <stdarg.h>
#include <stddef.h>
#include <setjmp.h>
#include <cmocka.h>
#include <stdlib.h>
#include <string.h>
#include "chat_session.h"
#include "command/commands.h"
#include "xmpp/xmpp.h"
#include "roster_list.h"
#include "ui/stub_ui.h"
void clears_chat_sessions(void **state)
{
CommandHelp *help = malloc(sizeof(CommandHelp));
chat_sessions_init();
chat_session_on_recipient_activity("bob@server.org", "laptop");
roster_init();
will_return(jabber_get_connection_status, JABBER_CONNECTED);
will_return(jabber_get_fulljid, "myjid@myserver.com");
expect_any_cons_show();
gboolean result = cmd_disconnect(NULL, *help);
assert_true(result);
ChatSession *session = chat_session_get("bob@server.org");
assert_null(session);
free(help);
}

View File

@ -0,0 +1 @@
void clears_chat_sessions(void **state);

View File

@ -33,6 +33,7 @@
#include "test_muc.h"
#include "test_cmd_roster.h"
#include "test_cmd_win.h"
#include "test_cmd_disconnect.h"
#include "test_form.h"
int main(int argc, char* argv[]) {
@ -609,6 +610,8 @@ int main(int argc, char* argv[]) {
unit_test(remove_text_multi_value_does_nothing_when_doesnt_exist),
unit_test(remove_text_multi_value_removes_when_one),
unit_test(remove_text_multi_value_removes_when_many),
unit_test(clears_chat_sessions),
};
return run_tests(all_tests);

View File

@ -19,6 +19,12 @@ expect_cons_show(char *expected)
expect_string(cons_show, output, expected);
}
void
expect_any_cons_show(void)
{
expect_any(cons_show, output);
}
void
expect_cons_show_error(char *expected)
{

View File

@ -1,4 +1,5 @@
void expect_cons_show(char *expected);
void expect_any_cons_show(void);
void expect_cons_show_error(char *expected);
void expect_ui_current_print_line(char *message);
void expect_ui_current_print_formatted_line(char show_char, int attrs, char *message);

View File

@ -29,7 +29,7 @@ void jabber_shutdown(void) {}
void jabber_process_events(void) {}
const char * jabber_get_fulljid(void)
{
return NULL;
return (char *)mock();
}
const char * jabber_get_domain(void)