
    0hh/                     |   S SK r S SKJr  S SKr " S S5      r " S S5      rS \R                  \R                  4S \R                  \R                  4S	 \R                  \R                  4S
 \R                  \R                  4S \R                  \R                  4S \R                   \R"                  4S.r " S S\ R&                  5      r " S S\ R&                  5      r " S S\ R&                  5      r " S S\ R&                  5      r " S S\ R&                  5      r\S:X  a  \ R4                  " 5         gg)    N)supportc                   J    \ rS rSrS rS rS rS rS rS r	S r
S	 rS
 rSrg)Number   c                     Xl         g Nx)selfr
   s     :/opt/python-3.13.8/usr/lib/python3.13/test/test_richcmp.py__init__Number.__init__
   s        c                      U R                   U:  $ r   r	   r   others     r   __lt__Number.__lt__       vv~r   c                      U R                   U:*  $ r   r	   r   s     r   __le__Number.__le__       vvr   c                      U R                   U:H  $ r   r	   r   s     r   __eq__Number.__eq__   r   r   c                      U R                   U:g  $ r   r	   r   s     r   __ne__Number.__ne__   r   r   c                      U R                   U:  $ r   r	   r   s     r   __gt__Number.__gt__   r   r   c                      U R                   U:  $ r   r	   r   s     r   __ge__Number.__ge__   r   r   c                 .    [         R                  " S5      e)Nz%Number.__cmp__() should not be calledr   
TestFailedr   s     r   __cmp__Number.__cmp__         !HIIr   c                 $    SU R                   < S3$ )NzNumber()r	   r   s    r   __repr__Number.__repr__"   s    #vv((r   r	   N)__name__
__module____qualname____firstlineno__r   r   r   r   r   r!   r$   r)   r/   __static_attributes__ r   r   r   r      s0    J)r   r   c                   l    \ rS rSrS rS rS rS rSrS r	S r
S	 rS
 rS rS rS rS rS rS rSrg)Vector%   c                     Xl         g r   data)r   r<   s     r   r   Vector.__init__'   s    	r   c                 ,    [        U R                  5      $ r   )lenr<   r.   s    r   __len__Vector.__len__*   s    499~r   c                      U R                   U   $ r   r;   )r   is     r   __getitem__Vector.__getitem__-   s    yy|r   c                      X R                   U'   g r   r;   )r   rC   vs      r   __setitem__Vector.__setitem__0   s    		!r   Nc                     [        S5      e)Nz*Vectors cannot be used in Boolean contexts)	TypeErrorr.   s    r   __bool__Vector.__bool__5   s    DEEr   c                 .    [         R                  " S5      e)Nz%Vector.__cmp__() should not be calledr'   r   s     r   r)   Vector.__cmp__8   r+   r   c                 $    SU R                   < S3$ )NzVector(r-   r;   r.   s    r   r/   Vector.__repr__;   s    #yy++r   c                     [        [        U R                  U R                  U5      5       VVs/ s H	  u  p#X#:  PM     snn5      $ s  snnf r   r8   zipr<   _Vector__castr   r   abs       r   r   Vector.__lt__>   9    TYYE8J)KL)Kqu)KLMML   A
c                     [        [        U R                  U R                  U5      5       VVs/ s H	  u  p#X#:*  PM     snn5      $ s  snnf r   rS   rV   s       r   r   Vector.__le__A   9    #diiU9K*LM*L$!qv*LMNNMr[   c                     [        [        U R                  U R                  U5      5       VVs/ s H	  u  p#X#:H  PM     snn5      $ s  snnf r   rS   rV   s       r   r   Vector.__eq__D   r^   r[   c                     [        [        U R                  U R                  U5      5       VVs/ s H	  u  p#X#:g  PM     snn5      $ s  snnf r   rS   rV   s       r   r   Vector.__ne__G   r^   r[   c                     [        [        U R                  U R                  U5      5       VVs/ s H	  u  p#X#:  PM     snn5      $ s  snnf r   rS   rV   s       r   r!   Vector.__gt__J   rZ   r[   c                     [        [        U R                  U R                  U5      5       VVs/ s H	  u  p#X#:  PM     snn5      $ s  snnf r   rS   rV   s       r   r$   Vector.__ge__M   r^   r[   c                     [        U[        5      (       a  UR                  n[        U R                  5      [        U5      :w  a  [	        S5      eU$ )Nz*Cannot compare vectors of different length)
isinstancer8   r<   r?   
ValueErrorr   s     r   __castVector.__castP   s=    eV$$JJEtyy>SZ'IJJr   r;   )r1   r2   r3   r4   r   r@   rD   rH   __hash__rL   r)   r/   r   r   r   r   r!   r$   rU   r5   r6   r   r   r8   r8   %   sW     HFJ,NOOONOr   r8   c                 
    X:  $ r   r6   rW   rX   s     r   <lambda>ro   X       qtr   c                 
    X:*  $ r   r6   rn   s     r   ro   ro   Y   rp   r   c                 
    X:H  $ r   r6   rn   s     r   ro   ro   Z   rp   r   c                 
    X:g  $ r   r6   rn   s     r   ro   ro   [   rp   r   c                 
    X:  $ r   r6   rn   s     r   ro   ro   \   rp   r   c                 
    X:  $ r   r6   rn   s     r   ro   ro   ]   rp   r   )ltleeqnegtgec                   &    \ rS rSrS rS rS rSrg)
VectorTest`   c                 J    [         U    H  nU R                  " X/UQ76   M     g r   )opmapassertRaises)r   erroropnameargsops        r   	checkfailVectorTest.checkfailb   s#    -Be/$/  r   c                     [         U    Ha  nU" X#5      nU R                  [        U5      [        U5      5        [        [        U5      5       H  nU R	                  Xg   XG   L 5        M     Mc     g r   )r   assertEqualr?   range
assertTrue)r   r   rW   rX   expresr   realresrC   s           r   
checkequalVectorTest.checkequalf   sY    -BhGS\3v;73w<(
fi 78 )	  r   c                    [        [        S5      5      n[        [        S5      5      n[         H  nU R                  [        X1U5        M     [        [        S5      5      nSS/-  nU[        U5      4[        U5      U4[        U5      [        U5      4/nU H  u  pU R                  SX/ SQ5        U R                  SX/ SQ5        U R                  SX/ S	Q5        U R                  S
X/ SQ5        U R                  SX/ SQ5        U R                  SX/ SQ5        [        R                  5        H-  nU H$  nU R                  [        [        U" X5      5        M&     M/     M     g )N         rv   )TTFFFrw   )TTTFFrx   )FFTFFry   )TTFTTrz   )FFFTTr{   )FFTTT)r8   r   r   r   ri   listr   valuesr   rK   bool)r   rW   rX   r   r   opsr   s          r   
test_mixedVectorTest.test_mixedo   s    5858FNN:v!4  qNGF1IAF1I0FGFQOOD!(KLOOD!(KLOOD!(KLOOD!(KLOOD!(KLOOD!(KL||~B%%ir!x@  & r   r6   N)r1   r2   r3   r4   r   r   r   r5   r6   r   r   r}   r}   `   s    09Ar   r}   c                   &    \ rS rSrS rS rS rSrg)
NumberTest   c           
      l   [        S5       H  n[        S5       H  n[        [        4 H  n[        [        4 Hm  nX4s=:X  a
  [        :X  a  O  OM  U" U5      nU" U5      n[        R	                  5        H-  nU H$  nU" X5      n	U" XV5      n
U R                  X5        M&     M/     Mo     M     M     M     g )Nr   )r   intr   r   r   r   )r   rW   rX   typeatypebtatbr   r   realoutcometestoutcomes              r   
test_basicNumberTest.test_basic   s     qA1X!6]E"%v ,,$"1X"1X#(<<>C&).0h.0j $ 0 0 J '* $2 "/ +  r   c                     [         [        4 H]  n[         [        4 HJ  nU" U5      nU" U5      n[        U    H*  n	U	" Xx5      n
[        U
SU
5      n
U R	                  XL 5        M,     ML     M_     g )Nr
   )r   r   r   getattrr   )r   r   rW   rX   r   r   r   r   r   r   r   s              r   
checkvalueNumberTest.checkvalue   sd    6]Ev1X1X-B jG%gsG<GOOG$56 ( ' #r   c                    U R                  SSSS5        U R                  SSSS5        U R                  SSSS5        U R                  SSSS5        U R                  SSSS5        U R                  S	SSS5        U R                  SSS
S5        U R                  SSS
S5        U R                  SSS
S5        U R                  SSS
S5        U R                  SSS
S5        U R                  S	SS
S5        U R                  SS
SS5        U R                  SS
SS5        U R                  SS
SS5        U R                  SS
SS5        U R                  SS
SS5        U R                  S	S
SS5        g )Nrv   r   Frw   Trx   ry   rz   r{      )r   r.   s    r   test_valuesNumberTest.test_values   sF   aE*aD*aD*aE*aE*aD*aD*aD*aE*aD*aE*aE*aE*aE*aE*aD*aD*aD*r   r6   N)r1   r2   r3   r4   r   r   r   r5   r6   r   r   r   r      s    K$7+r   r   c                   t    \ rS rSrS rS r\R                  \R                  " S5      S 5       5       r	S r
Srg)	MiscTest   c                    ^   " U 4S jS5      nU" 5       nU" 5       nT R                  X#:  S5        T R                  X#:H  S5        T R                  X#:  S5        g )Nc                   L   > \ rS rSrS rS rS rU 4S jrU 4S jrU 4S jr	Sr
g	)
&MiscTest.test_misbehavin.<locals>.Misb   c                     gNr   r6   self_r   s     r   r   -MiscTest.test_misbehavin.<locals>.Misb.__lt__       Qr   c                     gr   r6   r   s     r   r!   -MiscTest.test_misbehavin.<locals>.Misb.__gt__   r   r   c                     gr   r6   r   s     r   r   -MiscTest.test_misbehavin.<locals>.Misb.__eq__   r   r   c                 (   > TR                  S5        g NzThis shouldn't happenfailr   r   r   s     r   r   -MiscTest.test_misbehavin.<locals>.Misb.__le__       dii0G&Hr   c                 (   > TR                  S5        g r   r   r   s     r   r$   -MiscTest.test_misbehavin.<locals>.Misb.__ge__   r   r   c                 (   > TR                  S5        g r   r   r   s     r   r   -MiscTest.test_misbehavin.<locals>.Misb.__ne__   r   r   r6   N)r1   r2   r3   r4   r   r!   r   r   r$   r   r5   r.   s   r   Misbr      s    ...HHHHr   r   r   )r   )r   r   rW   rX   s   `   r   test_misbehavinMiscTest.test_misbehavin   sU    	I 	I FFa q!a r   c                    ^ SS K n " S S[        5      m " U4S jS5      nS nX1R                  4 H  nU R                  TXB" 5       5        M     g )Nr   c                       \ rS rSrSrg)MiscTest.test_not.<locals>.Exc   r6   Nr1   r2   r3   r4   r5   r6   r   r   Excr          r   r   c                   "   > \ rS rSrU 4S jrSrg)MiscTest.test_not.<locals>.Bad   c                    > Ter   r6   )r   r   s    r   rL   'MiscTest.test_not.<locals>.Bad.__bool__       	r   r6   N)r1   r2   r3   r4   rL   r5   r   s   r   Badr           r   r   c                     U (       +   g r   r6   )bads    r   doMiscTest.test_not.<locals>.do   s    Gr   )operator	Exceptionnot_r   )r   r   r   r   funcr   s        @r   test_notMiscTest.test_not   sJ     		) 		 		 'Dc4/ (r      c                 6   SSK Jn  U" 5       nU" 5       nUR                  U5        UR                  U5        U R                  [        [
        R                  X#5        U R                  [        [
        R                  X#5        U R                  [        [
        R                  X#5        U R                  [        [
        R                  X#5        U R                  [        [
        R                  X#5        U R                  [        [
        R                  X#5        UR                  S5        U R                  X#:X  + 5        U R                  X#:g  5        U R                  [        [
        R                  X#5        U R                  [        [
        R                  X#5        U R                  [        [
        R                  X#5        U R                  [        [
        R                  X#5        UR                  S5        U R                  [        [
        R                  X#5        U R                  [        [
        R                  X#5        UR                  SS5        UR                  SS5        U R                  X#:X  + 5        U R                  X#:g  5        U R                  X#:  5        g )Nr   )UserList         )collectionsr   appendr   RecursionErrorr   rx   ry   rv   rw   rz   r{   r   insert)r   r   rW   rX   s       r   test_recursionMiscTest.test_recursion   s    	)JJ		.(++q<.(++q<.(++q<.(++q<.(++q<.(++q<	 	Q%.(++q<.(++q<.(++q<.(++q<	.(++q<.(++q<	B	BQ%r   c                   ^  " S S5      mS S4S S4S S4S	 S
