| Server IP : 123.56.80.60 / Your IP : 216.73.216.78 Web Server : Apache/2.4.54 (Win32) OpenSSL/1.1.1s PHP/7.4.33 mod_fcgid/2.3.10-dev System : Windows NT iZhx3sob14hnz7Z 10.0 build 14393 (Windows Server 2016) i586 User : SYSTEM ( 0) PHP Version : 7.4.33 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : C:/Program Files/python/Lib/site-packages/gevent/tests/ |
Upload File : |
import gevent
import sys
import gevent.testing as greentest
from gevent.testing import six
from gevent.testing import ExpectedException as ExpectedError
if six.PY2:
sys.exc_clear()
class RawException(Exception):
pass
def hello(err):
assert sys.exc_info() == (None, None, None), sys.exc_info()
raise err
def hello2():
try:
hello(ExpectedError('expected exception in hello'))
except ExpectedError:
pass
class Test(greentest.TestCase):
def test1(self):
error = RawException('hello')
expected_error = ExpectedError('expected exception in hello')
try:
raise error
except RawException:
self.expect_one_error()
g = gevent.spawn(hello, expected_error)
g.join()
self.assert_error(ExpectedError, expected_error)
self.assertIsInstance(g.exception, ExpectedError)
try:
raise
except: # pylint:disable=bare-except
ex = sys.exc_info()[1]
self.assertIs(ex, error)
def test2(self):
timer = gevent.get_hub().loop.timer(0)
timer.start(hello2)
try:
gevent.sleep(0.1)
self.assertEqual(sys.exc_info(), (None, None, None))
finally:
timer.close()
if __name__ == '__main__':
greentest.main()