diff options
author | James Booth <boothj5@gmail.com> | 2013-12-22 22:14:15 +0000 |
---|---|---|
committer | James Booth <boothj5@gmail.com> | 2013-12-22 22:14:15 +0000 |
commit | 5a5b1340aa799ee1d56961123a4770ebadb287bc (patch) | |
tree | 0d1d83b050d09082086fcd563ab1c83c6f36c2b9 /tests/ui | |
parent | d56f6dc39b002e16966354b0ad98cf7801260e0c (diff) | |
download | profani-tty-5a5b1340aa799ee1d56961123a4770ebadb287bc.tar.gz |
Dynamically load UI functions, fixed tests
Diffstat (limited to 'tests/ui')
-rw-r--r-- | tests/ui/mock_ui.c | 324 | ||||
-rw-r--r-- | tests/ui/mock_ui.h | 13 |
2 files changed, 73 insertions, 264 deletions
diff --git a/tests/ui/mock_ui.c b/tests/ui/mock_ui.c index c70fbcf4..83119910 100644 --- a/tests/ui/mock_ui.c +++ b/tests/ui/mock_ui.c @@ -23,6 +23,7 @@ #include <glib.h> #include <setjmp.h> #include <cmocka.h> +#include <string.h> #include "ui/ui.h" @@ -43,321 +44,116 @@ void _stub_cons_show(const char * const msg, ...) { } -void -mock_cons_show(void) -{ - cons_show = _mock_cons_show; - -} - -void -stub_cons_show(void) -{ - cons_show = _stub_cons_show; -} - -void -expect_cons_show(char *output) -{ - expect_string(_mock_cons_show, output, output); -} - -void -expect_cons_show_calls(int n) +static +void _mock_cons_show_error(const char * const msg, ...) { - expect_any_count(_mock_cons_show, output, n); + va_list args; + va_start(args, msg); + vsnprintf(output, sizeof(output), msg, args); + check_expected(output); + va_end(args); } -// ui startup and control -void ui_init(void) {} -void ui_load_colours(void) {} -void ui_refresh(void) {} -void ui_close(void) {} -void ui_resize(const int ch, const char * const input, - const int size) {} - -GSList* ui_get_recipients(void) +static +void _mock_cons_show_account(ProfAccount *account) { - return (GSList *)mock(); + check_expected(account); } -void ui_handle_special_keys(const wint_t * const ch, const char * const inp, - const int size) {} -void ui_switch_win(const int i) {} -void ui_next_win(void) {} -void ui_previous_win(void) {} - -unsigned long ui_get_idle_time(void) +static +void _mock_cons_show_account_list(gchar **accounts) { - return (unsigned long)mock(); + check_expected(accounts); } -void ui_reset_idle_time(void) {} -void ui_new_chat_win(const char * const to) {} -void ui_print_error_from_recipient(const char * const from, const char *err_msg) {} -void ui_print_system_msg_from_recipient(const char * const from, const char *message) {} -void ui_handle_error_message(const char * const from, const char * const err_msg) {} - -gint ui_unread(void) +static +char * _mock_ui_ask_password(void) { - return (gint)mock(); + return (char *)mock(); } -void ui_close_connected_win(int index) {} - -int ui_close_all_wins(void) +static +char * _stub_ui_ask_password(void) { - return (int)mock(); + return NULL; } -int ui_close_read_wins(void) +void +mock_cons_show(void) { - return (int)mock(); + cons_show = _mock_cons_show; + } -// current window actions -void ui_close_current(void) {} -void ui_clear_current(void) {} - -win_type_t ui_current_win_type(void) +void +mock_cons_show_error(void) { - return (win_type_t)mock(); + cons_show_error = _mock_cons_show_error; } -int ui_current_win_index(void) +void +mock_cons_show_account(void) { - return (int)mock(); + cons_show_account = _mock_cons_show_account; } -char* ui_current_recipient(void) +void +mock_cons_show_account_list(void) { - return (char *)mock(); + cons_show_account_list = _mock_cons_show_account_list; } -void ui_current_print_line(const char * const msg, ...) {} -void ui_current_error_line(const char * const msg) {} -void ui_current_page_off(void) {} -win_type_t ui_win_type(int index) -{ - return (win_type_t)mock(); -} - -char * ui_recipient(int index) +void +mock_ui_ask_password(void) { - return (char *)mock(); + ui_ask_password = _mock_ui_ask_password; } -void ui_close_win(int index) {} - -gboolean ui_win_exists(int index) +void +stub_ui_ask_password(void) { - return (gboolean)mock(); + ui_ask_password = _stub_ui_ask_password; } -int ui_win_unread(int index) +void +stub_cons_show(void) { - return (int)mock(); + cons_show = _stub_cons_show; } -// ui events -void ui_contact_typing(const char * const from) {} -void ui_incoming_msg(const char * const from, const char * const message, - GTimeVal *tv_stamp, gboolean priv) {} -void ui_contact_online(const char * const barejid, const char * const resource, - const char * const show, const char * const status, GDateTime *last_activity) {} -void ui_contact_offline(const char * const from, const char * const show, - const char * const status) {} -void ui_disconnected(void) {} -void ui_recipient_gone(const char * const barejid) {} -void ui_outgoing_msg(const char * const from, const char * const to, - const char * const message) {} -void ui_room_join(Jid *jid) {} -void ui_room_roster(const char * const room, GList *roster, const char * const presence) {} -void ui_room_history(const char * const room_jid, const char * const nick, - GTimeVal tv_stamp, const char * const message) {} -void ui_room_message(const char * const room_jid, const char * const nick, - const char * const message) {} -void ui_room_subject(const char * const room_jid, - const char * const subject) {} -void ui_room_broadcast(const char * const room_jid, - const char * const message) {} -void ui_room_member_offline(const char * const room, const char * const nick) {} -void ui_room_member_online(const char * const room, - const char * const nick, const char * const show, const char * const status) {} -void ui_room_member_nick_change(const char * const room, - const char * const old_nick, const char * const nick) {} -void ui_room_nick_change(const char * const room, const char * const nick) {} -void ui_room_member_presence(const char * const room, - const char * const nick, const char * const show, const char * const status) {} -void ui_roster_add(const char * const barejid, const char * const name) {} -void ui_roster_remove(const char * const barejid) {} -void ui_contact_already_in_group(const char * const contact, const char * const group) {} -void ui_contact_not_in_group(const char * const contact, const char * const group) {} -void ui_group_added(const char * const contact, const char * const group) {} -void ui_group_removed(const char * const contact, const char * const group) {} - -// contact status functions -void ui_status_room(const char * const contact) {} -void ui_status(void) {} -void ui_status_private(void) {} - -void ui_create_duck_win(void) {} -void ui_open_duck_win(void) {} -void ui_duck(const char * const query) {} -void ui_duck_result(const char * const result) {} - -gboolean ui_duck_exists(void) +void +expect_cons_show(char *output) { - return (gboolean)mock(); + expect_string(_mock_cons_show, output, output); } -void ui_tidy_wins(void) {} -void ui_prune_wins(void) {} - -char * ui_ask_password(void) +void +expect_cons_show_calls(int n) { - return (char *)mock(); + expect_any_count(_mock_cons_show, output, n); } -// create windows -void create_title_bar(void) {} -void create_status_bar(void) {} -void create_input_window(void) {} - -// title bar actions -void title_bar_refresh(void) {} -void title_bar_resize(void) {} -void title_bar_show(const char * const title) {} -void title_bar_title(void) {} -void title_bar_set_status(contact_presence_t status) {} -void title_bar_set_recipient(const char * const from) {} -void title_bar_set_typing(gboolean is_typing) {} -void title_bar_draw(void) {} - -// console window actions -void cons_about(void) {} -void cons_help(void) {} -void cons_basic_help(void) {} -void cons_settings_help(void) {} -void cons_presence_help(void) {} -void cons_navigation_help(void) {} -void cons_prefs(void) {} -void cons_show_ui_prefs(void) {} -void cons_show_desktop_prefs(void) {} -void cons_show_chat_prefs(void) {} -void cons_show_log_prefs(void) {} -void cons_show_presence_prefs(void) {} -void cons_show_connection_prefs(void) {} - -void cons_show_account(ProfAccount *account) +void +expect_cons_show_error(char *output) { - check_expected(account); + expect_string(_mock_cons_show_error, output, output); } -void cons_debug(const char * const msg, ...) {} -void cons_show_time(void) {} -void cons_show_word(const char * const word) {} - -void cons_show_error(const char * const cmd, ...) +void +expect_cons_show_account(ProfAccount *account) { - va_list args; - va_start(args, cmd); - vsnprintf(output, sizeof(output), cmd, args); - check_expected(output); - va_end(args); + expect_memory(_mock_cons_show_account, account, account, sizeof(ProfAccount)); } -void cons_highlight_show(const char * const cmd) {} -void cons_show_contacts(GSList * list) {} -void cons_show_roster(GSList * list) {} -void cons_show_roster_group(const char * const group, GSList * list) {} -void cons_show_wins(void) {} -void cons_show_status(const char * const barejid) {} -void cons_show_info(PContact pcontact) {} -void cons_show_caps(const char * const contact, Resource *resource) {} -void cons_show_themes(GSList *themes) {} -void cons_show_login_success(ProfAccount *account) {} -void cons_show_software_version(const char * const jid, - const char * const presence, const char * const name, - const char * const version, const char * const os) {} - -void cons_show_account_list(gchar **accounts) +void +expect_cons_show_account_list(gchar **accounts) { - check_expected(accounts); + expect_memory(_mock_cons_show_account_list, accounts, accounts, sizeof(accounts)); } -void cons_show_room_list(GSList *room, const char * const conference_node) {} -void cons_show_bookmarks(const GList *list) {} -void cons_show_disco_items(GSList *items, const char * const jid) {} -void cons_show_disco_info(const char *from, GSList *identities, GSList *features) {} -void cons_show_room_invite(const char * const invitor, const char * const room, - const char * const reason) {} -void cons_check_version(gboolean not_available_msg) {} -void cons_show_typing(const char * const barejid) {} -void cons_show_incoming_message(const char * const short_from, const int win_index) {} -void cons_show_room_invites(GSList *invites) {} -void cons_show_received_subs(void) {} -void cons_show_sent_subs(void) {} -void cons_alert(void) {} -void cons_theme_setting(void) {} -void cons_beep_setting(void) {} -void cons_flash_setting(void) {} -void cons_splash_setting(void) {} -void cons_vercheck_setting(void) {} -void cons_mouse_setting(void) {} -void cons_statuses_setting(void) {} -void cons_titlebar_setting(void) {} -void cons_notify_setting(void) {} -void cons_states_setting(void) {} -void cons_outtype_setting(void) {} -void cons_intype_setting(void) {} -void cons_gone_setting(void) {} -void cons_history_setting(void) {} -void cons_log_setting(void) {} -void cons_chlog_setting(void) {} -void cons_grlog_setting(void) {} -void cons_autoaway_setting(void) {} -void cons_reconnect_setting(void) {} -void cons_autoping_setting(void) {} -void cons_priority_setting(void) {} -void cons_autoconnect_setting(void) {} - -// status bar actions -void status_bar_refresh(void) {} -void status_bar_resize(void) {} -void status_bar_clear(void) {} -void status_bar_clear_message(void) {} -void status_bar_get_password(void) {} -void status_bar_print_message(const char * const msg) {} -void status_bar_inactive(const int win) {} -void status_bar_active(const int win) {} -void status_bar_new(const int win) {} -void status_bar_update_time(void) {} -void status_bar_set_all_inactive(void) {} -void status_bar_current(int i) {} - -// input window actions -wint_t inp_get_char(char *input, int *size) +void +mock_ui_ask_password_returns(char *password) { - return (wint_t)mock(); + will_return(_mock_ui_ask_password, strdup(password)); } -void inp_win_reset(void) {} -void inp_win_resize(const char * input, const int size) {} -void inp_put_back(void) {} -void inp_non_block(void) {} -void inp_block(void) {} -void inp_get_password(char *passwd) {} -void inp_replace_input(char *input, const char * const new_input, int *size) {} - -void notifier_init(void) {} -void notifier_uninit(void) {} - -void notify_typing(const char * const handle) {} -void notify_message(const char * const handle, int win) {} -void notify_room_message(const char * const handle, const char * const room, - int win) {} -void notify_remind(void) {} -void notify_invite(const char * const from, const char * const room, - const char * const reason) {} -void notify_subscription(const char * const from) {} diff --git a/tests/ui/mock_ui.h b/tests/ui/mock_ui.h index 76d15614..2833be29 100644 --- a/tests/ui/mock_ui.h +++ b/tests/ui/mock_ui.h @@ -11,4 +11,17 @@ void mock_cons_show(void); void expect_cons_show(char *output); void expect_cons_show_calls(int n); +void mock_cons_show_error(void); +void expect_cons_show_error(char *output); + +void mock_cons_show_account(void); +void expect_cons_show_account(ProfAccount *account); + +void mock_cons_show_account_list(void); +void expect_cons_show_account_list(gchar **accounts); + +void stub_ui_ask_password(void); +void mock_ui_ask_password(void); +void mock_ui_ask_password_returns(char *password); + #endif |