about summary refs log tree commit diff stats
path: root/functionaltests/test_presence.c
diff options
context:
space:
mode:
Diffstat (limited to 'functionaltests/test_presence.c')
-rw-r--r--functionaltests/test_presence.c25
1 files changed, 25 insertions, 0 deletions
diff --git a/functionaltests/test_presence.c b/functionaltests/test_presence.c
index 210cdaaf..6129339d 100644
--- a/functionaltests/test_presence.c
+++ b/functionaltests/test_presence.c
@@ -226,3 +226,28 @@ presence_includes_priority(void **state)
     ));
     assert_true(prof_output_exact("Status set to chat (priority 25), \"Free to talk\"."));
 }
+
+void
+presence_received(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_connect("stabber@localhost", "password");
+    stbbr_wait_for("prof_presence_1");
+
+    stbbr_send(
+        "<presence to=\"stabber@localhost\" from=\"buddy1@localhost/mobile\">"
+            "<priority>10</priority>"
+            "<status>I'm here</status>"
+        "</presence>"
+    );
+
+    assert_true(prof_output_exact("Buddy1 (mobile) is online, \"I'm here\""));
+}