OUTPUT: <body xmlns='http://jabber.org/protocol/httpbind' xmlns:xmpp='urn:xmpp:xbosh' xml:lang='en' rid='1216' content='text/xml; charset=utf-8' to='test-d' ver='1.6'/>
INPUT: <stream:features><auth xmlns="http://jabber.org/features/iq-auth"/><register xmlns="http://jabber.org/features/iq-register"/><starttls xmlns="urn:ietf:params:xml:ns:xmpp-tls"/><mechanisms xmlns="urn:ietf:params:xml:ns:xmpp-sasl"><mechanism>PLAIN</mechanism><mechanism>ANONYMOUS</mechanism></mechanisms><session xmlns="urn:ietf:params:xml:ns:xmpp-session"/></stream:features>
OUTPUT: <auth xmlns='urn:ietf:params:xml:ns:xmpp-sasl' mechanism='PLAIN'>AGFkbWluAHN0YXRz</auth>
INPUT: <success xmlns="urn:ietf:params:xml:ns:xmpp-sasl"/>
OUTPUT: <stream:stream xmlns='jabber:client' xmlns:stream='http://etherx.jabber.org/streams' to='test-d' version='1.0'>
INPUT: <stream:features><register xmlns="http://jabber.org/features/iq-register"/><starttls xmlns="urn:ietf:params:xml:ns:xmpp-tls"/><bind xmlns="urn:ietf:params:xml:ns:xmpp-bind"/><session xmlns="urn:ietf:params:xml:ns:xmpp-session"/></stream:features>
OUTPUT: <iq type='set' id='bind1'><bind xmlns='urn:ietf:params:xml:ns:xmpp-bind'><resource>def-user-resource</resource></bind></iq>
INPUT: <iq to="admin@test-d/def-user-resource" id="bind1" type="result"><bind xmlns="urn:ietf:params:xml:ns:xmpp-bind"><jid>admin@test-d/def-user-resource</jid></bind></iq>
OUTPUT: <iq id="roster_3333" type="get"><query xmlns="jabber:iq:roster"/></iq>
INPUT: <iq to="admin@test-d/def-user-resource" id="roster_3333" type="result"><query xmlns="jabber:iq:roster"><item subscription="both" name="all-xmpp-test" jid="all-xmpp-test@test-d"/></query></iq>
OUTPUT: <iq id="roster-remove-1234" type="set"><query xmlns="jabber:iq:roster"><item subscription="remove" jid="all-xmpp-test@test-d"/></query></iq>
INPUT: <iq to="admin@test-d/def-user-resource" id="rsttig1" type="set"><query xmlns="jabber:iq:roster"><item subscription="remove" jid="all-xmpp-test@test-d"/></query></iq>
INPUT: <iq to="admin@test-d/def-user-resource" id="rsttig1" type="set"><query xmlns="jabber:iq:roster"><item subscription="remove" jid="all-xmpp-test@test-d"/></query></iq>
INPUT: <iq to="admin@test-d/def-user-resource" id="roster-remove-1234" type="result"/>
OUTPUT: <iq id="roster_7777" type="get"><query xmlns="jabber:iq:roster"/></iq>
INPUT: <iq to="admin@test-d/def-user-resource" id="roster_7777" type="result"><query xmlns="jabber:iq:roster"/></iq>
OUTPUT: <body xmlns='http://jabber.org/protocol/httpbind' xmlns:xmpp='urn:xmpp:xbosh' xml:lang='en' rid='1216' content='text/xml; charset=utf-8' to='test-d' ver='1.6'/>
INPUT: <stream:features><auth xmlns="http://jabber.org/features/iq-auth"/><register xmlns="http://jabber.org/features/iq-register"/><starttls xmlns="urn:ietf:params:xml:ns:xmpp-tls"/><mechanisms xmlns="urn:ietf:params:xml:ns:xmpp-sasl"><mechanism>PLAIN</mechanism><mechanism>ANONYMOUS</mechanism></mechanisms><session xmlns="urn:ietf:params:xml:ns:xmpp-session"/></stream:features>
OUTPUT: <auth xmlns='urn:ietf:params:xml:ns:xmpp-sasl' mechanism='PLAIN'>AGFsbC14bXBwLXRlc3QAYWxsLXhtcHAtdGVzdC1wYXNzd29yZA==</auth>
INPUT: <success xmlns="urn:ietf:params:xml:ns:xmpp-sasl"/>
OUTPUT: <stream:stream xmlns='jabber:client' xmlns:stream='http://etherx.jabber.org/streams' to='test-d' version='1.0'>
INPUT: <stream:features><register xmlns="http://jabber.org/features/iq-register"/><starttls xmlns="urn:ietf:params:xml:ns:xmpp-tls"/><bind xmlns="urn:ietf:params:xml:ns:xmpp-bind"/><session xmlns="urn:ietf:params:xml:ns:xmpp-session"/></stream:features>
OUTPUT: <iq type='set' id='bind1'><bind xmlns='urn:ietf:params:xml:ns:xmpp-bind'><resource>def-user-resource</resource></bind></iq>
INPUT: <iq to="all-xmpp-test@test-d/def-user-resource" id="bind1" type="result"><bind xmlns="urn:ietf:params:xml:ns:xmpp-bind"><jid>all-xmpp-test@test-d/def-user-resource</jid></bind></iq>
OUTPUT: <iq id="roster_444" type="get"><query xmlns="jabber:iq:roster"/></iq>
INPUT: <iq to="all-xmpp-test@test-d/def-user-resource" id="roster_444" type="result"><query xmlns="jabber:iq:roster"><item subscription="both" name="admin" jid="admin@test-d"/></query></iq>
INPUT: <iq to="all-xmpp-test@test-d/def-user-resource" id="rsttig1" type="set"><query xmlns="jabber:iq:roster"><item subscription="to" name="admin" jid="admin@test-d"/></query></iq>
INPUT: <iq to="all-xmpp-test@test-d/def-user-resource" id="rsttig2" type="set"><query xmlns="jabber:iq:roster"><item subscription="none" name="admin" jid="admin@test-d"/></query></iq>
INPUT: <presence to="all-xmpp-test@test-d" from="admin@test-d/def-user-resource" type="unavailable"/>
OUTPUT: <iq id="roster-remove-3210" type="set"><query xmlns="jabber:iq:roster"><item subscription="remove" jid="admin@test-d"/></query></iq>
INPUT: <iq to="all-xmpp-test@test-d/def-user-resource" id="rsttig3" type="set"><query xmlns="jabber:iq:roster"><item subscription="remove" jid="admin@test-d"/></query></iq>
INPUT: <iq to="all-xmpp-test@test-d/def-user-resource" id="rsttig3" type="set"><query xmlns="jabber:iq:roster"><item subscription="remove" jid="admin@test-d"/></query></iq>
INPUT: <iq to="all-xmpp-test@test-d/def-user-resource" id="roster-remove-3210" type="result"/>
OUTPUT: <iq id="roster_888" type="get"><query xmlns="jabber:iq:roster"/></iq>
INPUT: <iq to="all-xmpp-test@test-d/def-user-resource" id="roster_888" type="result"><query xmlns="jabber:iq:roster"/></iq>
