
    `N`F                         d Z ddlZddlZddlmZ 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d
 Zedk    r ej                     dS dS )z%Tests for yapf.format_decision_state.    N)format_decision_state)pytree_utils)style)unwrapped_line)yapf_test_helperc                   0    e Zd Zed             Zd Zd ZdS )FormatDecisionStateTestc                 P    t          j        t          j                               d S )N)r   SetGlobalStyleCreateYapfStyle)clss    Dlib/python3.11/site-packages/yapftests/format_decision_state_test.py
setUpClassz"FormatDecisionStateTest.setUpClass   s"    	.0011111    c                 t   t          j        d          }t          j        |          }t	          j        dt          |d                             }|                                 t          j	        |d          }|
                                 |                     d|j        j                   |                     |                    d                     |                    dd           |                     d|j        j                   |                     |                    d                     |                     |                                           |                    dd           |                     d|j        j                   |                     |                    d                     |                     |                                           |                    dd           |                     d|j        j                   |                     |                    d                     |                     |                                           |                    dd           |                     d	|j        j                   |                     |                    d                     |                     |                                           |                    dd           |                     d
|j        j                   |                     |                    d                     |                     |                                           |                    dd           |                     d|j        j                   |                     |                    d                     |                     |                                           |                                }|                     t)          |          t)          |                     d S Nz'
      def f(a, b):
        pass
      r   fFT(a,b):)textwrapdedentr   ParseAndUnwrapr   UnwrappedLine_FilterLineCalculateFormattingInformationr   FormatDecisionStateMoveStateToNextTokenassertEqual
next_tokenvalueassertFalseCanSplitAddTokenToState	MustSplit
assertTrueClonereprselfcodeuwlinesuwlinestateclones         r   $testSimpleFunctionDefWithNoSplittingz<FormatDecisionStateTest.testSimpleFunctionDefWithNoSplitting!   s   ? 
  D -d33G)![-D-DEEF
))+++ "5fa@@E	   S%*0111U^^E**+++ 
%&&&S%*0111U^^E**+++U__&&''' 
%&&&S%*0111OOENN5))***U__&&''' 
%&&&S%*0111U^^E**+++U__&&''' 
%&&&S%*0111OOENN5))***U__&&''' 
%&&&S%*0111OOENN5))***U__&&''' 
%&&&S%*0111U^^E**+++U__&&'''KKMMET%[[$u++.....r   c                    t          j        d          }t          j        |          }t	          j        dt          |d                             }|                                 t          j	        |d          }|
                                 |                     d|j        j                   |                     |                    d                     |                    dd           |                     d|j        j                   |                     |                    d                     |                    dd           |                     d|j        j                   |                     |                    d                     |                    dd           |                     d|j        j                   |                     |                    d                     |                    dd           |                     d	|j        j                   |                     |                    d                     |                    dd           |                     d
|j        j                   |                     |                    d                     |                    dd           |                     d|j        j                   |                     |                    d                     |                                }|                     t'          |          t'          |                     d S r   )r   r   r   r   r   r   r   r   r   r    r!   r"   r#   r$   r%   r&   r'   r)   r*   r+   r,   s         r   "testSimpleFunctionDefWithSplittingz:FormatDecisionStateTest.testSimpleFunctionDefWithSplittingW   s   ? 
  D -d33G)![-D-DEEF
))+++ "5fa@@E	   S%*0111U^^E**+++ 
$%%%S%*0111U^^E**+++ 
$%%%S%*0111OOENN5))*** 
$%%%S%*0111U^^E**+++ 
$%%%S%*0111OOENN5))*** 
$%%%S%*0111OOENN5))*** 
$%%%S%*0111U^^E**+++KKMMET%[[$u++.....r   N)__name__
__module____qualname__classmethodr   r3   r5    r   r   r	   r	      sL        2 2 ;24/ 4/ 4/l./ ./ ./ ./ ./r   r	   c                 $    d | j         D             S )z6Filter out nonsemantic tokens from the UnwrappedLines.c                 8    g | ]}|j         t          j        v|S r:   )namer   NONSEMANTIC_TOKENS).0fts     r   
<listcomp>z_FilterLine.<locals>.<listcomp>   s2     
 
 
	7	7	7 		7	7	7r   )tokens)r0   s    r   r   r      s%    
 
=
 
 
 r   __main__)__doc__r   unittestyapf.yapflibr   r   r   r   	yapftestsr   YAPFTestr	   r   r6   mainr:   r   r   <module>rJ      s    , +   . . . . . . % % % % % %       ' ' ' ' ' ' & & & & & &j/ j/ j/ j/ j/.7 j/ j/ j/Z   z(-///// r   