diff options
author | R. David Murray <rdmurray@bitdance.com> | 2009-05-31 19:44:27 (GMT) |
---|---|---|
committer | R. David Murray <rdmurray@bitdance.com> | 2009-05-31 19:44:27 (GMT) |
commit | 1855c214d78b15dd6a46a97dc585503b34e49807 (patch) | |
tree | 8156c8ae772e92e31122270e5aadee4b4cf8bd6a /Lib | |
parent | a35f4b99158f4c5a4b237e76ed1d776d28170d4d (diff) | |
download | cpython-1855c214d78b15dd6a46a97dc585503b34e49807.zip cpython-1855c214d78b15dd6a46a97dc585503b34e49807.tar.gz cpython-1855c214d78b15dd6a46a97dc585503b34e49807.tar.bz2 |
Merged revisions 73077 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r73077 | r.david.murray | 2009-05-31 15:15:57 -0400 (Sun, 31 May 2009) | 4 lines
Issue 3848: document the fact that epoll register raises an IOError if
an fd is registered twice, and add some additional epoll tests. Patch
by Christian Heimes.
........
Diffstat (limited to 'Lib')
-rw-r--r-- | Lib/test/test_epoll.py | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/Lib/test/test_epoll.py b/Lib/test/test_epoll.py index b596052..ab6bf0b 100644 --- a/Lib/test/test_epoll.py +++ b/Lib/test/test_epoll.py @@ -95,6 +95,34 @@ class TestEPoll(unittest.TestCase): finally: ep.close() + # adding by object w/ fileno works, too. + ep = select.epoll(2) + try: + ep.register(server, select.EPOLLIN | select.EPOLLOUT) + ep.register(client, select.EPOLLIN | select.EPOLLOUT) + finally: + ep.close() + + ep = select.epoll(2) + try: + # TypeError: argument must be an int, or have a fileno() method. + self.assertRaises(TypeError, ep.register, object(), + select.EPOLLIN | select.EPOLLOUT) + self.assertRaises(TypeError, ep.register, None, + select.EPOLLIN | select.EPOLLOUT) + # ValueError: file descriptor cannot be a negative integer (-1) + self.assertRaises(ValueError, ep.register, -1, + select.EPOLLIN | select.EPOLLOUT) + # IOError: [Errno 9] Bad file descriptor + self.assertRaises(IOError, ep.register, 10000, + select.EPOLLIN | select.EPOLLOUT) + # registering twice also raises an exception + ep.register(server, select.EPOLLIN | select.EPOLLOUT) + self.assertRaises(IOError, ep.register, server, + select.EPOLLIN | select.EPOLLOUT) + finally: + ep.close() + def test_fromfd(self): server, client = self._connected_pair() |