diff options
author | Trever Fischer <tdfischer@fedoraproject.org> | 2012-02-22 16:29:11 -0500 |
---|---|---|
committer | Trever Fischer <tdfischer@fedoraproject.org> | 2012-03-07 17:15:54 -0500 |
commit | 053775004d2a5bf0e96199b193db4ea9eaaa1116 (patch) | |
tree | 6290b78f3bc1a569aa35cbb12ffbffe8e24efe51 /tests | |
parent | 47e7793ebb36b6192d812ecc6446adaafec897d2 (diff) | |
download | telepathy-salut-053775004d2a5bf0e96199b193db4ea9eaaa1116.tar.gz |
Implement support for testing sockets that are not AF_UNIX
Actually test IPv4/6 sockets
Diffstat (limited to 'tests')
5 files changed, 33 insertions, 10 deletions
diff --git a/tests/twisted/avahi/file-transfer/file_transfer_helper.py b/tests/twisted/avahi/file-transfer/file_transfer_helper.py index 82624057..dcfe7202 100644 --- a/tests/twisted/avahi/file-transfer/file_transfer_helper.py +++ b/tests/twisted/avahi/file-transfer/file_transfer_helper.py @@ -286,8 +286,8 @@ class ReceiveFileTest(FileTransferTest): cs.CHANNEL_TYPE_FILE_TRANSFER, 'URI', 'badger://snake') self.q.expect('dbus-error', method='Set', name=cs.INVALID_ARGUMENT) - def accept_file(self): - self.address = self.ft_channel.AcceptFile(cs.SOCKET_ADDRESS_TYPE_UNIX, + def accept_file(self, type = cs.SOCKET_ADDRESS_TYPE_UNIX): + self.address = self.ft_channel.AcceptFile(type, cs.SOCKET_ACCESS_CONTROL_LOCALHOST, "", 5, byte_arrays=True) e = self.q.expect('dbus-signal', signal='FileTransferStateChanged') @@ -326,9 +326,9 @@ class ReceiveFileTest(FileTransferTest): assert state == cs.FT_STATE_COMPLETED assert reason == cs.FT_STATE_CHANGE_REASON_NONE - def receive_file(self): + def receive_file(self, type=socket.AF_UNIX): # Connect to Salut's socket - s = socket.socket(socket.AF_UNIX, socket.SOCK_STREAM) + s = socket.socket(type, socket.SOCK_STREAM) s.connect(self.address) self.httpd.handle_request() @@ -466,8 +466,8 @@ class SendFileTest(FileTransferTest): else: assert ns.TP_FT_METADATA not in forms - def provide_file(self): - self.address = self.ft_channel.ProvideFile(cs.SOCKET_ADDRESS_TYPE_UNIX, + def provide_file(self, type = cs.SOCKET_ADDRESS_TYPE_UNIX): + self.address = self.ft_channel.ProvideFile(type, cs.SOCKET_ACCESS_CONTROL_LOCALHOST, "", byte_arrays=True) def client_request_file(self): @@ -482,8 +482,8 @@ class SendFileTest(FileTransferTest): # Did we received the right file? assert data == self.file.data - def send_file(self): - s = socket.socket(socket.AF_UNIX, socket.SOCK_STREAM) + def send_file(self, socketType = socket.AF_UNIX): + s = socket.socket(socketType, socket.SOCK_STREAM) s.connect(self.address) s.send(self.file.data) diff --git a/tests/twisted/avahi/file-transfer/receive-file-ipv4.py b/tests/twisted/avahi/file-transfer/receive-file-ipv4.py index 60664715..bbc84662 100644 --- a/tests/twisted/avahi/file-transfer/receive-file-ipv4.py +++ b/tests/twisted/avahi/file-transfer/receive-file-ipv4.py @@ -12,6 +12,8 @@ from xmppstream import connect_to_stream, setup_stream_listener from twisted.words.xish import domish +import constants as cs + class TestReceiveFileIPv4(ReceiveFileTest): CONTACT_NAME = 'test-ft' @@ -39,6 +41,12 @@ class TestReceiveFileIPv4(ReceiveFileTest): protocol = avahi.PROTO_INET) return str(e.pt), e.port + def accept_file(self): + ReceiveFileTest.accept_file(self, cs.SOCKET_ADDRESS_TYPE_IPV4); + + def receive_file(self): + ReceiveFileTest.receive_file(self, socket.AF_INET); + def connect_to_salut(self): host, port = self._resolve_salut_presence() diff --git a/tests/twisted/avahi/file-transfer/receive-file-ipv6.py b/tests/twisted/avahi/file-transfer/receive-file-ipv6.py index e7775f81..330c32e2 100644 --- a/tests/twisted/avahi/file-transfer/receive-file-ipv6.py +++ b/tests/twisted/avahi/file-transfer/receive-file-ipv6.py @@ -17,6 +17,7 @@ if not check_ipv6_enabled(): print "Skipped test as IPv6 doesn't seem to be available" # exiting 77 causes automake to consider the test to have been skipped raise SystemExit(77) +import constants as cs class TestReceiveFileIPv6(ReceiveFileTest): CONTACT_NAME = 'test-ft' @@ -44,6 +45,12 @@ class TestReceiveFileIPv6(ReceiveFileTest): protocol = avahi.PROTO_INET6) return str(e.pt), e.port + def accept_file(self): + ReceiveFileTest.accept_file(self, cs.SOCKET_ADDRESS_TYPE_IPV6); + + def receive_file(self): + ReceiveFileTest.receive_file(self, socket.AF_INET6); + def connect_to_salut(self): host, port = self._resolve_salut_presence() diff --git a/tests/twisted/avahi/file-transfer/send-file-ipv4.py b/tests/twisted/avahi/file-transfer/send-file-ipv4.py index f3c86096..d8876500 100644 --- a/tests/twisted/avahi/file-transfer/send-file-ipv4.py +++ b/tests/twisted/avahi/file-transfer/send-file-ipv4.py @@ -3,6 +3,7 @@ from saluttest import exec_test from avahitest import AvahiAnnouncer, get_host_name from xmppstream import setup_stream_listener from file_transfer_helper import SendFileTest +import socket import constants as cs @@ -19,12 +20,15 @@ class SendFileTransferIPv4(SendFileTest): basic_txt, proto=avahi.PROTO_INET) def provide_file(self): - SendFileTest.provide_file(self) + SendFileTest.provide_file(self, cs.SOCKET_ADDRESS_TYPE_IPV4) # state is still Pending as remote didn't accept the transfer yet state = self.ft_props.Get(cs.CHANNEL_TYPE_FILE_TRANSFER, 'State') assert state == cs.FT_STATE_PENDING + def send_file(self): + SendFileTest.send_file(socket.AF_INET); + def client_request_file(self): SendFileTest.client_request_file(self) diff --git a/tests/twisted/avahi/file-transfer/send-file-ipv6.py b/tests/twisted/avahi/file-transfer/send-file-ipv6.py index 963a84ce..05c8f3a7 100644 --- a/tests/twisted/avahi/file-transfer/send-file-ipv6.py +++ b/tests/twisted/avahi/file-transfer/send-file-ipv6.py @@ -3,6 +3,7 @@ from saluttest import exec_test from avahitest import AvahiAnnouncer, get_host_name from xmppstream import setup_stream_listener6 from file_transfer_helper import SendFileTest +import socket import constants as cs @@ -23,12 +24,15 @@ class SendFileTransferIPv6(SendFileTest): basic_txt, proto=avahi.PROTO_INET6) def provide_file(self): - SendFileTest.provide_file(self) + SendFileTest.provide_file(self, cs.SOCKET_ADDRESS_TYPE_IPV6) # state is still Pending as remote didn't accept the transfer yet state = self.ft_props.Get(cs.CHANNEL_TYPE_FILE_TRANSFER, 'State') assert state == cs.FT_STATE_PENDING + def send_file(self): + SendFileTest.send_file(socket.AF_INET6); + def client_request_file(self): SendFileTest.client_request_file(self) |