
    eY                    X    d dl mZ d dlmZ d dlmZmZmZ d dlmZ 	 	 	 	 	 	 	 	 	 	 ddZ	y)    )annotations)glob)basenamejoinsplitext)SYS_VERS_STRc                   g }t        t        | |dz   |z               D ]X  }t        |      }t        |      d   }|j	                  dd      d   }|j                         r,|j                         rt        t              t        |      k  rn|j                  d      rE|dd j                         r2|dd j                         rt        t              t        |dd       k\  rt        t        ||dz               }	|	rYt        |	d	
      D ]H  }
|
j	                  dd      d   dd }|j                         s,t        t              t        |      k\  sH n nt        ||dz         }
|j                  |
f       [ |S )a  Get python input examples and output messages.

    We use following conventions for input files and messages:
    for different inputs:
        test for python  >= x.y    ->  input   =  <name>_pyxy.py
        test for python  <  x.y    ->  input   =  <name>_py_xy.py
    for one input and different messages:
        message for python >=  x.y ->  message =  <name>_pyxy.txt
        lower versions             ->  message with highest num
    *r   _py   _Nz*.txtT)reversez.txt)r   r   r   r   rsplitisdigitintr   
startswithsortedappend)	input_dirmsg_dirprefixsuffixresultfnameinfilefbasepyrestrmessagesoutfilepy_rests               @/usr/lib/python3/dist-packages/pylint/testutils/get_test_info.py_get_tests_infor$      s]    Fd9fslV&;<= )% #,,ua(,?? S%6W%Ec"wqr{':':'<qr{""$\):c'!"+>N)NWego67!(D9 !..226s;??$\):c'l)J 7EFN3Gvw'(-). M    N)
r   strr   r&   r   r&   r   r&   returnzlist[tuple[str, str]])

__future__r   r   os.pathr   r   r   pylint.testutils.constantsr   r$    r%   r#   <module>r,      sC   
 #  , , 3%% %*-%7:%%r%   