
    dafu	                         d dl Z d dlZdZej                  Z G d de j
                        Zedk(  r e j                          yy)    N)alphabeta	candidatefinalc                       e Zd Zd Zd Zy)
FutureTestc                 *   t         d d  }t        t              D ]Y  }t        t        |d       }|t	        |t        j
                        s2| j                  ||v d|z         |j                  |       [ | j                  t        |      dd|z         y )Nz(%r should have been in all_feature_namesr   z"all_feature_names has too much: %r)
featuresdir
__future__getattr
isinstance_Feature
assertTrueremoveassertEquallen)selfgiven_feature_namesnameobjs       B/root/Python-3.12.4/Lib/test/test_future_stmt/test_future_flags.py
test_nameszFutureTest.test_names
   s    &qk
O 	1D*dD1C:c:3F3F#G//>E $**40	1 	01136II	K    c           	         t         D ]  }t        t        |      }|j                         }|j	                         }| j
                  | j                  fd} ||d       | ||d        ||k  d        t        |d      d       t        ddd	|j                          t        t        |d      t              d
        y )Nc                     t        | t              d|z          t        |       dd|z         | \  }}}}} t        |t              d|z          t        |t              d|z          t        |t              d|z          t        |t              d|z          |t
        v d|z          t        |t              d	|z         y )
Nz%s isn't tuple   z%s isn't 5-tuplez%s major isn't intz%s minor isn't intz%s micro isn't intz%s level isn't stringz!%s level string has unknown valuez%s serial isn't int)r   tupler   intstrGOOD_SERIALS)	tr   majorminormicrolevelserialaes	          r   checkz)FutureTest.test_attributes.<locals>.check!   s    *Q&(84(?@#a&!/$67784ueV*UC(*>$*FG*UC(*>*EF*UC(*>*EF*UC(+d24%<':TAC*VS)+@4+GHr   optional	mandatoryz8optional not less than mandatory, and mandatory not Nonecompiler_flagz(feature is missing a .compiler_flag attr z<test>execz.compiler_flag isn't int)r
   r   r   getOptionalReleasegetMandatoryReleaser   r   hasattrcompiler-   r   r   )r   featurevaluer+   r,   r*   r(   r)   s         @@r   test_attributeszFutureTest.test_attributes   s      	/GJ0E//1H113IA  AI (J'$i-(Y&QS ge_-=? B&%*=*=>j8#>-/? 	/r   N)__name__
__module____qualname__r   r6    r   r   r   r      s    K!/r   r   __main__)	unittestr   r!   all_feature_namesr
   TestCaser   r7   mainr:   r   r   <module>r@      sH     6''1/"" 1/h zHMMO r   