--- a/test/transport_tcp.py Sun Aug 23 22:39:19 2009 +0300
+++ b/test/transport_tcp.py Sun Aug 23 22:43:39 2009 +0300
@@ -1,6 +1,6 @@
import unittest
-from qmsk.net.socket import socket as _socket, af_inet
+from qmsk.net.socket import socket as _socket, af_inet, af_inet6
from qmsk.net.transport import tcp, socket, endpoint
class TestService (unittest.TestCase) :
@@ -56,6 +56,15 @@
self.assertEquals(cs.sock.getsockname(), sockaddr)
self.assertEquals(cs.sock.getpeername(), self.sockaddr)
+
+ def test_connect_bind6 (self) :
+ sockaddr = af_inet6.sockaddr_in6('::1', self.sockaddr.port + 1)
+
+ # connect with bind()
+ cc = tcp.Client(self.addr, bind_endpoint=endpoint.SockAddr(sockaddr))
+
+ # should fail (IPv6 -> IPv4)
+ self.assertRaises(socket.SocketConnectEndpointError, cc.connect)
def test_connect_inet (self) :
cc = tcp.Client(endpoint.InetAddr('localhost', self.sockaddr.port), socket.AF_INET)
@@ -63,6 +72,7 @@
self.assertEquals(cs.sock.getpeername(), self.sockaddr)
+
if __name__ == '__main__' :
unittest.main()