home *** CD-ROM | disk | FTP | other *** search
/ Maximum CD 2011 June / maximum-cd-2011-06.iso / DiscContents / LibO_3.3.1_Win_x86_install_multi.exe / libreoffice1.cab / test_telnetlib.py < prev    next >
Encoding:
Python Source  |  2011-02-15  |  2.1 KB  |  80 lines

  1. import socket
  2. import threading
  3. import telnetlib
  4. import time
  5.  
  6. from unittest import TestCase
  7. from test import test_support
  8.  
  9. HOST = test_support.HOST
  10.  
  11. def server(evt, serv):
  12.     serv.listen(5)
  13.     evt.set()
  14.     try:
  15.         conn, addr = serv.accept()
  16.     except socket.timeout:
  17.         pass
  18.     finally:
  19.         serv.close()
  20.         evt.set()
  21.  
  22. class GeneralTests(TestCase):
  23.  
  24.     def setUp(self):
  25.         self.evt = threading.Event()
  26.         self.sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
  27.         self.sock.settimeout(3)
  28.         self.port = test_support.bind_port(self.sock)
  29.         threading.Thread(target=server, args=(self.evt,self.sock)).start()
  30.         self.evt.wait()
  31.         self.evt.clear()
  32.         time.sleep(.1)
  33.  
  34.     def tearDown(self):
  35.         self.evt.wait()
  36.  
  37.     def testBasic(self):
  38.         # connects
  39.         telnet = telnetlib.Telnet(HOST, self.port)
  40.         telnet.sock.close()
  41.  
  42.     def testTimeoutDefault(self):
  43.         self.assertTrue(socket.getdefaulttimeout() is None)
  44.         socket.setdefaulttimeout(30)
  45.         try:
  46.             telnet = telnetlib.Telnet("localhost", self.port)
  47.         finally:
  48.             socket.setdefaulttimeout(None)
  49.         self.assertEqual(telnet.sock.gettimeout(), 30)
  50.         telnet.sock.close()
  51.  
  52.     def testTimeoutNone(self):
  53.         # None, having other default
  54.         self.assertTrue(socket.getdefaulttimeout() is None)
  55.         socket.setdefaulttimeout(30)
  56.         try:
  57.             telnet = telnetlib.Telnet(HOST, self.port, timeout=None)
  58.         finally:
  59.             socket.setdefaulttimeout(None)
  60.         self.assertTrue(telnet.sock.gettimeout() is None)
  61.         telnet.sock.close()
  62.  
  63.     def testTimeoutValue(self):
  64.         telnet = telnetlib.Telnet("localhost", self.port, timeout=30)
  65.         self.assertEqual(telnet.sock.gettimeout(), 30)
  66.         telnet.sock.close()
  67.  
  68.     def testTimeoutOpen(self):
  69.         telnet = telnetlib.Telnet()
  70.         telnet.open("localhost", self.port, timeout=30)
  71.         self.assertEqual(telnet.sock.gettimeout(), 30)
  72.         telnet.sock.close()
  73.  
  74.  
  75. def test_main(verbose=None):
  76.     test_support.run_unittest(GeneralTests)
  77.  
  78. if __name__ == '__main__':
  79.     test_main()
  80.