4S S4S S4S S4S S4S S4S S4U4S jS4U4S jS4U4S jS4/n[        U5       HI  u  p#U R                  US9   U R                  [        US   5         US   " 5         S S S 5        S S S 5        MK     g ! , (       d  f       N= f! , (       d  f       Mn  = f) Nc                       \ rS rSrSrg)-MiscTest.test_exception_message.<locals>.Spami  r6   Nr   r6   r   r   Spamr     r   r   r   c                      SS :  $ N*   r6   r6   r   r   ro   1MiscTest.test_exception_message.<locals>.<lambda>      R$Yr   z'<' .* of 'int' and 'NoneType'c                      S S:  $ r   r6   r6   r   r   ro   r     s    TBYr   z'<' .* of 'NoneType' and 'int'c                      SS :  $ r   r6   r6   r   r   ro   r     r   r   z'>' .* of 'int' and 'NoneType'c                      SS :  $ )Nfoor6   r6   r   r   ro   r   	  s    UT\r   z'<' .* of 'str' and 'NoneType'c                      SS:  $ )Nr   i  r6   r6   r   r   ro   r   
  s    Uc\r   z'>=' .* of 'str' and 'int'c                      SS :*  $ r   r6   r6   r   r   ro   r         R4Zr   z'<=' .* of 'int' and 'NoneType'c                      SS :  $ r   r6   r6   r   r   ro   r     r  r   z'>=' .* of 'int' and 'NoneType'c                      S/ :  $ r   r6   r6   r   r   ro   r         R"Wr   z'<' .* of 'int' and 'list'c                      S/ :  $ )Nr6   r6   r6   r   r   ro   r     r  r   z'>' .* of 'tuple' and 'list'c                      S S :  $ r   r6   r6   r   r   ro   r     s    TT\r   z$'>=' .* of 'NoneType' and 'NoneType'c                     > T " 5       S:  $ r   r6   r   s   r   ro   r     s    TVb[r   z'<' .* of 'Spam' and 'int'c                     > ST " 5       :  $ r   r6   r
  s   r   ro   r     s    R$&[r   z'<' .* of 'int' and 'Spam'c                  "   > T " 5       T " 5       :*  $ r   r6   r
  s   r   ro   r     s    TVtv%r   z'<=' .* of 'Spam' and 'Spam')testr   r   )	enumeratesubTestassertRaisesRegexrK   )r   testsrC   r  r   s       @r   test_exception_messageMiscTest.test_exception_message  s    	 	  AB AB AB!#DE!#@A!CD!CD;<=>!#JK "?@ "?@%'FG
 !'GA1%++ItAw?GI @ &% (?? &%s$   *B5B$B5$
