diff options
author | Jonny Lamb <jonny.lamb@collabora.co.uk> | 2011-10-26 09:09:33 +0100 |
---|---|---|
committer | Jonny Lamb <jonny.lamb@collabora.co.uk> | 2011-10-26 09:10:51 +0100 |
commit | 82e7b8a0f7461665e58381e7690e3c0f2ebeacc0 (patch) | |
tree | 3b7ddac431e5d99931f2342aa0af2f8e0c6d8877 | |
parent | fcf41a7e505a2d38cba5a40e82150bb03eb8d9a1 (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.py | 24 |
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) |