about summary refs log tree commit diff stats
diff options
context:
space:
mode:
-rw-r--r--Makefile.am1
-rw-r--r--tests/test_cmd_join.c69
-rw-r--r--tests/testsuite.c3
-rw-r--r--tests/xmpp/stub_xmpp.c8
4 files changed, 46 insertions, 35 deletions
diff --git a/Makefile.am b/Makefile.am
index e6682afb..1c232157 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -70,6 +70,7 @@ tests_sources = \
 	tests/test_cmd_alias.c tests/test_cmd_alias.h \
 	tests/test_cmd_bookmark.c tests/test_cmd_bookmark.h \
 	tests/test_cmd_connect.c tests/test_cmd_connect.h \
+	tests/test_cmd_join.c tests/test_cmd_join.h \
 	tests/test_autocomplete.c tests/test_autocomplete.h \
 	tests/testsuite.c
 
diff --git a/tests/test_cmd_join.c b/tests/test_cmd_join.c
index 8fddd551..caa3ed0b 100644
--- a/tests/test_cmd_join.c
+++ b/tests/test_cmd_join.c
@@ -7,23 +7,20 @@
 #include <glib.h>
 
 #include "xmpp/xmpp.h"
-#include "xmpp/mock_xmpp.h"
 
 #include "ui/ui.h"
-#include "ui/mock_ui.h"
+#include "ui/stub_ui.h"
 
 #include "config/accounts.h"
