diff options
| author | Simon <simon@hardwired.org.uk> | 2011-03-22 17:58:52 (GMT) |
|---|---|---|
| committer | Simon <simon@hardwired.org.uk> | 2011-03-22 17:58:52 (GMT) |
| commit | 2e401babb793238564ca640fc802a52ab7f6c293 (patch) | |
| tree | 87a9b471e82604e76f96d556f5771322fb31818a /src/python/stdlib/test/test_errno.py | |
| parent | c096b2b14a200a0cc0a08cfea839c9e7f4edf22e (diff) | |
| parent | 04a9cbcb8855e64db660a8c6e23d79114b4afd83 (diff) | |
| download | powder-2e401babb793238564ca640fc802a52ab7f6c293.zip powder-2e401babb793238564ca640fc802a52ab7f6c293.tar.gz | |
Python console
Diffstat (limited to 'src/python/stdlib/test/test_errno.py')
| -rwxr-xr-x | src/python/stdlib/test/test_errno.py | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/src/python/stdlib/test/test_errno.py b/src/python/stdlib/test/test_errno.py new file mode 100755 index 0000000..bb8918f --- /dev/null +++ b/src/python/stdlib/test/test_errno.py @@ -0,0 +1,40 @@ +#! /usr/bin/env python +"""Test the errno module + Roger E. Masse +""" + +import errno +from test import test_support +import unittest + +std_c_errors = frozenset(['EDOM', 'ERANGE']) + +class ErrnoAttributeTests(unittest.TestCase): + + def test_for_improper_attributes(self): + # No unexpected attributes should be on the module. + for error_code in std_c_errors: + self.assertTrue(hasattr(errno, error_code), + "errno is missing %s" % error_code) + + def test_using_errorcode(self): + # Every key value in errno.errorcode should be on the module. + for value in errno.errorcode.itervalues(): + self.assertTrue(hasattr(errno, value), 'no %s attr in errno' % value) + + +class ErrorcodeTests(unittest.TestCase): + + def test_attributes_in_errorcode(self): + for attribute in errno.__dict__.iterkeys(): + if attribute.isupper(): + self.assertIn(getattr(errno, attribute), errno.errorcode, + 'no %s attr in errno.errorcode' % attribute) + + +def test_main(): + test_support.run_unittest(ErrnoAttributeTests, ErrorcodeTests) + + +if __name__ == '__main__': + test_main() |
