Your IP : 216.73.216.196


Current Path : /opt/alt/python312/lib64/python3.12/test/__pycache__/
Upload File :
Current File : //opt/alt/python312/lib64/python3.12/test/__pycache__/test_webbrowser.cpython-312.opt-2.pyc

�

�#�jt5��L�ddlZddlZddlZddlZddlZddlZddlmZddlmZddl	m
Z
ddl	mZejsejd��dZdZGd	�d
ej �ZGd�d�ZGd
�deej&�ZGd�deej&�ZGd�deej&�ZGd�deej&�ZGd�deej&�ZGd�deej&�ZGd�deej&�ZGd�deej&�ZGd�d�Zej:ej<dk(d �Gd!�d"ej&��ZGd#�d$ej&�Z Gd%�d&ej&�Z!e"d'k(rejF�yy)(�N)�mock)�support)�
import_helper)�	os_helperz"test webserver requires subprocesszhttps://www.example.com�testc��eZdZd�Zdd�Zy)�	PopenMockc��y�Nr���selfs �;/opt/alt/python312/lib64/python3.12/test/test_webbrowser.py�pollzPopenMock.poll����Nc��yrr)r�secondss  r�waitzPopenMock.waitrr�N)�__name__�
__module__�__qualname__rrrrrr	r	s���rr	c�"�eZdZegid�d�Zd�Zy)�CommandTestMixin)�args�kwc���	t�}tj|td|�|j	t
��}t
||�|i|��tjjdd}|j|dt
�|jd�|D]4}	|j|	|�|j|j|	���6|j||�y)N�Popen��namer)
r	r�patch�
subprocess�
browser_class�CMD_NAME�getattrr�	call_args�assertEqual�pop�assertIn�index)
r�methrr�options�	arguments�popen�browser�
popen_args�options
          r�_testzCommandTestMixin._tests���		�����
