diff options
Diffstat (limited to 'tests/functionaltests/test_carbons.c')
-rw-r--r-- | tests/functionaltests/test_carbons.c | 70 |
1 files changed, 70 insertions, 0 deletions
diff --git a/tests/functionaltests/test_carbons.c b/tests/functionaltests/test_carbons.c index f0a8214b..96639d60 100644 --- a/tests/functionaltests/test_carbons.c +++ b/tests/functionaltests/test_carbons.c @@ -48,3 +48,73 @@ send_disable_carbons(void **state) "<iq id=\"*\" type=\"set\"><disable xmlns=\"urn:xmpp:carbons:2\"/></iq>" )); } + +void +receive_carbon(void **state) +{ + prof_input("/carbons on"); + + prof_connect(); + assert_true(stbbr_received( + "<iq id=\"*\" type=\"set\"><enable xmlns=\"urn:xmpp:carbons:2\"/></iq>" + )); + + stbbr_send( + "<presence to=\"stabber@localhost\" from=\"buddy1@localhost/mobile\">" + "<priority>10</priority>" + "<status>On my mobile</status>" + "</presence>" + ); + assert_true(prof_output_exact("Buddy1 (mobile) is online, \"On my mobile\"")); + prof_input("/msg Buddy1"); + prof_output_exact("unencrypted"); + + stbbr_send( + "<message type=\"chat\" to=\"stabber@localhost/profanity\" from=\"buddy1@localhost\">" + "<received xmlns=\"urn:xmpp:carbons:2\">" + "<forwarded xmlns=\"urn:xmpp:forward:0\">" + "<message id=\"prof_msg_7\" xmlns=\"jabber:client\" type=\"chat\" lang=\"en\" to=\"stabber@localhost/profanity\" from=\"buddy1@localhost/mobile\">" + "<body>test carbon from recipient</body>" + "</message>" + "</forwarded>" + "</received>" + "</message>" + ); + + assert_true(prof_output_regex("Buddy1/mobile: .+test carbon from recipient")); +} + +void +receive_self_carbon(void **state) +{ + prof_input("/carbons on"); + + prof_connect(); + assert_true(stbbr_received( + "<iq id=\"*\" type=\"set\"><enable xmlns=\"urn:xmpp:carbons:2\"/></iq>" + )); + + stbbr_send( + "<presence to=\"stabber@localhost\" from=\"buddy1@localhost/mobile\">" + "<priority>10</priority>" + "<status>On my mobile</status>" + "</presence>" + ); + assert_true(prof_output_exact("Buddy1 (mobile) is online, \"On my mobile\"")); + prof_input("/msg Buddy1"); + prof_output_exact("unencrypted"); + + stbbr_send( + "<message type=\"chat\" to=\"stabber@localhost/profanity\" from=\"stabber@localhost\">" + "<sent xmlns=\"urn:xmpp:carbons:2\">" + "<forwarded xmlns=\"urn:xmpp:forward:0\">" + "<message id=\"59\" xmlns=\"jabber:client\" type=\"chat\" to=\"buddy1@localhost/mobile\" lang=\"en\" from=\"stabber@localhost/profanity\">" + "<body>self sent carbon</body>" + "</message>" + "</forwarded>" + "</sent>" + "</message>" + ); + + assert_true(prof_output_regex("me: .+self sent carbon")); +} |