Exemple #1
0
    def testConnectTimeout(self):
        # Test connect() timeout
        _timeout = 0.001
        self.sock.settimeout(_timeout)

        # If we are too close to www.python.org, this test will fail.
        # Pick a host that should be farther away.
        if (socket.getfqdn().split('.')[-2:] == ['python', 'org']
                or socket.getfqdn().split('.')[-2:-1] == ['xs4all']):
            self.addr_remote = ('tut.fi', 80)

        _t1 = time.time()
        self.assertRaises(socket.error, self.sock.connect, self.addr_remote)
        _t2 = time.time()

        _delta = abs(_t1 - _t2)
        self.assertTrue(
            _delta < _timeout + self.fuzz,
            "timeout (%g) is more than %g seconds more than expected (%g)" %
            (_delta, self.fuzz, _timeout))
Exemple #2
0
 def testHostnameRes(self):
     # Testing hostname resolution mechanisms
     hostname = socket.gethostname()
     try:
         ip = socket.gethostbyname(hostname)
     except socket.error:
         # Probably name lookup wasn't set up right; skip this test
         return
     self.assert_(ip.find('.') >= 0, "Error resolving host to ip.")
     try:
         hname, aliases, ipaddrs = socket.gethostbyaddr(ip)
     except socket.error:
         # Probably a similar problem as above; skip this test
         return
     all_host_names = [hostname, hname] + aliases
     fqhn = socket.getfqdn(ip)
     if not fqhn in all_host_names:
         self.fail(
             "Error testing host resolution mechanisms. (fqdn: %s, all: %s)"
             % (fqhn, repr(all_host_names)))
Exemple #3
0
 def address_string(self):
      host, port = self.client_address[:2]
      return socket.getfqdn(host)
Exemple #4
0
 def server_bind(self):
     """Override server_bind to store the server name."""
     SocketServer.TCPServer.server_bind(self)
     host, port = self.socket.getsockname()[:2]
     self.server_name = socket.getfqdn(host)
     self.server_port = port