diff options
author | Jonny Lamb <jonny.lamb@collabora.co.uk> | 2011-10-26 11:05:58 +0100 |
---|---|---|
committer | Jonny Lamb <jonny.lamb@collabora.co.uk> | 2011-10-26 11:05:58 +0100 |
commit | 08599349b9681f588826393b4c8c2debe228a50b (patch) | |
tree | f6266709a89f980f6c83dee6f073bb83a37027b0 | |
parent | b4f1e9b52846826faf4b843cf4c3bdd00f75150c (diff) |
metadata test: ensure we get an error with a bad Metadata property
Signed-off-by: Jonny Lamb <jonny.lamb@collabora.co.uk>
-rw-r--r-- | tests/twisted/file-transfer/metadata.py | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/tests/twisted/file-transfer/metadata.py b/tests/twisted/file-transfer/metadata.py index 521025f55..a30417415 100644 --- a/tests/twisted/file-transfer/metadata.py +++ b/tests/twisted/file-transfer/metadata.py @@ -17,6 +17,34 @@ class ReceiveFileNoMetadata(SendFileTest): service_name = '' metadata = {} +class SendFileBadProps(SendFileTest): + metadata = {'FORM_TYPE': 'this shouldnt be allowed'} + + def request_ft_channel(self): + requests_iface = dbus.Interface(self.conn, cs.CONN_IFACE_REQUESTS) + + request = { cs.CHANNEL_TYPE: cs.CHANNEL_TYPE_FILE_TRANSFER, + cs.TARGET_HANDLE_TYPE: cs.HT_CONTACT, + cs.TARGET_HANDLE: self.handle, + cs.FT_CONTENT_TYPE: self.file.content_type, + cs.FT_FILENAME: self.file.name, + cs.FT_SIZE: self.file.size, + cs.FT_CONTENT_HASH_TYPE: self.file.hash_type, + cs.FT_CONTENT_HASH: self.file.hash, + cs.FT_DESCRIPTION: self.file.description, + cs.FT_DATE: self.file.date, + cs.FT_INITIAL_OFFSET: 0, + cs.FT_SERVICE_NAME: self.service_name, + cs.FT_METADATA: dbus.Dictionary(self.metadata, signature='ss')} + + call_async(self.q, requests_iface, 'CreateChannel', request) + + # FORM_TYPE is not allowed, soz + self.q.expect('dbus-error', method='CreateChannel', name=cs.INVALID_ARGUMENT) + + return True + if __name__ == '__main__': exec_file_transfer_test(SendFileNoMetadata, True) exec_file_transfer_test(ReceiveFileNoMetadata, True) + exec_file_transfer_test(SendFileBadProps, True) |