home *** CD-ROM | disk | FTP | other *** search
/ Maximum CD 2011 July / maximum-cd-2011-07.iso / DiscContents / LibO_3.3.2_Win_x86_install_multi.exe / libreoffice1.cab / test_errno.py < prev    next >
Encoding:
Python Source  |  2011-03-15  |  1.2 KB  |  41 lines

  1. #! /usr/bin/env python
  2. """Test the errno module
  3.    Roger E. Masse
  4. """
  5.  
  6. import errno
  7. from test import test_support
  8. import unittest
  9.  
  10. std_c_errors = frozenset(['EDOM', 'ERANGE'])
  11.  
  12. class ErrnoAttributeTests(unittest.TestCase):
  13.  
  14.     def test_for_improper_attributes(self):
  15.         # No unexpected attributes should be on the module.
  16.         for error_code in std_c_errors:
  17.             self.assert_(hasattr(errno, error_code),
  18.                             "errno is missing %s" % error_code)
  19.  
  20.     def test_using_errorcode(self):
  21.         # Every key value in errno.errorcode should be on the module.
  22.         for value in errno.errorcode.itervalues():
  23.             self.assert_(hasattr(errno, value), 'no %s attr in errno' % value)
  24.  
  25.  
  26. class ErrorcodeTests(unittest.TestCase):
  27.  
  28.     def test_attributes_in_errorcode(self):
  29.         for attribute in errno.__dict__.iterkeys():
  30.             if attribute.isupper():
  31.                 self.assert_(getattr(errno, attribute) in errno.errorcode,
  32.                              'no %s attr in errno.errorcode' % attribute)
  33.  
  34.  
  35. def test_main():
  36.     test_support.run_unittest(ErrnoAttributeTests, ErrorcodeTests)
  37.  
  38.  
  39. if __name__ == '__main__':
  40.     test_main()
  41.