summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJonny Lamb <jonny.lamb@collabora.co.uk>2011-10-26 09:09:33 +0100
committerJonny Lamb <jonny.lamb@collabora.co.uk>2011-10-26 09:10:51 +0100
commit82e7b8a0f7461665e58381e7690e3c0f2ebeacc0 (patch)
tree3b7ddac431e5d99931f2342aa0af2f8e0c6d8877
parentfcf41a7e505a2d38cba5a40e82150bb03eb8d9a1 (diff)
ft-helper: test parsing incoming offer metadata
Signed-off-by: Jonny Lamb <jonny.lamb@collabora.co.uk>
-rw-r--r--tests/twisted/file-transfer/file_transfer_helper.py24
1 files changed, 19 insertions, 5 deletions
diff --git a/tests/twisted/file-transfer/file_transfer_helper.py b/tests/twisted/file-transfer/file_transfer_helper.py
index e4d251020..ea3ddbf0f 100644
--- a/tests/twisted/file-transfer/file_transfer_helper.py
+++ b/tests/twisted/file-transfer/file_transfer_helper.py
@@ -11,7 +11,7 @@ import ns
from bytestream import create_from_si_offer, announce_socks5_proxy
import bytestream
-from caps_helper import extract_data_forms
+from caps_helper import extract_data_forms, add_data_forms
from twisted.words.xish import domish, xpath
@@ -50,6 +50,10 @@ class FileTransferTest(object):
CONTACT_NAME = 'test-ft@localhost'
CONTACT_FULL_JID = 'test-ft@localhost/Telepathy'
+ service_name = 'a.wacky.service.name'
+ metadata = {'loads': 'of',
+ 'mental': 'data'}
+
def __init__(self, bytestream_cls, file, address_type, access_control, access_control_param):
self.file = file
self.bytestream_cls = bytestream_cls
@@ -177,6 +181,17 @@ class ReceiveFileTest(FileTransferTest):
file_node.addElement('desc', content=self.file.description)
# we support range transfer
file_node.addElement('range')
+
+ # Metadata
+ if self.service_name:
+ service_form = {ns.TP_FT_METADATA_SERVICE: {'ServiceName': [self.service_name]}}
+ add_data_forms(file_node, service_form)
+
+ if self.metadata:
+ metadata_form = {ns.TP_FT_METADATA: {k: [v] for k, v in self.metadata.items()}}
+ add_data_forms(file_node, metadata_form)
+
+ # so... lunch?
iq.send()
def check_new_channel(self):
@@ -223,6 +238,9 @@ class ReceiveFileTest(FileTransferTest):
self.check_platform_socket_types(props[cs.FT_AVAILABLE_SOCKET_TYPES])
+ assertEquals(self.service_name, props[cs.FT_SERVICE_NAME])
+ assertEquals(self.metadata, props[cs.FT_METADATA])
+
self.ft_path = path
def set_uri(self):
@@ -334,10 +352,6 @@ class ReceiveFileTest(FileTransferTest):
assert reason == cs.FT_STATE_CHANGE_REASON_NONE
class SendFileTest(FileTransferTest):
- service_name = 'a.wacky.service.name'
- metadata = {'loads': 'of',
- 'mental': 'data'}
-
def __init__(self, bytestream_cls, file, address_type, access_control, acces_control_param):
FileTransferTest.__init__(self, bytestream_cls, file, address_type, access_control, acces_control_param)