
    /hhR                     *   S r SSKJr  SSKJrJr  SSKrSSKrSSKr " S S\R                  5      r
 " S S\R                  5      r\S	:X  aG  \" \R                  5      S
:  a  \R                  " \R                  S
   5        \R                   " 5         gg)aT  
These tests are meant to exercise that requests to create objects bigger
than what the address space allows are properly met with an OverflowError
(rather than crash weirdly).

Primarily, this means 32-bit builds with at least 2 GiB of available memory.
You need to pass the -M option to regrtest (e.g. "-M 2.1G") for tests to
be enabled.
    )support)bigaddrspacetestMAX_Py_ssize_tNc                   D    \ rS rSr\S 5       r\S 5       r\S 5       rSrg)	BytesTest   c                 |     S[         S-
  -  nU R                  [        [        R                  US5        S ng ! S nf = fN   x   s   xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx)r   assertRaisesOverflowErroroperatoraddselfxs     ?/opt/python-3.13.8/usr/lib/python3.13/test/test_bigaddrspace.pytest_concatBytesTest.test_concat   s9    
	,-AmX\\1jIAA   27 ;c                      S[         S-
  -  nU R                  [        5       nUS-   nS S S 5        U R                  [        5       nUS-  nS S S 5        S ng ! , (       d  f       N4= f! , (       d  f       N"= f! S nf = fr
   )r   r   r   r   r   cms      r   test_optimized_concatBytesTest.test_optimized_concat    sv    	,-A""=1R
N 2 ""=1Rj  2 A 21 21 As9   !A9 AA9 A(A9 
A%!A9 (
A62A9 9A=c                 |     S[         S-
  -  nU R                  [        [        R                  US5        S ng ! S nf = f)Nr   r   )r   r   r   r   mulr   s     r   test_repeatBytesTest.test_repeat/   s9    	,-AmX\\1cBAAr    N)	__name__
__module____qualname____firstlineno__r   r   r   r   __static_attributes__r!       r   r   r      s<         r'   r   c                   H    \ rS rSrSr\S 5       r\S 5       r\S 5       rSr	g)StrTest8      c                      S[        [        SU R                  -  -  5      -  nU R                  [        [
        R                  X5        S ng ! S nf = fNr   皙?)intr   unicodesizer   MemoryErrorr   r   r   s     r   r   StrTest.test_concat<   sI    	c.S43C3C-CDEEA k8<<>AAs   AA Ac                 (    S[        [        SU R                  -  -  5      -  nU R                  [        5       nX-   nS S S 5        U R                  [        5       nX-  nS S S 5        S ng ! , (       d  f       N3= f! , (       d  f       N"= f! S nf = fr-   )r/   r   r0   r   r1   r   s      r   r   StrTest.test_optimized_concatG   s    	c.S43C3C-CDEEA"";/2E 0 "";/2 0 A 0/ 0/ As9   7B A+B A< B +
A95B <
B
B Bc                      S[        [        SU R                  -  -  5      -  nU R                  [        [
        R                  US5        S ng ! S nf = f)Nr   r.      )r/   r   r0   r   r1   r   r   r   s     r   r   StrTest.test_repeatV   sI    	c.S43C3C-CDEEAk8<<A>AAs   AA Ar!   N)
r"   r#   r$   r%   r0   r   r   r   r   r&   r!   r'   r   r)   r)   8   sA    K     r'   r)   __main__   )__doc__testr   test.supportr   r   unittestr   sysTestCaser   r)   r"   lenargvset_memlimitmainr!   r'   r   <module>rD      s     9   
"!! "J$h $N z
388}qSXXa[)MMO r'   