Ë
    #´˜já  ã                   óÂ   — d Z ddlmZmZ ddlZddlmZ  ed«       ddlmZm	Z	m
Z
  G d„ de«      Z G d	„ d
ej                  «      Zedk(  r ej                  d¬«       yy)zTest percolator, coverage 100%.é    )Ú
PercolatorÚ	DelegatorN)ÚrequiresÚgui)ÚTextÚTkÚENDc                   ó6   — e Zd Zd„ Zd„ Zd„ Zdd„Zdd„Zdd„Zy)	ÚMyFilterc                 ó0   — t        j                  | d «       y ©N)r   Ú__init__©Úselfs    ú3lib/python3.12/idlelib/idle_test/test_percolator.pyr   zMyFilter.__init__   s   € Ü×Ñ˜4 Õ&ó    c                 óD   — || _          | j                  j                  |Ž  y r   )Úinsert_called_withÚdelegateÚinsert©r   Úargss     r   r   zMyFilter.insert   ó   € Ø"&ˆÔØˆ�‰×Ñ˜dÒ#r   c                 óD   — || _          | j                  j                  |Ž  y r   )Údelete_called_withr   Údeleter   s     r   r   zMyFilter.delete   r   r   Nc                 ó\   — |j                  «       }| j                  j                  ||«       y r   )Úupperr   r   ©r   ÚindexÚcharsÚtagss       r   Úuppercase_insertzMyFilter.uppercase_insert   ó!   € Ø—‘“ˆØ�‰×Ñ˜U EÕ*r   c                 ó\   — |j                  «       }| j                  j                  ||«       y r   )Úlowerr   r   r   s       r   Úlowercase_insertzMyFilter.lowercase_insert   r$   r   c                  ó   — y r   © r   s       r   Údont_insertzMyFilter.dont_insert   s   € Ør   r   )	Ú__name__Ú
__module__Ú__qualname__r   r   r   r#   r'   r*   r)   r   r   r   r   
   s    „ ò'ò$ò$ó+ó+ôr   r   c                   óh   — e Zd Zed„ «       Zed„ «       Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d„ Zd	„ Zd
„ Zd„ Zd„ Zy)ÚPercolatorTestc                 óV   — t        «       | _        t        | j                  «      | _        y r   )r   Úrootr   Útext©Úclss    r   Ú
setUpClasszPercolatorTest.setUpClass$   s   € ä“4ˆŒÜ˜Ÿ™“>ˆ�r   c                 ó@   — | ` | j                  j                  «        | `y r   )r2   r1   Údestroyr3   s    r   ÚtearDownClasszPercolatorTest.tearDownClass)   s   € àˆHØ�‰×ÑÔØ‰Hr   c                 ó  — t        | j                  «      | _        t        «       | _        t        «       | _        | j                  j                  | j                  «       | j                  j                  | j
                  «       y r   )r   r2   Ú
