[Telepathy-commits] [telepathy-salut/master] Tests: check txt records after SetSelfCapabilities

Alban Crequy alban.crequy at collabora.co.uk
Thu Feb 26 11:20:06 PST 2009


---
 tests/twisted/avahi/test-caps-self.py |   26 ++++++++++++++++++++++++++
 1 files changed, 26 insertions(+), 0 deletions(-)

diff --git a/tests/twisted/avahi/test-caps-self.py b/tests/twisted/avahi/test-caps-self.py
index a2d8397..c4fef68 100644
--- a/tests/twisted/avahi/test-caps-self.py
+++ b/tests/twisted/avahi/test-caps-self.py
@@ -6,6 +6,7 @@ org.freedesktop.Telepathy.Connection.Interface.ContactCapabilities.DRAFT
 from saluttest import exec_test
 from avahitest import AvahiAnnouncer, AvahiListener
 from avahitest import get_host_name
+from avahitest import txt_get_key
 import avahi
 
 from xmppstream import setup_stream_listener, connect_to_stream
@@ -19,6 +20,27 @@ import dbus
 HT_CONTACT = 1
 caps_iface = 'org.freedesktop.Telepathy.' + \
              'Connection.Interface.ContactCapabilities.DRAFT'
+NS_TELEPATHY_CAPS = 'http://telepathy.freedesktop.org/caps'
+
+def check_caps(txt, ver=None):
+    for (key, val) in { "1st": "test",
+                        "last": "suite",
+                        "status": "avail",
+                        "txtvers": "1" }.iteritems():
+        v =  txt_get_key(txt, key)
+        assert v == val, (key, val, v)
+
+    if ver is None:
+        assert txt_get_key(txt, "hash") is None
+        assert txt_get_key(txt, "node") is None
+        assert txt_get_key(txt, "ver") is None
+    else:
+        assert txt_get_key(txt, "hash") == "sha-1"
+        assert txt_get_key(txt, "node") == NS_TELEPATHY_CAPS
+
+        v = txt_get_key(txt, "ver")
+        assert v == ver, (v, ver)
+
 
 def test(q, bus, conn):
     conn.Connect()
@@ -34,11 +56,15 @@ def test(q, bus, conn):
     service.resolve()
 
     e = q.expect('service-resolved', service = service)
+    check_caps(e.txt)
 
     conn_caps_iface = dbus.Interface(conn, caps_iface)
 
     # Advertise nothing
     conn_caps_iface.SetSelfCapabilities([])
 
+    e = q.expect('service-resolved', service = service)
+    check_caps(e.txt, ver='39YAP9DzkebC8Rmk5Sd3IsFCTO8=')
+
 if __name__ == '__main__':
     exec_test(test)
-- 
1.5.6.5




More information about the telepathy-commits mailing list