
    Oh}                         d dl Z d dlmZmZmZ 	 d dlmZmZ ddl
mZmZmZ  G d de      Zedk(  r e        yy# e$ r d dl	mZmZ Y 2w xY w)	    N)TestCasemain
skipUnless)Mockpatch   )WinColorWinStyleWinTermc                      e Zd Z ed      d        Z eej                  j                  d      d      d        Z	 ed      d        Z
 eej                  j                  d      d      d        Z eej                  j                  d      d      d        Z eej                  j                  d      d      d	        Z ed      d
        Z ed      d        Zy)WinTermTestzcolorama.winterm.win32c                    t               }d|_        ||j                  _        t	               }| j                  |j                  d       | j                  |j                  d       | j                  |j                  d       y )No            )	r   wAttributesGetConsoleScreenBufferInforeturn_valuer   assertEqual_fore_back_styleself	mockWin32mockAttrterms       y/mnt/c/Users/Administrator/Desktop/help_/test_env/lib/python3.12/site-packages/pip/_vendor/colorama/tests/winterm_test.pytestInitzWinTermTest.testInit   sb    6-<D	,,9yQ'Q'a(    winzrequires Windowsc                    t               }d|_        d|_        d|_        | j	                  |j                         d       t        j                  |_        | j	                  |j                         t        j                         t        j                  |_        | j	                  |j                         t        j                  t        j                  dz  z          t        j                  |_        | j	                  |j                         t        j                  t        j                  dz  z   t        j                  z          y )Nr      )r   r   r   r   r   	get_attrsr	   YELLOWMAGENTAr
   BRIGHTr   r   s     r   testGetAttrszWinTermTest.testGetAttrs   s    y

)1-__
)8??;%%
NNOOh..33	5 ooNNOOh..33hooE	Gr!   c                    t               }d|_        ||j                  _        t	               }t               |_        d|_        d|_        d|_        |j                          | j                  |j                  d       | j                  |j                  d       | j                  |j                  d       | j                  |j
                  j                  d       y )N)      r   r   T)r   r   r   r   r   set_consoler   r   r   	reset_allr   calledr   s       r   testResetAllzWinTermTest.testResetAll/   s    6-<D	,,9y6

Q'Q'a())00$7r!   c                     t               }t               |_        d|_        |j	                  d       | j                  |j                  d       | j                  |j                  j                  d       y Nr      T)r   r   r/   r   forer   r1   r)   s     r   testForezWinTermTest.testForeB   U    y6
		!Q'))00$7r!   c                     t               }t               |_        d|_        |j	                  d       | j                  |j                  d       | j                  |j                  j                  d       y r4   )r   r   r/   r   backr   r1   r)   s     r   testBackzWinTermTest.testBackM   r8   r!   c                     t               }t               |_        d|_        |j	                  d       | j                  |j                  d       | j                  |j                  j                  d       y )Nr      T)r   r   r/   r   styler   r1   r)   s     r   	testStylezWinTermTest.testStyleX   sU    y6

2b)))00$7r!   c                    t               }d|_        ||j                  _        t	               }t               |_        |j                          | j                  |j                  j                  |j                  |j                         fi f       y )Nr   )r   r   r   r   r   windllr/   r   SetConsoleTextAttribute	call_argsSTDOUTr%   r   s       r   testSetConsolezWinTermTest.testSetConsolec   sr    6 <D	,,9yf--77 0126	
r!   c                 "   t               }d|_        ||j                  _        t	               }t               |_        |j                  d       | j                  |j                  j                  |j                  |j                         fi f       y )Nr   T)	on_stderr)r   r   r   r   r   rA   r/   r   rB   rC   STDERRr%   r   s       r   testSetConsoleOnStderrz"WinTermTest.testSetConsoleOnStderrr   sw    6 <D	,,9yf4(--77 0126	
r!   N)__name__
__module____qualname__r   r    r   sysplatform
startswithr*   r2   r7   r;   r?   rE   rI    r!   r   r   r      s   
#$) %) ''.0BCG DG* #$8 %8$ ''.0BC8 D8 ''.0BC8 D8 ''.0BC8 D8 #$
 %
 #$
 %
r!   r   __main__)rM   unittestr   r   r   unittest.mockr   r   ImportErrormockwintermr	   r
   r   r   rJ   rP   r!   r   <module>rW      sY    
 / /!) 2 1r
( r
j zF w  !  !s   ; A
A