
    ,h                     ^    d dl mZ d dlmZ d dlmZ d dlmZ  G d dej                        Z	y)    )unicode_literalsnext)TokenSource)unittestc                   l    e Zd Zd Zd Zd Zd Zd Zd Zd Z	d Z
d	 Zd
 Zd Zd Zd Zd Zd Zd Zy)TestTokenSourcec                 ,    | j                  dgdg       y )N   abccheckselfs    e/var/www/html/Resume-Scraper/venv/lib/python3.12/site-packages/imapclient/test/test_response_lexer.pytest_one_tokenzTestTokenSource.test_one_token   s    

F88	    c                 .    | j                  dgg d       y )Ns   abc 111 def)r      111   defr   r   s    r   test_simple_tokensz"TestTokenSource.test_simple_tokens   s    

N#+	-r   c                 0    | j                  ddgg d       y )Ns   abc 111s   def 222)r   r   r      222r   r   s    r   test_multiple_inputsz$TestTokenSource.test_multiple_inputs   s    

J
+3	5r   c                 X    | j                  dgddg       | j                  dgddg       y )Ns	   abc   defr   r   s     abc 		

  def  r   r   s    r   test_whitespacezTestTokenSource.test_whitespace   s4    

L>F#	%

01F#	%r   c                 ~    | j                  dgdg       | j                  dgdg       | j                  dgg d       y )N	   "abc def"s   ""s   111 "abc def" 222)r   r   r   r   r   s    r   test_quoted_stringsz#TestTokenSource.test_quoted_strings!   sA    

L> >	#

E77	

()1	3r   c                 T    d}| j                  dg|       | j                  dg|       y )NzNo closing '"'   "s   "aaa bbbcheck_errorr   messages     r   test_unterminated_stringsz)TestTokenSource.test_unterminated_strings)   s+    #$)+0r   c                 |    | j                  dgdg       | j                  dgdg       | j                  dgdg       y )Ns
   "aaa\"bbb"s	   "aaa"bbb"s
   "aaa\\bbb"s	   "aaa\bbb"s   "aaa\\bbb \"\""s   "aaa\bbb """r   r   s    r   test_escapingzTestTokenSource.test_escaping.   sF    

N#!?	$

N#!?	$

'($%	'r   c                 ,    | j                  dgdg       y )Ns
   "aaa\Zbbb"r   r   s    r   test_invalid_escapez#TestTokenSource.test_invalid_escape6       

N#"#	%r   c                     | j                  dgddg       | j                  dgg d       | j                  dgg d       | j                  dgg d	       | j                  d
gg d       y )Ns   ()   (   )s   (aaa))r,      aaar-   s   (aaa "bbb def"   123))r,   r.   s	   "bbb def"s   123r-   s   (aaa)(bbb ccc))r,   r.   r-   r,      bbb   cccr-   s   (aaa (bbb ccc)))r,   r.   r,   r/   r0   r-   r-   r   r   s    r   
test_listszTestTokenSource.test_lists:   sm    

E7$<	!

H:'	)

,-=	?

%&C	E

&'C	Er   c                     | j                  dgdg       | j                  dgdg       | j                  dgdg       | j                  dgddg       y )Ns	   [aaa bbb]s   aaa[bbb]s   [bbb]aaas	   aaa [bbb]r.   s   [bbb]r   r   s    r   test_square_bracketsz$TestTokenSource.test_square_bracketsF   sY    

L> >	#

K==	"

K==	"

L>H%	'r   c                 ,    | j                  dgdg       y )Ns
   [aaa\\bbb]r   r   s    r   #test_no_escaping_in_square_bracketsz3TestTokenSource.test_no_escaping_in_square_bracketsP   r*   r   c                 T    d}| j                  dg|       | j                  dg|       y )NzNo closing ']'   [s   [aaa bbbr!   r#   s     r   test_unmatched_square_bracketsz.TestTokenSource.test_unmatched_square_bracketsT   s+    "$)+0r   c                 B   t        ddg      }t        |      | j                  t              d       | j                  t              d       | j                  |j                  d       | j                  t              d       | j                  t        fd       y )Ns   abc {7}   foo barr-   r      {7}r;   c                      t               S Nr   tokenss   r   <lambda>z.TestTokenSource.test_literal.<locals>.<lambda>`       f r   r   iterassertEqualr   current_literalassertRaisesStopIterationr   sourcer@   s     @r   test_literalzTestTokenSource.test_literalY   s    6=>ffv.fv.//<ft,-)=>r   c                    t        g d      }t        |      | j                  t              d       | j                  t              d       | j                  |j                  d       | j                  t              d       | j                  |j                  d       | j                  t              d       | j                  t        fd       y )	N)r:   )   {5}   snafur-   r   r<   r;   rM   rN   r-   c                      t               S r>   r   r?   s   r   rA   z/TestTokenSource.test_literals.<locals>.<lambda>n   rB   r   rC   rI   s     @r   test_literalszTestTokenSource.test_literalsb   s       ffv.fv.//<fv.//:ft,-)=>r   c                 P    t        |      }| j                  t        |      |       y r>   )r   assertSequenceEquallist)r   text_inexpected_outr@   s       r   r   zTestTokenSource.checkp   s     W%  f|<r   c                 :    | j                  t        |fd       y )Nc                  ,    t        t                     S r>   )rS   r   )rT   s   r   rA   z-TestTokenSource.check_error.<locals>.<lambda>v   s    tK,@'A r   )assertRaisesRegex
ValueError)r   rT   expected_messages    ` r   r"   zTestTokenSource.check_errort   s    z+;A	Cr   N)__name__
__module____qualname__r   r   r   r   r   r%   r'   r)   r1   r3   r5   r8   rK   rP   r   r"    r   r   r	   r	      sT    -5%31
'%
E'%1
??=Cr   r	   N)

__future__r   sixr   imapclient.response_lexerr   imapclient.test.utilr   TestCaser	   r^   r   r   <module>rd      s)   
 (  1 )iCh'' iCr   