�
�d�J���7��$�$�(�$�3��������+��+��%�%�/�/��2�1�5�
�����A���1����q���F��M�M�&�*�-��N�N�:�+�+�F�3�4��	
����Y�/rc��|jt��}|jtd�5|j	dt
���ddd�y#1swYyxYw)Nr �=^Invalid URL \(leading dash disallowed\): '--key=val http.*'$�
--key=val )r$r%�assertRaisesRegex�
ValueError�open�URL�rr0s  r�test_reject_dash_prefixesz*CommandTestMixin.test_reject_dash_prefixes5sN���$�$�(�$�3��
�
#�
#��L�
�
�L�L�:�c�U�+�,�	
�
�
�s�A�AN)rrrr:r3r<rrrrrs��#&�%�B�0�.-rrc�*�eZdZejZd�Zy)�GenericBrowserCommandTestc�6�|jdgtg��y�Nr9�r-r.�r3r:r
s r�	test_openz#GenericBrowserCommandTest.test_openB����
�
�6��!�U�	�	$rN)rrr�
webbrowser�GenericBrowserr$rCrrrr>r>>s���-�-�M�$rr>c�*�eZdZejZd�Zy)�BackgroundBrowserCommandTestc�6�|jdgtg��yr@rBr
s rrCz&BackgroundBrowserCommandTest.test_openLrDrN)rrrrE�BackgroundBrowserr$rCrrrrHrHHs���0�0�M�$rrHc�B�eZdZejZd�Zd�Zd�Zd�Z	d�Z
y)�ChromeCommandTestc�6�|jdgtg��yr@rBr
s rrCzChromeCommandTest.test_openVrDrc�L�|jdtd��gtg��y�Nr9F��	autoraise�rr-r.�r3�dictr:r
s r�test_open_with_autoraise_falsez0ChromeCommandTest.test_open_with_autoraise_false[�$���
�
�6�d�U�3��!�U�	�	$rc�8�|jddgtg��y�N�open_newz--new-windowrArBr
s r�
test_open_newzChromeCommandTest.test_open_new`� ���
�
�:�*�+�!�U�	�	$rc�6�|jdgtg��y�N�open_new_tabrArBr
s r�test_open_new_tabz#ChromeCommandTest.test_open_new_tabe����
�
�>��!�U�	�	$rc� �|jt��}|jt�5|j	d�ddd�|jt�5|j	dd��ddd�y#1swY�;xYw#1swYyxYw)Nr z%action--incognitoz%action�)�new)r$r%�assertRaisesr8r9r;s  r� test_reject_action_dash_prefixesz2ChromeCommandTest.test_reject_action_dash_prefixesjso���$�$�(�$�3��
�
�
�z�
*��L�L�-�.�+��
�
�z�
*��L�L���L�*�+�
*�	+�
*��+�
*�s�A8�B�8B�B
N)rrrrE�Chromer$rCrUrZr_rerrrrLrLRs&���%�%�M�$�
$�
$�
$�
+rrLc�<�eZdZejZd�Zd�Zd�Zd�Z	y)�EdgeCommandTestc�6�|jdgtg��yr@rBr
s rrCzEdgeCommandTest.test_openxrDrc�L�|jdtd��gtg��yrOrSr
s rrUz.EdgeCommandTest.test_open_with_autoraise_false}rVrc�8�|jddgtg��yrXrBr
s rrZzEdgeCommandTest.test_open_new�r[rc�6�|jdgtg��yr]rBr
s rr_z!EdgeCommandTest.test_open_new_tab�r`rN)
rrrrE�Edger$rCrUrZr_rrrrhrhts���O�O�M�$�
$�
$�
$rrhc�<�eZdZejZd�Zd�Zd�Zd�Z	y)�MozillaCommandTestc�6�|jdgtg��yr@rBr
s rrCzMozillaCommandTest.test_open�rDrc�L�|jdtd��gtg��yrOrSr
s rrUz1MozillaCommandTest.test_open_with_autoraise_false�rVrc�8�|jdgdtg��y)NrYz-new-windowrArBr
s rrZz MozillaCommandTest.test_open_new�s ���
�
�:��+�S�1�	�	3rc�8�|jdgdtg��y)Nr^z-new-tabrArBr
s rr_z$MozillaCommandTest.test_open_new_tab�s ���
�
�>��(�#�.�	�	0rN)
rrrrE�Mozillar$rCrUrZr_rrrroro�s!���&�&�M�$�
$�
3�
0rroc�<�eZdZejZd�Zd�Zd�Zd�Z	y)�EpiphanyCommandTestc�8�|jddgtg��y)Nr9�-nrArBr
s rrCzEpiphanyCommandTest.test_open�s���
�
�6� �6�!�U�	�	$rc�P�|jdtd��ddgtg��y)Nr9FrPz-noraiserxrRrSr
s rrUz2EpiphanyCommandTest.test_open_with_autoraise_false�s)���
�
�6�d�U�3�&��-�!�U�	�	$rc�8�|jddgtg��y)NrY�-wrArBr
s rrZz!EpiphanyCommandTest.test_open_new�s���
�
�:� �6�!�U�	�	$rc�8�|jddgtg��y)Nr^r{rArBr
s rr_z%EpiphanyCommandTest.test_open_new_tab�s���
�
�>� �6�!�U�	�	$rN)
rrrrE�Epiphanyr$rCrUrZr_rrrrvrv�s!���'�'�M�$�
$�
$�
$rrvc�<�eZdZejZd�Zd�Zd�Zd�Z	y)�OperaCommandTestc�6�|jdgtg��yr@rBr
s rrCzOperaCommandTest.test_open�rDrc�L�|jdtd��gtg��yrOrSr
s rrUz/OperaCommandTest.test_open_with_autoraise_false�rVrc�8�|jddgtg��yrXrBr
s rrZzOperaCommandTest.test_open_new�r[rc�6�|jdgtg��yr]rBr
s rr_z"OperaCommandTest.test_open_new_tab�r`rN)
rrrrE�Operar$rCrUrZr_rrrrr�s!���$�$�M�$�
$�
$�
$rrc�<�eZdZejZd�Zd�Zd�Zd�Z	y)�ELinksCommandTestc�V�|jddgdjt�g��y�Nr9�-remotezopenURL({})rA�r3�formatr:r
s rrCzELinksCommandTest.test_open�s+���
�
�6�I�;�&3�&:�&:�3�&?�%@�	�	Brc�V�|jddgdjt�g��yr�r�r
s rrUz0ELinksCommandTest.test_open_with_autoraise_false�s+���
�
�6�%�;�+�2�2�3�7�8�	�	:rc�V�|jddgdjt�g��y)NrYr�zopenURL({},new-window)rAr�r
s rrZzELinksCommandTest.test_open_new�s,���
�
�:�%�;�6�=�=�c�B�C�	�	Erc�V�|jddgdjt�g��y)Nr^r�zopenURL({},new-tab)rAr�r
s rr_z#ELinksCommandTest.test_open_new_tab�s,���
�
�>�%�;�3�:�:�3�?�@�	�	BrN)
rrrrE�Elinksr$rCrUrZr_rrrr�r��s$���%�%�M�B�:�
E�
Brr�c��eZdZd�Zd�Zd�Zy)�
MockPopenPipec�`�||_||_tj�|_d|_y)NF)�cmd�mode�io�StringIO�pipe�_closed�rr�r�s   r�__init__zMockPopenPipe.__init__�s$�������	��K�K�M��	���rc�:�|jj|�yr)r��write)r�bufs  rr�zMockPopenPipe.write�s���	�	����rc��d|_y)NT)r�r
s r�closezMockPopenPipe.close�s�����rN)rrrr�r�r�rrrr�r��s����rr��darwinzmacOS specific testc�6�eZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z	y)	�MacOSXOSAScriptTestc���|jtj��}|jd�t	j
|td|j�tjd�|_
y)N�BROWSERr/�default)�enterContextr�EnvironmentVarGuard�unsetrr"�os�
mock_popenrE�MacOSXOSAScriptr0)r�envs  r�setUpzMacOSXOSAScriptTest.setUpsQ�����	� =� =� ?�@���	�	�)���
�
�d�B�����9�!�1�1�)�<��rc�<�t||�|_|jSr)r��
popen_piper�s   rr�zMacOSXOSAScriptTest.mock_popen
s��'��T�2������rc�d�tj�}|j|jd�y)Nr�)rE�getr(r!r;s  r�test_defaultz MacOSXOSAScriptTest.test_defaults"���.�.�"��������y�1rc�d�d}|jj|�|j|jj�|j|jjd�|jjj�}|j|j�d|�d��y)N�https://python.orgz/usr/bin/osascriptzopen location "�")
r0r9�
assertTruer�r�r(r�r��getvalue�strip)r�url�scripts   r�test_default_openz%MacOSXOSAScriptTest.test_default_opens���"�������#��������/�/�0�������,�,�.B�C����%�%�.�.�0���������?�3�%�q�)A�Brc���|jjd�|jjj	�}|j|j
�d�y)Nzhttps://python.org/"quote"z.open location "https://python.org/%22quote%22")r0r9r�r�r�r(r�)rr�s  r�test_url_quotez"MacOSXOSAScriptTest.test_url_quotesG�������6�7����%�%�.�.�0������L�L�N�L�	
rc���tjd�}|jd�|jjj�}|j
d|�|j
d|�y)N�safarir�ztell application "safari"z"open location "https://python.org")rEr�r9r�r�r�r*)rr0r�s   r�test_explicit_browserz)MacOSXOSAScriptTest.test_explicit_browser"sU���,�,�X�6�����)�*����%�%�.�.�0���
�
�1�6�:��
�
�:�F�Crc��|jtd�5|jjdt���ddd�y#1swYyxYw)Nr5r6)r7r8r0r9r:r
s rr<z-MacOSXOSAScriptTest.test_reject_dash_prefixes)sA��
�
#�
#��L�
�
�L�L���
�3�%�0�1�	
�
�
�s�#A�AN)
rrrr�r�r�r�r�r�r<rrrr�r��s'��=��2�
C�
�D�2rr�c�0�eZdZd�Zd�Zd�Zd�Zd�Zd�Zy)�BrowserRegistrationTestc��tj|_gt_tj|_it_yr)rE�	_tryorder�_saved_tryorder�	_browsers�_saved_browsersr
s rr�zBrowserRegistrationTest.setUp3s.��)�3�3���!�
��)�3�3���!�
�rc�X�|jt_|jt_yr)r�rEr�r�r�r
s r�tearDownz BrowserRegistrationTest.tearDown:s��#�3�3�
��#�3�3�
�rc�x�Gd�d�}g}i}|jtj|�|jtj|�tjd|�dg}|dg|d<|jtj|�|jtj|�|�}|�tjd|||��ntjd||�|rddg}nddg}||g|d<|jtj|�|jtj|�y)Nc��eZdZy)�CBrowserRegistrationTest._check_registration.<locals>.ExampleBrowserN�rrrrrr�ExampleBrowserr�?���rr��Example1�example1�example2��	preferred)r(rEr�r��register)rr�r��expected_tryorder�expected_browsers�instances      r�_check_registrationz+BrowserRegistrationTest._check_registration>s.��	�	���������-�-�/@�A�����-�-�/@�A����J��7�'�L��)7��(>��*�%�����-�-�/@�A�����-�-�/@�A�!�#��� ����
�N�H�*3�
5�
���
�N�H�E��!+�Z� 8��!+�Z� 8��)7��(B��*�%�����-�-�/@�A�����-�-�/@�Arc�(�|jd��y)NFr��r�r
s r�
test_registerz%BrowserRegistrationTest.test_register\s��� � �5� �1rc�(�|jd��y)Nr�r�r
s r�test_register_defaultz-BrowserRegistrationTest.test_register_default_���� � �4� �0rc�(�|jd��y)NTr�r�r
s r�test_register_preferredz/BrowserRegistrationTest.test_register_preferredbr�rN)	rrrr�r�r�r�r�r�rrrr�r�1s!��"�4�B�<2�1�1rr�c�*�eZdZd�Zd�Zd�Zd�Zd�Zy)�
ImportTestc��tjd�}|j|j�|j	|j
�Gd�d�}|jd|�|j|j�|j|jdd�|j|j
�|jd|j
�|j|j
d|dg�y)NrEc��eZdZy)�0ImportTest.test_register.<locals>.ExampleBrowserNr�rrrr�r�lr�rr�r����r�)
r�import_fresh_module�assertIsNoner��assertFalser�r�r�r(r*)rrEr�s   rr�zImportTest.test_registergs���"�6�6�|�D�
����*�.�.�/�����-�-�.�	�	��
���J��7����
�,�,�-�����-�-�b�1�:�>����
�,�,�-��
�
�j�*�"6�"6�7�����-�-�j�9�N�D�;Q�Rrc�T�tjd�}|j|j�|j	|j
�|j
|j�5|jd�ddd�|j|j�y#1swY�%xYw)NrE�fakebrowser)
rr�r�r�r�r�rd�Errorr��assertIsNotNone)rrEs  r�test_getzImportTest.test_getus~��"�6�6�|�D�
����*�.�.�/�����-�-�.�
�
�
�z�/�/�
0��J�N�N�=�)�1����Z�1�1�2�1�
0�s�'B�B'c�,�tjd�}tjj	t
j�j�}|j|d|j|��|jt
j�y)NrE)rr�r��path�basename�sys�
executable�lowerr�rFr�)rrEr!s   r�test_synthesizezImportTest.test_synthesize~sg��"�6�6�|�D�
��w�w������/�5�5�7���
���D�$�(A�
�(A�(A�$�(G�H��
���s�~�~�&rc�z�tjd�}	|j�j}tj�5}|d<tjd�}|j�ddd�y#|j$r$}|jt
|��Yd}~�wd}~wwxYw#1swYyxYw)NrEr�)	rr�r�r!r��skipTest�strrr�)rrEr0�errr�s     r�test_environmentzImportTest.test_environment�s���"�6�6�|�D�
�	$�$�j�n�n�&�+�+�G��
*�
*�
,��$�C�	�N�&�:�:�<�H�J��J�N�N��-�
,�����	$��M�M�#�c�(�#�#��	$��
,�
,�s#�A;�,B1�;B.�
B)�)B.�1B:c��tjd�}	|j�|j|jd�j}tj�5}|d<tjd�}|j|j�j|�ddd�tj�5}tj|d<tjd�}|j|j�jtj�ddd�y#|j
tf$r%}|jt|��Yd}~��d}~wwxYw#1swY��xYw#1swYyxYw)NrEr�r�)rr�r�r�r!r��
IndexErrorr�r�rr�r(r�r�)rrE�least_preferred_browserr�r�s     r�test_environment_preferredz%ImportTest.test_environment_preferred�s-��"�6�6�|�D�
�	$��J�N�N��&4�j�n�n�Z�5I�5I�"�5M�&N�&S�&S�#��
*�
*�
,��4�C�	�N�&�:�:�<�H�J����^�Z�^�^�-�2�2�4K�L�-�
�
*�
*�
,�� �^�^�C�	�N�&�:�:�<�H�J����^�Z�^�^�-�2�2�C�N�N�C�-�
,��� � �*�-�	$��M�M�#�c�(�#�#��	$��-�
,��
-�
,�s1�:D2�%AE/�A"E;�2E,�E'�'E,�/E8�;FN)rrrr�r�r�r�rrrrr�r�fs��S�3�'�	�Drr��__main__)$r�r�rE�unittestr�r#rrr�test.supportrr�has_subprocess_support�SkipTestr:r%�	MagicMockr	r�TestCaser>rHrLrhrorvrr�r��
skipUnless�platformr�r�r�r�mainrrr�<module>rs���	�	���
����&�"��%�%�
�(�
�
�@�
A�A����������-�-�D$� 0�(�2C�2C�$�$�#3�X�5F�5F�$�+�(�(�*;�*;�+�D$�&��(9�(9�$�20�)�8�+<�+<�0�2$�*�H�,=�,=�$�2$�'��):�):�$�2B�(�(�*;�*;�B�0������S�\�\�X�-�/D�E�.2�(�+�+�.2�F�.2�b21�h�/�/�21�j9D��"�"�9D�x�Z���H�M�M�O�r