Merged revisions 81299 via svnmerge from

svn+ssh://pythondev@svn.python.org/python/branches/py3k

................
  r81299 | giampaolo.rodola | 2010-05-18 22:11:58 +0200 (mar, 18 mag 2010) | 9 lines

  Merged revisions 81294 via svnmerge from
  svn+ssh://pythondev@svn.python.org/python/trunk

  ........
    r81294 | giampaolo.rodola | 2010-05-18 22:04:31 +0200 (mar, 18 mag 2010) | 1 line

    Fix issue #8573 (asyncore._strerror bug): fixed os.strerror typo; included NameError in the tuple of expected exception; added test case for asyncore._strerror.
  ........
................
This commit is contained in:
Giampaolo Rodolà 2010-05-18 20:13:43 +00:00
parent bb35b21bce
commit 19531db0b8
2 changed files with 11 additions and 2 deletions

View File

@ -61,8 +61,8 @@ except NameError:
def _strerror(err):
try:
return strerror(err)
except (ValueError, OverflowError):
return os.strerror(err)
except (ValueError, OverflowError, NameError):
if err in errorcode:
return errorcode[err]
return "Unknown error %s" %err

View File

@ -6,6 +6,7 @@ import socket
import threading
import sys
import time
import errno
from test import support
from test.support import TESTFN, run_unittest, unlink
@ -315,6 +316,14 @@ class DispatcherTests(unittest.TestCase):
# test cheap inheritance with the underlying socket
self.assertEqual(d.family, socket.AF_INET)
def test_strerror(self):
# refers to bug #8573
err = asyncore._strerror(errno.EPERM)
if hasattr(os, 'strerror'):
self.assertEqual(err, os.strerror(errno.EPERM))
err = asyncore._strerror(-1)
self.assertTrue("unknown error" in err.lower())
class dispatcherwithsend_noread(asyncore.dispatcher_with_send):
def readable(self):