percolatorr   Ú
filter_oneÚ
filter_twoÚinsertfilterr   s    r   ÚsetUpzPercolatorTest.setUp/   sP   € Ü$ T§Y¡YÓ/ˆŒÜ"›*ˆŒÜ"›*ˆŒØ�‰×$Ñ$ T§_¡_Ô5Ø�‰×$Ñ$ T§_¡_Õ5r   c                 óx   — | j                   j                  «        | j                  j                  dt        «       y )Nú1.0)r:   Úcloser2   r   r	   r   s    r   ÚtearDownzPercolatorTest.tearDown6   s&   € Ø�‰×ÑÔØ�	‰	×Ñ˜¤Õ$r   c                 ó‚  — | j                  | j                  j                  «       | j                  | j                  j
                  | j                  «       | j                  | j                  j                  | j                  «       | j                  | j                  j                  | j                  j                  «       y r   )ÚassertIsNotNoner;   r   ÚassertEqualr:   Útopr<   Úbottomr   s    r   Útest_insertfilterz PercolatorTest.test_insertfilter:   sz   € Ø×Ñ˜TŸ_™_×5Ñ5Ô6Ø×Ñ˜Ÿ™×,Ñ,¨d¯o©oÔ>Ø×Ñ˜Ÿ™×1Ñ1°4·?±?ÔCØ×Ñ˜Ÿ™×1Ñ1°4·?±?×3IÑ3IÕJr   c                 ó@  — t        «       }| j                  j                  | j                  «       | j	                  | j                  j
                  | j                  «       | j                  | j                  j                  «       t        «       }| j                  j                  | j                  «       | j                  j                  |«       | j                  j                  | j                  «       | j	                  | j                  j
                  |«       | j	                  |j                  | j                  «       | j	                  | j                  j                  | j                  j                  «       | j                  | j                  j                  «       y r   )r   r:   Úremovefilterr<   rE   rF   r;   ÚassertIsNoner   r=   rG   ©r   Úfilter_threes     r   Útest_removefilterz PercolatorTest.test_removefilter@   s
  € Ü“zˆØ�‰×$Ñ$ T§_¡_Ô5Ø×Ñ˜Ÿ™×,Ñ,¨d¯o©oÔ>Ø×Ñ˜$Ÿ/™/×2Ñ2Ô3ä“zˆØ�‰×$Ñ$ T§_¡_Ô5Ø�‰×$Ñ$ \Ô2Ø�‰×$Ñ$ T§_¡_Ô5Ø×Ñ˜Ÿ™×,Ñ,¨lÔ;Ø×Ñ˜×.Ñ.°·±Ô@Ø×Ñ˜Ÿ™×1Ñ1°4·?±?×3IÑ3IÔJØ×Ñ˜$Ÿ/™/×2Ñ2Õ3r   c                 óè   — | j                   j                  dd«       | j                  | j                   j                  dt        «      d«       | j                  | j                  j                  d«       y )Nr   Úfoor@   zfoo
)r   rP   N)r2   r   rE   Úgetr	   ÚassertTupleEqualr;   r   r   s    r   Útest_insertzPercolatorTest.test_insertO   sR   € Ø�	‰	×Ñ˜ 5Ô)Ø×Ñ˜Ÿ™Ÿ™ u¬cÓ2°GÔ<Ø×Ñ˜dŸo™o×@Ñ@Ø5õ	7r   c                 óæ   — | j                   j                  | j                   _        | j                  j                  dd«       | j	                  | j                  j                  dt        «      d«       y )Nr   ÚbArr@   zBAR
)r;   r#   r   r2   rE   rQ   r	   r   s    r   Útest_modify_insertz!PercolatorTest.test_modify_insertU   sK   € Ø!%§¡×!AÑ!Aˆ�‰ÔØ�	‰	×Ñ˜ 5Ô)Ø×Ñ˜Ÿ™Ÿ™ u¬cÓ2°GÕ<r   c                 óz  — t        «       }| j                  j                  |«       | j                  j                  | j                  _        | j                  j                  | j                  _        | j                  j                  dd«       | j                  | j                  j                  dt        «      d«       y )Nr   ÚBaRr@   zbar
)r   r:   r=   r<   r#   r   r;   r'   r2   rE   rQ   r	   rL   s     r   Útest_modify_chain_insertz'PercolatorTest.test_modify_chain_insertZ   sz   € Ü“zˆØ�‰×$Ñ$ \Ô2Ø!%§¡×!AÑ!Aˆ�‰ÔØ!%§¡×!AÑ!Aˆ�‰ÔØ�	‰	×Ñ˜ 5Ô)Ø×Ñ˜Ÿ™Ÿ™ u¬cÓ2°GÕ<r   c                 óÈ  — | j                   j                  | j                   _        | j                  j                  dd«       | j	                  | j                  j                  dt        «      d«       | j                   j                  | j                   _        | j                  j                  dd«       | j	                  | j                  j                  dt        «      d«       y )Nr   zfoo barr@   Ú
)r;   r*   r   r2   rE   rQ   r	   r   s    r   Útest_dont_insertzPercolatorTest.test_dont_insertb   s”   € Ø!%§¡×!<Ñ!<ˆ�‰ÔØ�	‰	×Ñ˜ 9Ô-Ø×Ñ˜Ÿ™Ÿ™ u¬cÓ2°DÔ9Ø!%§¡×!<Ñ!<ˆ�‰ÔØ�	‰	×Ñ˜ 9Ô-Ø×Ñ˜Ÿ™Ÿ™ u¬cÓ2°DÕ9r   c                 ó”   — | j                   j                  dd«       | j                  | j                   j                  dd«      d«       y )Nr   Úhellor@   Úendzhello
)r2   r   rE   rQ   r   s    r   Útest_without_filterz"PercolatorTest.test_without_filterj   s5   € Ø�	‰	×Ñ˜ 7Ô+Ø×Ñ˜Ÿ™Ÿ™ u¨eÓ4°iÕ@r   c                 ó   — | j                   j                  dd«       | j                   j                  dd«       | j                  | j                   j	                  dt
        «      d«       | j                  | j                  j                  d«       y )Nr   rP   r@   ú1.2zo
)r@   rb   )	r2   r   r   rE   rQ   r	   rR   r;   r   r   s    r   Útest_deletezPercolatorTest.test_deleten   sf   € Ø�	‰	×Ñ˜ 5Ô)Ø�	‰	×Ñ˜ Ô&Ø×Ñ˜Ÿ™Ÿ™ u¬cÓ2°EÔ:Ø×Ñ˜dŸo™o×@Ñ@Ø,õ	.r   N)r+   r,   r-   Úclassmethodr5   r8   r>   rB   rH   rN   rS   rV   rY   r\   r`   rc   r)   r   r   r/   r/   "   s\   „ àñ"ó ð"ð ñó ðò
6ò%òKò4ò7ò=ò
=ò:òAó.r   r/   Ú__main__é   )Ú	verbosity)Ú__doc__Úidlelib.percolatorr   r   ÚunittestÚtest.supportr   Útkinterr   r   r	   r   ÚTestCaser/   r+   Úmainr)   r   r   Ú<module>ro      s\   ðÙ !ç 4Û Ý !Ù ˆ„ß !Ñ !ôˆyô ô0Q.�X×&Ñ&ô Q.ðf ˆzÒØ€H‡M�M˜AÖð r   