symbian-qemu-0.9.1-12/python-2.6.1/Lib/test/test_poplib.py
changeset 1 2fb8b9db1c86
equal deleted inserted replaced
0:ffa851df0825 1:2fb8b9db1c86
       
     1 import socket
       
     2 import threading
       
     3 import poplib
       
     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     try:
       
    14         conn, addr = serv.accept()
       
    15     except socket.timeout:
       
    16         pass
       
    17     else:
       
    18         conn.send("+ Hola mundo\n")
       
    19         conn.close()
       
    20     finally:
       
    21         serv.close()
       
    22         evt.set()
       
    23 
       
    24 class GeneralTests(TestCase):
       
    25 
       
    26     def setUp(self):
       
    27         self.evt = threading.Event()
       
    28         self.sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
       
    29         self.sock.settimeout(3)
       
    30         self.port = test_support.bind_port(self.sock)
       
    31         threading.Thread(target=server, args=(self.evt,self.sock)).start()
       
    32         time.sleep(.1)
       
    33 
       
    34     def tearDown(self):
       
    35         self.evt.wait()
       
    36 
       
    37     def testBasic(self):
       
    38         # connects
       
    39         pop = poplib.POP3(HOST, self.port)
       
    40         pop.sock.close()
       
    41 
       
    42     def testTimeoutDefault(self):
       
    43         self.assertTrue(socket.getdefaulttimeout() is None)
       
    44         socket.setdefaulttimeout(30)
       
    45         try:
       
    46             pop = poplib.POP3("localhost", self.port)
       
    47         finally:
       
    48             socket.setdefaulttimeout(None)
       
    49         self.assertEqual(pop.sock.gettimeout(), 30)
       
    50         pop.sock.close()
       
    51 
       
    52     def testTimeoutNone(self):
       
    53         self.assertTrue(socket.getdefaulttimeout() is None)
       
    54         socket.setdefaulttimeout(30)
       
    55         try:
       
    56             pop = poplib.POP3(HOST, self.port, timeout=None)
       
    57         finally:
       
    58             socket.setdefaulttimeout(None)
       
    59         self.assertTrue(pop.sock.gettimeout() is None)
       
    60         pop.sock.close()
       
    61 
       
    62     def testTimeoutValue(self):
       
    63         pop = poplib.POP3("localhost", self.port, timeout=30)
       
    64         self.assertEqual(pop.sock.gettimeout(), 30)
       
    65         pop.sock.close()
       
    66 
       
    67 
       
    68 def test_main(verbose=None):
       
    69     test_support.run_unittest(GeneralTests)
       
    70 
       
    71 if __name__ == '__main__':
       
    72     test_main()