B2.B55
C	r6   N)r1   r2   r3   r4   r   r   r   
no_tracinginfinite_recursionr   r  r5   r6   r   r   r   r      s?    !0  # $ @r   r   c                       \ rS rSrS rSrg)DictTesti  c                    SS K n0 n[        S5       H+  nUR                  S5      S-  X!R                  S5      S-  '   M-     [        UR	                  5       5      nUR                  U5        0 nU H	  u  pgXuU'   M     UR                  5       nWS-   UW'   U R                  X"5        U R                  X%5        U R                  X5        U R                  X(:g  5        S H*  n	[        U	    H  n
U R                  [        XU5        M     M,     g )Nr   2   d   y              ?g      ?)rv   rw   rz   r{   )randomr   	randranger   itemsshufflecopyr   r   r   r   rK   )r   r  imag1arC   r  imag1bkrG   imag2r   r   s              r   
test_dictsDictTest.test_dicts  s     	rA/5/?/?/DR/GF##C(+, V\\^$uDA1I s7a((&(.FFm!!)R? $ /r   r6   N)r1   r2   r3   r4   r$  r5   r6   r   r   r  r    s    @r   r  c                   &    \ rS rSrS rS rS rSrg)ListTesti3  c                    S/nU R                  X:  S5        U R                  X:*  S5        U R                  X:H  S5        U R                  X:g  S5        U R                  X:  S5        U R                  X:  S5        SS/nU R                  X:  S5        U R                  X:*  S5        U R                  X:H  S5        U R                  X:g  S5        U R                  X:  S5        U R                  X:  S5        g )Nr   FT)assertIs)r   r
   ys      r   test_coverageListTest.test_coverage5  s    Dac5!adD!adD!adE"ac5!adD!Hac4 adD!adE"adD!ac5!adE"r   c                    ^  " S S[         5      m " U4S jS5      nU" 5       /nU" 5       /n[        S    H  nU R                  TXBU5        M     g )Nc                       \ rS rSrSrg)#ListTest.test_badentry.<locals>.ExciI  r6   Nr   r6   r   r   r   r/  I  r   r   r   c                   "   > \ rS rSrU 4S jrSrg)#ListTest.test_badentry.<locals>.BadiK  c                    > Ter   r6   )r   r   r   s     r   r   *ListTest.test_badentry.<locals>.Bad.__eq__L  r   r   r6   N)r1   r2   r3   r4   r   r5   r   s   r   r   r1  K  r   r   r   rx   )r   r   r   )r   r   r
   r*  r   r   s        @r   test_badentryListTest.test_badentryF  sM    	) 		 	 UGUG+Bc2!, r   c                      " S S5      nU" 5       /nU" 5       /n[         S    H  nU R                  U" X#5      S5        M     g )Nc                       \ rS rSrS rSrg)%ListTest.test_goodentry.<locals>.GoodiX  c                     g)NTr6   r   s     r   r   ,ListTest.test_goodentry.<locals>.Good.__lt__Y  s    r   r6   N)r1   r2   r3   r4   r   r5   r6   r   r   Goodr8  X  s    r   r;  rv   T)r   r)  )r   r;  r
   r*  r   s        r   test_goodentryListTest.test_goodentryU  s@    	 	 VHVH+BMM"Q(D) r   r6   N)r1   r2   r3   r4   r+  r4  r<  r5   r6   r   r   r'  r'  3  s    #"-*r   r'  __main__)unittestr  r   r   r   r8   rv   r   rw   r   rx   r   ry   r   rz   r!   r{   r$   r   TestCaser}   r   r   r  r'  r1   mainr6   r   r   <module>rB     s     ) ):0 0f X[[(//
:X[[(//
:X[[(//
:X[[(//
:X[[(//
:X[[(//
:	(A"" (AT3+"" 3+jXx   Xv@x   @2-*x   -*` zMMO r   