-#include "config/mock_accounts.h"
 
 #include "command/commands.h"
 #include "muc.h"
 
 static void test_with_connection_status(jabber_conn_status_t status)
 {
-    mock_cons_show();
     CommandHelp *help = malloc(sizeof(CommandHelp));
 
-    mock_connection_status(status);
+    will_return(jabber_get_connection_status, status);
 
     expect_cons_show("You are not currently connected.");
 
@@ -55,12 +52,11 @@ void cmd_join_shows_message_when_undefined(void **state)
 
 void cmd_join_shows_usage_when_no_args(void **state)
 {
-    mock_cons_show();
     CommandHelp *help = malloc(sizeof(CommandHelp));
     help->usage = "some usage";
     gchar *args[] = { NULL };
 
-    mock_connection_status(JABBER_CONNECTED);
+    will_return(jabber_get_connection_status, JABBER_CONNECTED);
 
     expect_cons_show("Usage: some usage");
     expect_cons_show("");
@@ -73,11 +69,10 @@ void cmd_join_shows_usage_when_no_args(void **state)
 
 void cmd_join_shows_error_message_when_invalid_room_jid(void **state)
 {
-    mock_cons_show_error();
     CommandHelp *help = malloc(sizeof(CommandHelp));
     gchar *args[] = { "//@@/", NULL };
 
-    mock_connection_status(JABBER_CONNECTED);
+    will_return(jabber_get_connection_status, JABBER_CONNECTED);
 
     expect_cons_show_error("Specified room has incorrect format.");
     expect_cons_show("");
@@ -102,13 +97,15 @@ void cmd_join_uses_account_mucservice_when_no_service_specified(void **state)
 
     muc_init();
 
-    mock_connection_status(JABBER_CONNECTED);
-    mock_connection_account_name(account_name);
-    mock_accounts_get_account();
-    accounts_get_account_expect_and_return(account_name, account);
+    will_return(jabber_get_connection_status, JABBER_CONNECTED);
+    will_return(jabber_get_account_name, account_name);
 
-    mock_presence_join_room();
-    presence_join_room_expect(expected_room, nick, NULL);
+    expect_string(accounts_get_account, name, account_name);
+    will_return(accounts_get_account, account);
+
+    expect_string(presence_join_room, room, expected_room);
+    expect_string(presence_join_room, nick, nick);
+    expect_value(presence_join_room, passwd, NULL);
 
     gboolean result = cmd_join(args, *help);
     assert_true(result);
@@ -128,13 +125,15 @@ void cmd_join_uses_supplied_nick(void **state)
 
     muc_init();
 
-    mock_connection_status(JABBER_CONNECTED);
-    mock_connection_account_name(account_name);
-    mock_accounts_get_account();
-    accounts_get_account_expect_and_return(account_name, account);
+    will_return(jabber_get_connection_status, JABBER_CONNECTED);
+    will_return(jabber_get_account_name, account_name);
+
+    expect_string(accounts_get_account, name, account_name);
+    will_return(accounts_get_account, account);
 
-    mock_presence_join_room();
-    presence_join_room_expect(room, nick, NULL);
+    expect_string(presence_join_room, room, room);
+    expect_string(presence_join_room, nick, nick);
+    expect_value(presence_join_room, passwd, NULL);
 
     gboolean result = cmd_join(args, *help);
     assert_true(result);
@@ -154,13 +153,15 @@ void cmd_join_uses_account_nick_when_not_supplied(void **state)
 
     muc_init();
 
-    mock_connection_status(JABBER_CONNECTED);
-    mock_connection_account_name(account_name);
-    mock_accounts_get_account();
-    accounts_get_account_expect_and_return(account_name, account);
+    will_return(jabber_get_connection_status, JABBER_CONNECTED);
+    will_return(jabber_get_account_name, account_name);
 
-    mock_presence_join_room();
-    presence_join_room_expect(room, account_nick, NULL);
+    expect_string(accounts_get_account, name, account_name);
+    will_return(accounts_get_account, account);
+
+    expect_string(presence_join_room, room, room);
+    expect_string(presence_join_room, nick, account_nick);
+    expect_value(presence_join_room, passwd, NULL);
 
     gboolean result = cmd_join(args, *help);
     assert_true(result);
@@ -183,13 +184,15 @@ void cmd_join_uses_password_when_supplied(void **state)
 
     muc_init();
 
-    mock_connection_status(JABBER_CONNECTED);
-    mock_connection_account_name(account_name);
-    mock_accounts_get_account();
-    accounts_get_account_expect_and_return(account_name, account);
+    will_return(jabber_get_connection_status, JABBER_CONNECTED);
+    will_return(jabber_get_account_name, account_name);
+
+    expect_string(accounts_get_account, name, account_name);
+    will_return(accounts_get_account, account);
 
-    mock_presence_join_room();
-    presence_join_room_expect(expected_room, account_nick, password);
+    expect_string(presence_join_room, room, expected_room);
+    expect_string(presence_join_room, nick, account_nick);
+    expect_value(presence_join_room, passwd, password);
 
     gboolean result = cmd_join(args, *help);
     assert_true(result);
diff --git a/tests/testsuite.c b/tests/testsuite.c
index fb4570cb..7b3efbcb 100644
--- a/tests/testsuite.c
+++ b/tests/testsuite.c
@@ -491,6 +491,7 @@ int main(int argc, char* argv[]) {
 #else
         unit_test(cmd_otr_shows_message_when_otr_unsupported),
 #endif
+*/
         unit_test(cmd_join_shows_message_when_disconnecting),
         unit_test(cmd_join_shows_message_when_connecting),
         unit_test(cmd_join_shows_message_when_disconnected),
@@ -501,7 +502,7 @@ int main(int argc, char* argv[]) {
         unit_test(cmd_join_uses_supplied_nick),
         unit_test(cmd_join_uses_account_nick_when_not_supplied),
         unit_test(cmd_join_uses_password_when_supplied),
-
+/*
         unit_test(cmd_roster_shows_message_when_disconnecting),
         unit_test(cmd_roster_shows_message_when_connecting),
         unit_test(cmd_roster_shows_message_when_disconnected),
diff --git a/tests/xmpp/stub_xmpp.c b/tests/xmpp/stub_xmpp.c
index 03e5860a..f7fd80b3 100644
--- a/tests/xmpp/stub_xmpp.c
+++ b/tests/xmpp/stub_xmpp.c
@@ -91,7 +91,13 @@ char * presence_sub_request_find(char * search_str)
     return  NULL;
 }
 
-void presence_join_room(char *room, char *nick, char * passwd) {}
+void presence_join_room(char *room, char *nick, char * passwd)
+{
+    check_expected(room);
+    check_expected(nick);
+    check_expected(passwd);
+}
+
 void presence_change_room_nick(const char * const room, const char * const nick) {}
 void presence_leave_chat_room(const char * const room_jid) {}