ROOTPLOIT
Server: Apache
System: Linux info 3.0 #1337 SMP Tue Jan 01 00:00:00 CEST 2000 all GNU/Linux
User: ws67150586 (67150586)
PHP: 8.3.36
Disabled: NONE
Upload Files
File: //kunden/kunden/kunden/lib/python3/dist-packages/merge3/__pycache__/test_merge3.cpython-313.pyc
�

ÿL`�G���SSKrSSKrSSKr\RSS:Xa'SSKr\R
"S5RrSSKJ	r	 O\
rSSK	J	r	 Sr\"S5r\"S5r
\"S5r\"S	5r"S
S\R 5rg)�N�z>B)�StringIOc�4�[U5R5$)N)r�	readlines)�ts �4/usr/lib/python3/dist-packages/merge3/test_merge3.py�split_linesr	s���A�;� � �"�"�a�     The Nameless is the origin of Heaven and Earth;
     The named is the mother of all things.

     Therefore let there always be non-being,
       so we may see their subtlety,
     And let there always be being,
       so we may see their outcome.
     The two are the same,
     But after they are produced,
       they have different names.
     They both may be called deep and profound.
     Deeper and more profound,
     The door of all subtleties!
a�     The Way that can be told of is not the eternal Way;
     The name that can be named is not the eternal name.
     The Nameless is the origin of Heaven and Earth;
     The Named is the mother of all things.
     Therefore let there always be non-being,
       so we may see their subtlety,
     And let there always be being,
       so we may see their outcome.
     The two are the same,
     But after they are produced,
       they have different names.
a     The Way that can be told of is not the eternal Way;
     The name that can be named is not the eternal name.
     The Nameless is the origin of Heaven and Earth;
     The named is the mother of all things.

     Therefore let there always be non-being,
       so we may see their subtlety,
     And let there always be being,
       so we may see their result.
     The two are the same,
     But after they are produced,
       they have different names.

       -- The Way of Lao-Tzu, tr. Wing-tsit Chan

a     The Way that can be told of is not the eternal Way;
     The name that can be named is not the eternal name.
     The Nameless is the origin of Heaven and Earth;
     The Named is the mother of all things.
     Therefore let there always be non-being,
       so we may see their subtlety,
     And let there always be being,
       so we may see their result.
     The two are the same,
     But after they are produced,
       they have different names.
<<<<<<< LAO
=======

       -- The Way of Lao-Tzu, tr. Wing-tsit Chan

>>>>>>> TAO
c��\rSrSrSrSrSrSrSrSr	Sr
S	rS
rSr
SrS
rSrSrSrSrSrSrSrSrSrSrSrSrSrSrg)�
TestMerge3�gc��[R"SS/SS/SS/5nURUR5S/5 UR[	UR55SS/5 UR[	UR
55S/5 UR[	UR55SSS/4/5 g)	z$No conflicts because nothing changed�aaa�bbb)r�)rrrrrr)rrrrrr)�	unchangedrrrN)�merge3�Merge3�assertEqual�find_unconflicted�list�find_sync_regions�
merge_regions�merge_groups��self�m3s  r�test_no_changes�TestMerge3.test_no_changesis���
�]�]�E�5�>�!�5�>�!�5�>�+��	
����-�-�/�&��:�����R�)�)�+�,�#�%7�8�	:�	
����b�.�.�0�1�-�.�	0�	
����b�o�o�/�0�&����7�8�	:r
c�L�[R"S//SQS/5nUR[UR	55SS/5 UR[UR55SS/5 UR[UR
55SSS	/4S
S/4/5 g)N�zz)�aaa�bbbr!)r�rrrr$)r$r$rrr$r$��arr�rrr$r&r"r#r)rrrrrrrrs  r�test_front_insert�TestMerge3.test_front_insert{s���
�]�]�E�7�2�!�7�$��	
����b�2�2�4�5�,�,�0�	1�	
����b�.�.�0�1�%�-�/�	0�	
����b�o�o�/�0���� 0�1�&���0�2�	3r
c�6�[R"/SS//5nUR[UR	55S/5 UR[UR55S/5 UR[UR
55SS/5 g)Nrr)rrrrrrr%)rrrrrr�merge_linesrs  r�test_null_insert�TestMerge3.test_null_insert�s���
�]�]�2�!�5�>����
	
����b�2�2�4�5�,�-�	/�	
����b�.�.�0�1�%��	(�	
����b�n�n�.�/����	)r
c�0�[R"SS//SQSS/5nURUR5SS/5 UR[	UR55/SQ5 UR[	UR
55/SQ5 g)	z*No conflicts because only one side changedrr�r�111r�rr$�r$r)�rr$rr$rr$)r$rrrr$r)rrrrrr)r')r&r$r�rr$rN)rrrrrrrrs  r�test_no_conflicts�TestMerge3.test_no_conflicts�s���
�]�]�E�5�>�0�!�5�>�+��	
����-�-�/� �&�)�	+�	
����b�2�2�4�5�0�	1�
	
����b�.�.�0�1�1�	2r
c��[R"SS//SQSS/5nURSRUR	55S5 g�N�aaa
�bbb
�r9r:�222
�zaaa
bbb
222
�rrr�joinr+rs  r�
test_append_a�TestMerge3.test_append_a�sG��
�]�]�G�W�-�6�#�W�-�/��	
���������!1�2�*�	,r
c��[R"SS/SS//SQ5nURSRUR	55S5 gr8r>rs  r�
test_append_b�TestMerge3.test_append_b�sG��
�]�]�G�W�-�#�W�-�6�8��	
���������!1�2�*�	,r
c��[R"SS//SQ/SQ5nURSRUR	55S5 gr8r>rs  r�test_append_agreement� TestMerge3.test_append_agreement�sB��
�]�]�G�W�-�6�6�8��	
���������!1�2�*�	,r
c��[R"SS//SQ/SQ5nURSSSSS	S
9nURSR	U5S5 g)
Nr9r:r;)r9r:z333
r&�b�<<�--�>>��name_a�name_b�start_marker�
mid_marker�
end_markerr=zaaa
bbb
<< a
222
--
333
>> b
�rrr+rr?�rr�mls   r�test_append_clash�TestMerge3.test_append_clash�s_��
�]�]�G�W�-�6�6�8���^�^�3�#&�)-�'+�'+�	�-��
	
��������'�	r
c��[R"SS//SQ/SQ5nURSSSSSS	9nURS
R	U5S5 g)Nr9r:�r9r<r:r&rIrJrKrLrMr=zaaa
222
bbb
rSrTs   r�test_insert_agreement� TestMerge3.test_insert_agreement�s[��
�]�]�G�W�-�6�6�8���^�^�3�#&�)-�'+�'+�	�-��
	
��������&7�8r
c��[R"SS//SQ/SQ5nURUR5SS/5 UR[	UR55/SQ5 UR[	UR
55/SQ5 UR[	UR55S	S/4S
/S/S/4S	S/4/5 URS
SSSSS9nURSRU5S5 g)�+Both try to insert lines in the same place.r9r:)r9�111
r:rYr1r2)r3)r$rrrrr)rrrrrr)r')�conflictr$r$r$rr$rr4rr_r^r<r&rIrJrKrLrMr=zaaa
<< a
111
--
222
>> b
bbb
N)
rrrrrrrrr+r?rTs   r�test_insert_clash�TestMerge3.test_insert_clash�s��
�]�]�G�W�-�6�6�8��	
����-�-�/� �&�)�	+�	
����b�2�2�4�5�0�	1�
	
����b�.�.�0�1�/�	0�
	
����b�o�o�/�0�&��	�2�%�r�G�9�w�i�@�&��	�2��	��^�^�3�#&�)-�'+�'+�	�-��
	
��������'�	r
c���[R"/SQ/SQ/SQ5nURUR5SS/5 UR[	UR55/SQ5 g)r])r�000rr/)r�222rr1)rr)r3)rrrrrr)rrrrrrN�rrrrrrrs  r�test_replace_clash�TestMerge3.test_replace_clashsa��
�]�]�0�0�0�2��	
����-�-�/� �&�)�	+�	
����b�2�2�4�5�0�	1r
c���[R"/SQ/SQ/SQ5nURUR5SS/5 UR[	UR55/SQ5 g)z+Replacement with regions of different size.)r"�000rir#)r"�111rjrjr#)r"�222rkrkrkr#r1)r�)r3)rrlrl�rm�)rlrlrmrmrnrnNrers  r�test_replace_multi�TestMerge3.test_replace_multisb��
�]�]�;�C�K�M��	
����-�-�/� �&�)�	+�	
����b�2�2�4�5�0�	1r
c��[R"[[[5n[UR
SS55nURU[5 g�zTest case from diff3 manual�LAO�TAON)	rr�TZUrsrtrr+r�
MERGED_RESULTrTs   r�test_merge_poem�TestMerge3.test_merge_poem,s9��
�]�]�3��S�
)��
�"�.�.���.�
/������]�+r
c	���[R"[Vs/sHoR5PM sn[Vs/sHoR5PM sn[
Vs/sHoR5PM sn5n[
URSS55nURU[Vs/sHoR5PM sn5 gs snfs snfs snfs snfrr)
rrru�encodersrtrr+rrv)r�linerrUs    r�test_merge_poem_bytes� TestMerge3.test_merge_poem_bytes2s���
�]�]�'*�+�s�t�[�[�]�s�+�'*�+�s�t�[�[�]�s�+�'*�+�s�t�[�[�]�s�+�-���"�.�.���.�
/������=�9�=�4����=�9�	;��	
,��+��+��:s�C�C
�C�.C
c��SRS5nSRS5nSRS5n[R"XU5nURSSSS9nSR	[U55nS	nUR
Xv5 g
)�Reprocessing�(a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
T�(a
a
a
a
a
a
a
a
a
a
b
b
b
b
b
b
b
b
b
b
�(a
a
a
a
a
a
a
a
a
a
c
b
b
b
b
b
b
b
b
c
�OTHER�THIS��	reprocessr=zra
a
a
a
a
a
a
a
a
a
<<<<<<< OTHER
c
=======
>>>>>>> THIS
b
b
b
b
b
b
b
b
<<<<<<< OTHER
c
=======
b
b
>>>>>>> THIS
N)�
splitlinesrrr+r?rr)r�	base_text�	this_text�
other_textr�m_lines�merged_text�optimal_texts        r�test_minimal_conflicts_common�(TestMerge3.test_minimal_conflicts_common<s����+�+�D�1�	�*�6�6�t�<�	�:�F�F�t�L�
�
�]�]�9�)�
<���.�.��&�D�.�A���g�g�d�7�m�,��
�	�
	
����3r
c�.�SnSnSn[R"URS5URS5URS55nURUR	5/5 UR[UR
55S/5 g)Nzba
b
zba
�a
b
c
T)rrrrr$r$)rrr�rrrr)rr�r�r�rs     r�test_cherrypick�TestMerge3.test_cherrypickKs����	��	� �
�
�]�]�� � ��&��!�!�$�'�� � ��&�(��
	
����-�-�/��4�����b�2�2�4�5�8J�7K�Lr
c�r�SSKnSRS5nSRS5nSRS5n[R
"X$UWRS9nURS	S
SS9nSR[U55nS
nURX�5 g![a URS5 N�f=f)rrNzpatiencediff not availabler�Tr�r�)�sequence_matcherr�r�r�r=z_a
a
a
a
a
a
a
a
a
a
<<<<<<< OTHER
c
b
b
b
b
b
b
b
b
c
=======
b
b
b
b
b
b
b
b
b
b
>>>>>>> THIS
)�patiencediff�ImportError�skipTestr�rr�PatienceSequenceMatcherr+r?rr)	rr�r�r�r�rr�r�r�s	         r�/test_minimal_conflicts_common_with_patiencediff�:TestMerge3.test_minimal_conflicts_common_with_patiencediffYs���	8�� �+�+�D�1�	�*�6�6�t�<�	�:�F�F�t�L�
�
�]�]��9�)�A�A�C���.�.���4�!�1���g�g�d�7�m�,��
,�	�	
����3���	8��M�M�6�7�	8�s�B�B6�5B6c�0�SnU"S5nU"S5nU"S5n[R"X$U5nURSSSS9nS	R[	U55nS	RU"S5S
/-U"S5-S/-5nURX�5 g)
Nc�6�UVs/sHoS-PM	 sn$s snf�z)Add a newline to each entry in the string�
���s�xs  r�add_newline�=TestMerge3.test_minimal_conflicts_unique.<locals>.add_newlineo���&'�(�a��t�V�a�(�(��(���
abcdefghijklm�abcdefghijklmNOPQRSTUVWXYZ�abcdefghijklm1OPQRSTUVWXY2r�r�Tr�r=z'<<<<<<< OTHER
1
=======
N
>>>>>>> THIS
�OPQRSTUVWXYz'<<<<<<< OTHER
2
=======
Z
>>>>>>> THIS
�rrr+r?rr�	rr�r�r�r�rr�r�r�s	         r�test_minimal_conflicts_unique�(TestMerge3.test_minimal_conflicts_uniquens���	)� ��0�	�� <�=�	� �!=�>�
�
�]�]�9�)�
<���.�.��&�D�.�A���g�g�d�7�m�,���w�w���(�=�>�
?��-�(�
)�>�>�
?���	
����3r
c�0�SnU"S5nU"S5nU"S5n[R"X$U5nURSSSS9nS	R[	U55nS	RU"S
5S/-U"S5-S
/-5nURX�5 g)Nc�6�UVs/sHoS-PM	 sn$s snfr�r�r�s  rr��@TestMerge3.test_minimal_conflicts_nonunique.<locals>.add_newline�r�r��
abacddefgghij�abacddefgghijkalmontfprz�abacddefgghijknlmontfprdr�r�Tr�r=�abacddefgghijkz'<<<<<<< OTHER
n
=======
a
>>>>>>> THIS
�lmontfprz'<<<<<<< OTHER
d
=======
z
>>>>>>> THIS
r�r�s	         r� test_minimal_conflicts_nonunique�+TestMerge3.test_minimal_conflicts_nonunique�s���	)� ��0�	�� :�;�	� �!;�<�
�
�]�]�9�)�
<���.�.��&�D�.�A���g�g�d�7�m�,���w�w��(�)�=�>�
?��*�%�
&�>�>�
?���	
����3r
c��SRS5nSRS5nSRS5n[R"XU5nURSSSSS9nUR	[R
[U5 g	)
z.Reprocessing and showing base breaks correctlyr�Tr�r�r�r�z|||||||)r��base_markerN)r�rrr+�assertRaises�CantReprocessAndShowBaser�rr�r�r�rr�s      r�test_reprocess_and_base�"TestMerge3.test_reprocess_and_base�sv���+�+�D�1�	�(�4�4�T�:�	�6�B�B�4�H�
�
�]�]�9�)�
<���.�.��&�D�-6�!�8�����&�9�9�4��Ir
c��SnSnSn[R"URS5URS5URS55nURSS5nUR	SRS5[U55 g)Nza
zb
zc
Tr�r�z,<<<<<<< OTHER
c
=======
b
>>>>>>> THIS
�rrr�r+rrr�s      r�
test_dos_text�TestMerge3.test_dos_text�s~���	��	��
�
�]�]�9�/�/��5�%�0�0��6�$�/�/��5�7���.�.��&�1�����
�)�z�$�/��g��	@r
c��SnSnSn[R"URS5URS5URS55nURSS5nUR	SRS5[U55 g)Nza
zb
zc
Tr�r�z'<<<<<<< OTHER
c
=======
b
>>>>>>> THIS
r�r�s      r�
test_mac_text�TestMerge3.test_mac_text�s}���	��	��
�
�]�]�9�/�/��5�%�0�0��6�$�/�/��5�7���.�.��&�1�����
�'�Z��-�t�G�}�	>r
c���SnSnSn[R"URS5URS5URS5SS9nUR5nUR	SSRU55 [R"URS5URS5URS5SS9nUR5nUR	SSRU55 g)	Nza
b
za
r�T��
is_cherrypickza
<<<<<<<
=======
c
>>>>>>>
r=za
<<<<<<<
b
c
=======
>>>>>>>
�rrr�r+rr?r�s      r�test_merge3_cherrypick�!TestMerge3.test_merge3_cherrypick�s����	��	� �
�
�]�]�9�/�/��5�$�/�/��5�%�0�0��6�d�L���.�.�"�����<�����)�	+��]�]�9�/�/��5�%�0�0��6�$�/�/��5�T�K���.�.�"�����?�����)�	+r
c��SnSnSn[R"URS5URS5URS5SS9nUR5nUR	SSRU55 g)Nz
a
b
c
d
e
za
b
q
za
b
c
d
f
e
g
Tr�z:a
b
<<<<<<<
q
=======
f
>>>>>>>
<<<<<<<
=======
g
>>>>>>>
r=r�r�s      r�test_merge3_cherrypick_w_mixed�)TestMerge3.test_merge3_cherrypick_w_mixed�sz��%�	��	�,�
�
�]�]�9�/�/��5�$�/�/��5�%�0�0��6�d�L���.�.�"�����
%�����)�	+r
c��[S5Vs/sHn[U5[U54PM nn[S5Vs/sHn[U5[U54PM nn[S5Vs/sHn[U5[U54PM nn[R"X#U5nUR	/SQ[UR
555 UR	SS/4S[S5Vs/sHn[U5[U54PM sn4SS	/4/[UR555 g
s snfs snfs snfs snf)z�Objects other than strs may be used with Merge3.

merge_groups and merge_regions work with non-str input.  Methods that
return lines like merge_lines fail.
sabcdesabcdefsZabcde))rIrr$)rrrm)r&rmrnrI)�Zr�rr&)�fr�N)�	bytearray�int2byterrrrrr)rr��baser&rIrs      r�test_allow_objects�TestMerge3.test_allow_objects�s3��5>�h�4G�H�4G�q��!��h�q�k�*�4G��H�1:�9�1E�F�1E�A�h�q�k�8�A�;�
'�1E��F�1:�9�1E�F�1E�A�h�q�k�8�A�;�
'�1E��F�
�]�]�4�A�
&�����
�
��!�!�#�$�		&�
	
����L�>�
"��5>�x�5H�J�5H��(�1�+�x��{�+�5H�J�K��L�>�
"�
$�
����"�#�	%��I��F��F��Js� D3� D8�, D=�- Er�N)�__name__�
__module__�__qualname__�__firstlineno__rr(r,r5r@rCrFrVrZr`rfrorwr|r�r�r�r�r�r�r�r�r�r�r��__static_attributes__r�r
rrrgs���:�$3�&
)�2�&,�,�,��(
9�&�P1�1�,�;�
4�M�4�*4�&4�&J�
@�
>�+�(+�,%r
r)r�unittest�sys�version_info�struct�Struct�packr��ior�chrr	rursrtrv�TestCaserr�r
r�<module>r�s���"��
����A��!����}�}�T�"�'�'�H���H�!�#��
�
����������"���
�(M%��"�"�M%r