about summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorJames Booth <boothj5@gmail.com>2015-05-27 19:48:25 +0100
committerJames Booth <boothj5@gmail.com>2015-05-27 19:48:25 +0100
commit3760084680ded8abe6ee6bae6244d513f07f6e00 (patch)
tree7fd017777ea70b2ac775639f42b9ea10cd62cb69
parentdb9376d82bcb71caae627b05f79849369798aa2f (diff)
downloadprofani-tty-3760084680ded8abe6ee6bae6244d513f07f6e00.tar.gz
Reimplemented stabber presence test
-rw-r--r--stabbertests/stabbertestsuite.c6
-rw-r--r--stabbertests/test_connect.c85
-rw-r--r--stabbertests/test_connect.h2
3 files changed, 39 insertions, 54 deletions
diff --git a/stabbertests/stabbertestsuite.c b/stabbertests/stabbertestsuite.c
index 55affa2a..906a1031 100644
--- a/stabbertests/stabbertestsuite.c
+++ b/stabbertests/stabbertestsuite.c
@@ -31,9 +31,9 @@ int main(int argc, char* argv[]) {
         unit_test_setup_teardown(connect_bad_password,
             init_prof_test,
             close_prof_test),
-//        unit_test_setup_teardown(show_presence_updates,
-//            init_prof_test,
-//            close_prof_test),
+        unit_test_setup_teardown(show_presence_updates,
+            init_prof_test,
+            close_prof_test),
 //        unit_test_setup_teardown(sends_rooms_iq,
 //            init_prof_test,
 //            close_prof_test),
diff --git a/stabbertests/test_connect.c b/stabbertests/test_connect.c
index b8f1a1a6..7e29469d 100644
--- a/stabbertests/test_connect.c
+++ b/stabbertests/test_connect.c
@@ -84,56 +84,41 @@ connect_bad_password(void **state)
     assert_true(prof_output("Login failed."));
 }
 
-//void
-//show_presence_updates(void **state)
-//{
-//    will_return(ui_ask_password, strdup("password"));
-//    expect_any_cons_show();
-//
-//    stbbr_for("roster",
-//        "<iq id=\"roster\" type=\"result\" to=\"stabber@localhost/profanity\">"
-//            "<query xmlns=\"jabber:iq:roster\" ver=\"362\">"
-//                "<item jid=\"buddy1@localhost\" subscription=\"both\" name=\"Buddy1\"/>"
-//                "<item jid=\"buddy2@localhost\" subscription=\"both\" name=\"Buddy2\"/>"
-//            "</query>"
-//        "</iq>"
-//    );
-//
-//    cmd_process_input(strdup("/connect stabber@localhost port 5230"));
-//    prof_process_xmpp(20);
-//
-//    stbbr_send(
-//        "<presence to=\"stabber@localhost\" from=\"buddy1@localhost/mobile\">"
-//            "<show>dnd</show>"
-//            "<status>busy!</status>"
-//        "</presence>"
-//        "<presence to=\"stabber@localhost\" from=\"buddy1@localhost/laptop\">"
-//            "<show>chat</show>"
-//            "<status>Talk to me!</status>"
-//        "</presence>"
-//        "<presence to=\"stabber@localhost\" from=\"buddy2@localhost/work\">"
-//            "<show>away</show>"
-//            "<status>Out of office</status>"
-//        "</presence>"
-//    );
-//
-//    Resource *resource1 = resource_new("mobile", RESOURCE_DND, "busy!", 0);
-//    expect_string(ui_contact_online, barejid, "buddy1@localhost");
-//    expect_check(ui_contact_online, resource, (CheckParameterValue)resource_equal_check, resource1);
-//    expect_value(ui_contact_online, last_activity, NULL);
-//
-//    Resource *resource2 = resource_new("laptop", RESOURCE_CHAT, "Talk to me!", 0);
-//    expect_string(ui_contact_online, barejid, "buddy1@localhost");
-//    expect_check(ui_contact_online, resource, (CheckParameterValue)resource_equal_check, resource2);
-//    expect_value(ui_contact_online, last_activity, NULL);
-//
-//    Resource *resource3 = resource_new("work", RESOURCE_AWAY, "Out of office", 0);
-//    expect_string(ui_contact_online, barejid, "buddy2@localhost");
-//    expect_check(ui_contact_online, resource, (CheckParameterValue)resource_equal_check, resource3);
-//    expect_value(ui_contact_online, last_activity, NULL);
-//
-//    prof_process_xmpp(20);
-//}
+void
+show_presence_updates(void **state)
+{
+    stbbr_for("roster",
+        "<iq id=\"roster\" type=\"result\" to=\"stabber@localhost/profanity\">"
+            "<query xmlns=\"jabber:iq:roster\" ver=\"362\">"
+                "<item jid=\"buddy1@localhost\" subscription=\"both\" name=\"Buddy1\"/>"
+                "<item jid=\"buddy2@localhost\" subscription=\"both\" name=\"Buddy2\"/>"
+            "</query>"
+        "</iq>"
+    );
+
+    prof_input("/connect stabber@localhost port 5230");
+    prof_input("password");
+    assert_true(prof_output("stabber@localhost logged in successfully"));
+
+    stbbr_send(
+        "<presence to=\"stabber@localhost\" from=\"buddy1@localhost/mobile\">"
+            "<show>dnd</show>"
+            "<status>busy!</status>"
+        "</presence>"
+        "<presence to=\"stabber@localhost\" from=\"buddy1@localhost/laptop\">"
+            "<show>chat</show>"
+            "<status>Talk to me!</status>"
+        "</presence>"
+        "<presence to=\"stabber@localhost\" from=\"buddy2@localhost/work\">"
+            "<show>away</show>"
+            "<status>Out of office</status>"
+        "</presence>"
+    );
+
+    assert_true(prof_output("Buddy1 (mobile) is dnd"));
+    assert_true(prof_output("Buddy1 (laptop) is chat"));
+    assert_true(prof_output("Buddy2 (work) is away"));
+}
 //
 //void
 //sends_rooms_iq(void **state)
diff --git a/stabbertests/test_connect.h b/stabbertests/test_connect.h
index a8795399..a6078078 100644
--- a/stabbertests/test_connect.h
+++ b/stabbertests/test_connect.h
@@ -3,7 +3,7 @@ void connect_jid_requests_roster(void **state);
 void connect_jid_sends_presence_after_receiving_roster(void **state);
 void connect_jid_requests_bookmarks(void **state);
 void connect_bad_password(void **state);
-//void show_presence_updates(void **state);
+void show_presence_updates(void **state);
 //void sends_rooms_iq(void **state);
 //void multiple_pings(void **state);
 //void responds_to_ping(void **state);