
    A[g.B                     T   d dl m Z mZ d dlmZ d dlZd dlZd dlmZ d dl	m
Z
mZmZmZmZmZmZmZmZmZmZmZmZ d dlmZ  G d d      Zej6                  j9                  dd	 ed
      dgg dfd	 ed
      dgg dfd ed
      dgg dfd ed
      dgg dfd ed
      dgg dfd eej<                  ej<                        dgg dfd edej<                        dgg dfd eej<                  d      dgg dfg      ej6                  j9                  dddg      d               Zy)    )datetime	timedelta)StringION)using_pyarrow_string_dtype)NACategoricalCategoricalIndex	DataFrameIntervalIndex
MultiIndexNaTPeriodIndexSeries	Timestamp
date_rangeoption_contextperiod_rangec                   d   e Zd Zd Zd Zd Zd Zd Zd Zd Z	d Z
d	 Zd
 Zd Zd Zej                   j"                  d        Zej                   j'                   e       d      d        Zd Zej                   j"                  d        Zd Zd Zd Zd Zd Zd Zd Zd Zd Z d Z!d Z"d Z#d Z$ej                   jK                  d e&jN                  e&jP                  g      ej                   jK                  d!e)d"ge*d#gg      d$               Z+d% Z,d& Z-d' Z.d( Z/d) Z0d* Z1d+ Z2d, Z3d- Z4d. Z5d/ Z6y0)1TestDataFrameReprc                     g d}g d}dg}t        |||      }t        |j                               t        u sJ ||d      }t        |j                               t        u sJ y )N)         r   )u   σu   τu   υu   φu   ψcolumnsindexr   )r
   type__repr__str)selfdataindex1colsdfsers         W/var/www/html/bid-api/venv/lib/python3.12/site-packages/pandas/tests/frame/test_repr.pytest_repr_should_return_strz-TestDataFrameRepr.test_repr_should_return_str   sb     9ztT8BKKM"c)))akCLLN#s***    c                    t        d      }t        j                  j                  d      j	                  |d      }t        |      j                  d      }|j                  t        k(  j                         sJ t        |       t        |j                  d dd d f          t        |j                  d dd d f          y )NACDEFGHIJKLMNOP   )  2   U1<   =   )listnprandomdefault_rngchoicer
   astypedtypesobjectallrepriloc)r    letswordsr$   s       r&   test_repr_bytes_61_linesz*TestDataFrameRepr.test_repr_bytes_61_lines.   s    %&		%%a(//jAu$$T*		V#((*** 	RRWWSbS!V_RWWSbS!V_r(   c                     t        j                  ddgddg      }t        t        j                  j                  d      j                  d      |      }t        j                  ||      }t        |       y )	N)r   r   )   r@   u   Δi1namesr+   )r+      r   )
r   from_tuplesr
   r2   r3   r4   standard_normaltmget_objr:   )r    frame_or_seriesr   objs       r&   test_repr_unicode_level_namesz/TestDataFrameRepr.test_repr_unicode_level_names:   s\    &&'7$?OP		--a0@@HPUVjjo.S	r(   c                     t        g dg dg dd      j                  ddg      }t        |j                        }d|d<   ||_        t	        |       d	d
g|d<   ||_        t	        |       y )Nr@   r+   r   rD   r         r   	   abcrU   rV   )fazboor   rX   rY   )r
   	set_indexr1   r   r:   )r    r$   r   s      r&   test_assign_index_sequencesz-TestDataFrameRepr.test_assign_index_sequencesA   sh    YYYGHRR#J
 RXX!aR 5>aRr(   c                 t    t        dddgit        t        d      gddgg      }t        |      }d}||k(  sJ y )	NXr@   r+   20130101rU   rV   rE   z/              X
NaT        a  1
2013-01-01 b  2)r
   r   r   r:   r    r$   resultexpecteds       r&   test_repr_with_mi_natz'TestDataFrameRepr.test_repr_with_mi_natP   sF    aV}c9Z3H-ICQT:,VWbF!!!r(   c                 t    t        g ddd t        j                  t        g      }t	        |      }d}||k(  sJ y )Nr@   r+   r   rD   Tz'      0
True  1
None  2
NaN   3
NaT   4)r
   r2   nanr   r:   r_   s       r&   test_repr_with_different_nullsz0TestDataFrameRepr.test_repr_with_different_nullsV   s;    |dD"&&#%>?b
 !!!r(   c           	          t         j                  ddgd ddgt        ddgddd	gi}t        |
      }t	        |      }d}||k(  sJ y )Nr@   r+   r   rD   rP   rR   Tr   rS   )r!   zG   NaN  None  NaT  True
0    1     3    6     8
1    2     4    7     9)r2   re   r   r
   r:   )r    dr$   r`   ra   s        r&   #test_repr_with_different_nulls_colsz5TestDataFrameRepr.test_repr_with_different_nulls_colsa   sV    VVaVTAq63Aq!fEAb !!!r(   c           	          t        ddidt        j                  idt        j                  idt        j                  iddidt        j                  id      }|j                  ddg      }t	        |       y )N)AA0006000nuitrl   rk   )AAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBBBBBBBBBBBBBBBBBBCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFrn   rp   )r
   r2   re   rZ   r:   )r    df3idfs      r&   test_multiindex_na_reprz)TestDataFrameRepr.test_multiindex_na_reprk   sm    4jA4bff=4bff=4bff=4c:4bff=	
 mmXx01S	r(   c                     t        j                  ddgg d      }t        dddgi|      }t        |      j	                  d	      }|d
   j                  d      sJ y )N)rU   r   foo)rV   r@   barrT   rB   valuer   r@   rE   
r+   za 0 foo)r   rF   r
   r:   split
startswith)r    r   r$   liness       r&   test_repr_name_coincidez)TestDataFrameRepr.test_repr_name_coincide{   s]    &&o.o
 !Q(6Rt$Qx""9---r(   c                 X   |}|}t        |       t        |       t        |j                         t        |j                         t               }|j                  |       |j                  |       |j                  j                  |       |j                  j                  |       y )N)buf)r:   Tr   	to_string)r    /multiindex_year_month_day_dataframe_random_data multiindex_dataframe_random_dataymdframer   s         r&   test_repr_to_stringz%TestDataFrameRepr.test_repr_to_string   s|    
 >0US	UWWSUUjC #c"C r(   c                 ~    t        t                      t        t        j                  d            }t        |       y )Nr,   rE   )r:   r
   r2   arange)r    r   s     r&   test_repr_emptyz!TestDataFrameRepr.test_repr_empty   s'    Y[ 		$0Ur(   c                     t        |       y )N)r:   )r    float_string_frames     r&   test_repr_mixedz!TestDataFrameRepr.test_repr_mixed   s     r(   c           	      r   t        t        j                  j                  d      j	                  d      t        d      D cg c]  }t        |       c}dt        d            }t        j                  |j                  d ddf<   t        j                  |j                  d ddf<   t        |       y c c}w )Nr+      )rk   BrE      rk   r   )
r
   r2   r3   r4   rG   ranger   re   locr:   )r    ibiggies      r&   test_repr_mixed_bigz%TestDataFrameRepr.test_repr_mixed_big   s     YY**1-==cB&+Cj1jc!fj1 *
  "vv

3B38!vv

3B38V 2s    B4
z/r in)reasonc                     t        g d      }t        |       t        dgdgdg      }dt        |      vsJ dt        |      vsJ d	t        |      vsJ y )
N)r   r@   r   r   za
	bza
	dza
	fr   	za
)r
   r:   )r    no_indexr$   s      r&   	test_reprzTestDataFrameRepr.test_repr   s_     Y/X
|j\*N48###48###DH$$$r(   c                 L   t        ddgddgg      }t        dd      5  dt        |      v sJ 	 d d d        t        dd      5  dt        |      vsJ 	 d d d        t        dd	      5  dt        |      vsJ 	 d d d        y # 1 sw Y   TxY w# 1 sw Y   ;xY w# 1 sw Y   y xY w)
Nr@   r+   r   rD   zdisplay.show_dimensionsTz2 rows x 2 columnsFtruncater
   r   r:   r    r$   s     r&   test_repr_dimensionsz&TestDataFrameRepr.test_repr_dimensions   s    AA'(5t<'48333 = 5u='tBx777 > 5zB'tBx777 CB =< >= CBs#   BB(BBBB#c                     t        t        j                  d      t        d      t        d            }t	        |       y )N)r   rD   rD   r   r   )r
   r2   zerosr   r:   )r    r   s     r&   test_repr_bigzTestDataFrameRepr.test_repr_big   s*     288H-uQxuSzRVr(   c                     t        ddgdz  t        j                         dgdz  ddgdz  t        j                         t        d      z   dgdz  it	        j
                  d            }t        |       y )Nrx   r@   r-   ry   rE   )r
   r   todayr   r2   r   r:   )r    
unsortables     r&   test_repr_unsortablez&TestDataFrameRepr.test_repr_unsortable   sm     sRx 1#(w| 9Q</%2	 ))B-

 	Zr(   c                 *   t        |       t        dd      5  t        |       d d d        t        dddd      5  t        |       d d d        t        dddd      5  t        |       d d d        y # 1 sw Y   NxY w# 1 sw Y   8xY w# 1 sw Y   y xY w)Nzdisplay.precisionr   zdisplay.max_rows
   display.max_columnsr+   r,   )r:   r   )r    float_frames     r&   test_repr_float_frame_optionsz/TestDataFrameRepr.test_repr_float_frame_options   s    [/3 4 .4I1M N .6KTR SR 43 NM SRs"   A1A=B	1A:=B	Bc                    d}t        d||gi      }t        |      }d}|j                  d      d   j                         |k(  sJ t        d||gi      }t        |      }|j                  d      d   j                         |k(  sJ y )Nu   σσσσrk   z      Ar{   r   )r
   r:   r|   rstrip)r    uvalr$   r`   ex_tops        r&   test_repr_unicodez#TestDataFrameRepr.test_repr_unicode   s    )dD\*+b||D!!$++-777dD\*+b||D!!$++-777r(   c                 6    t        ddgi      }t        |       y )Nrk      א)r
   r   r   s     r&    test_unicode_string_with_unicodez2TestDataFrameRepr.test_unicode_string_with_unicode   s    hZ()Br(   c                 X    t        g dg dg dd      }t        |j                         y )NrN   rO   rQ   )r   u   בrW   )r
   r:   r   r   s     r&   test_repr_unicode_columnsz+TestDataFrameRepr.test_repr_unicode_columns   s    )yyQRRZZr(   c                     t        ddgi      }d}t        j                  t        |      5  t	        |       d d d        y # 1 sw Y   y xY w)Nrk   abcz2^'str' object cannot be interpreted as an integer$match)r
   pytestraises	TypeErrorbytes)r    r$   msgs      r&   test_str_to_bytes_raisesz*TestDataFrameRepr.test_str_to_bytes_raises   s8    eW~&B]]9C0"I 100s   AA
c                     t        t        j                  j                  d      j	                  d      t        j
                  dgdz  t                    }t        |       y )Nr+   )r   r   
aaaaaaaaaar   dtyper   )r
   r2   r3   r4   rG   arrayr8   r:   r   s     r&   test_very_wide_reprz%TestDataFrameRepr.test_very_wide_repr  sF    II!!!$44X>HHhZ"_F;
 	Rr(   c                     t        dgdd      }t        dd      5  dt        |      v sJ 	 d d d        y # 1 sw Y   y xY w)Nizl u  Is it possible to modify drop plot codeso that the output graph is displayed in iphone simulator, Is it possible to modify drop plot code so that the output graph is â¨displayed in iphone simulator.Now we are adding the CSV file externally. I want to Call the File through the code..)Id	StringColr   r   r   r   r   s     r&   ,test_repr_column_name_unicode_truncation_bugz>TestDataFrameRepr.test_repr_column_name_unicode_truncation_bug  sF    i2
  126$r(*** 766s   6?c                     t        j                  d       d}t        dd dd      5  t        g dg dg      }|j	                         }||k(  sJ 	 d d d        j	                         J y # 1 sw Y   xY w)Njinja2z{\begin{tabular}{llll}
\toprule
 & 0 & 1 & 2 \\
\midrule
0 & $\alpha$ & b & c \\
1 & 1 & 2 & 3 \\
\bottomrule
\end{tabular}
zstyler.format.escapezstyler.render.reprlatex)z$\alpha$rV   rW   rN   )r   importorskipr   r
   _repr_latex_)r    ra   r$   r`   s       r&   test_latex_reprz!TestDataFrameRepr.test_latex_repr!  s|    H% "D*>
 3Y?@B__&FX%%%
  (((
 
s   )A++A4c                 d    t        dg dit        dd            }t        |      }d}||k(  sJ y )Nrk   rN   2000r   )periodsrE   z7            A
2000-01-01  1
2000-01-02  2
2000-01-03  3r
   r   r:   r_   s       r&   test_repr_with_datetimeindexz.TestDataFrameRepr.test_repr_with_datetimeindex6  s6    Y'z&!/LMbO!!!r(   c                 x    t        dg dit        j                  g d            }t        |      }d}||k(  sJ y )Nrk   rd   )r   r@   r+   r   rD   rE   z1        A
(0, 1]  1
(1, 2]  2
(2, 3]  3
(3, 4]  4)r
   r   from_breaksr:   r_   s       r&   test_repr_with_intervalindexz.TestDataFrameRepr.test_repr_with_intervalindex<  s?    ,}'@'@'Q
 bJ!!!r(   c                 d    t        dg dit        g d            }t        |      }d}||k(  sJ y )Nrk   rN   rT   rE   z   A
a  1
b  2
c  3)r
   r	   r:   r_   s       r&    test_repr_with_categorical_indexz2TestDataFrameRepr.test_repr_with_categorical_indexE  s5    Y'/?/PQb+!!!r(   c                     t        dddd      }t        ddd      }t        ||d	      }d
}t        |      |k(  sJ t        t	        |      t	        |      d	      }t        |      |k(  sJ y )Nz2011-01-01 09:00hr   z
US/Eastern)freqr   tzz2011-01M)r   r   )dtpz                         dt        p
0 2011-01-01 09:00:00-05:00  2011-01
1 2011-01-01 10:00:00-05:00  2011-02
2 2011-01-01 11:00:00-05:00  2011-03
3 2011-01-01 12:00:00-05:00  2011-04
4 2011-01-01 13:00:00-05:00  2011-05)r   r   r
   r:   r   )r    r   r   r$   expdf2s         r&   #test_repr_categorical_dates_periodsz5TestDataFrameRepr.test_repr_categorical_dates_periodsK  sr    *aLQa8bq)*( Bx3{2[^DECyCr(   argzbox, expectedz0    NaT
dtype: objectz     0
0  NaTc                 N    t         | |d      gt                    }||k(  sJ y )Nr   r   )r:   r8   )r    r   boxra   r`   s        r&   test_repr_np_nat_with_objectz.TestDataFrameRepr.test_repr_np_nat_with_object\  s)     c3u:,f56!!!r(   c                 L    t        dt        ddd      i      }t        |       y )Nyearz1/1/1700r-   zYE-DEC)r   r   r   r   s     r&   "test_frame_datetime64_pre1900_reprz4TestDataFrameRepr.test_frame_datetime64_pre1900_reprf  s!    
:r QRSRr(   c                     t        g dd      }t        t        j                  j	                  d      j                  d      |      }|j                          y )N)z2011-1z2011-2z2011-3r   )r   r+   )r   rD   rE   )r   r
   r2   r3   r4   rG   r   )r    r   r   s      r&   %test_frame_to_string_with_periodindexz7TestDataFrameRepr.test_frame_to_string_with_periodindexk  sB    :E"))//2BB6JRWX 	r(   c           	          t        dddgit        j                  t        t        dgd      g            }|j                         }d}||k(  sJ y )NrU   r@   r+   Int64r   rE   z      a
<NA>  1
1     2)r
   r   from_arraysr   r   r   r_   s       r&   "test_to_string_ea_na_in_multiindexz4TestDataFrameRepr.test_to_string_ea_na_in_multiindexr  sW    1a&M((&"a*H)IJ

  !!!r(   c                     t        dt        ddd      i      }t        |      }|j                  d d d df   }t        |      }||k(  sJ y )Nx2019r   UTC)r   r   r   )r
   r   r:   r;   r    r$   ra   r`   s       r&   $test_datetime64tz_slice_non_truncatez6TestDataFrameRepr.test_datetime64tz_slice_non_truncate  sO    ZuEFG8WWQU^b!!!r(   c                     t        ddgddgddggddg	      }|ddg   j                         |d
<   d}t        |      }||k(  sJ y )NrU   rV   rW   rh   efleftrightr   recordz_  left right     record
0    a     b  [0, a, b]
1    c     d  [1, c, d]
2    e     f  [2, e, f])r
   
to_recordsr:   r   s       r&   $test_to_records_no_typeerror_in_reprz6TestDataFrameRepr.test_to_records_no_typeerror_in_repr  sb    c
S#Jc
;fgEVW67+,7798 b!!!r(   c                     t        dt        j                  gddgddggddg      }|ddg   j                         |d	<   d
}t	        |      }||k(  sJ y )NrU   rW   rh   r   r   r   r   r   r   zg  left right       record
0    a   NaN  [0, a, nan]
1    c     d    [1, c, d]
2    e     f    [2, e, f]r
   r2   re   r  r:   r   s       r&   $test_to_records_with_na_record_valuez6TestDataFrameRepr.test_to_records_with_na_record_value  sk    266]S#Jc
3fg=N
 67+,7798 b!!!r(   c                     t        ddgt        j                  t        j                  gddggt        j                  dg      }|t        j                  dg   j                         |d<   d}t	        |      }||k(  sJ y )	NrU   rV   r   r   r   r   r   zo   NaN right         record
0    a     b      [0, a, b]
1  NaN   NaN  [1, nan, nan]
2    e     f      [2, e, f]r  r   s       r&   test_to_records_with_na_recordz0TestDataFrameRepr.test_to_records_with_na_record  sx    3Z"&&"&&)C:6@Q
 2667+,7798 b!!!r(   c                    d}d}t        j                  t        |      5  t        dd      5  t	        t
        j                  dgt
        j                  t
        j                  gddggt
        j                  t
        j                  g	      }|t
        j                  t
        j                  g   j                         |d
<   t        |      }d d d        d d d        |k(  sJ y # 1 sw Y   xY w# 1 sw Y   xY w)Nk   NaN  inf         record
0  inf    b    [0, inf, b]
1  NaN  NaN  [1, nan, nan]
2    e    f      [2, e, f]"use_inf_as_na option is deprecatedr   use_inf_as_naTrV   r   r   r   r   
rH   assert_produces_warningFutureWarningr   r
   r2   infre   r  r:   r    ra   r   r$   r`   s        r&   %test_to_records_with_inf_as_na_recordz7TestDataFrameRepr.test_to_records_with_inf_as_na_record  s     3''SA6ffc]RVVRVV$4sCjAVVRVV,  "266266"23>>@8b 7 B !!! 76 BA#   C/BC#C/#C,	(C//C8c                    d}d}t        j                  t        |      5  t        dd      5  t	        t
        j                  dgt
        j                  t
        j                  gddggt
        j                  t
        j                  g	      }|t
        j                  t
        j                  g   j                         |d
<   t        |      }d d d        d d d        |k(  sJ y # 1 sw Y   xY w# 1 sw Y   xY w)Nr	  r
  r   r  FrV   r   r   r   r   r  r  s        r&   test_to_records_with_inf_recordz1TestDataFrameRepr.test_to_records_with_inf_record  s     3''SA7ffc]RVVRVV$4sCjAVVRVV,  "266266"23>>@8b 8 B !!! 87 BAr  c                     t        t        ddgd      t        ddgd      d      }|j                  d	j                  d	j                  g
      }d}||k(  sJ y )Ng_c97ݚ?g6sӭ?Float64r   r@   r+   r   )rU   rV   z{:.2f})
formattersz)      a     b
0  0.12  1.00
1  1.12  2.00)r
   r   r   formatr_   s       r&   test_masked_ea_with_formatterz/TestDataFrameRepr.test_masked_ea_with_formatter  sd    [+6iHQF'2
 (//8??)KL !!!r(   c                     t        j                  d       t        g dg dd      }|j                  j	                  |      |_        d}t        |      |k(  sJ y )NpyarrowrN   rO   )long_column_namecol2zg   long_column_name  col2
0                 1     4
1                 2     5
2                 3     6)r   r   r
   r   r6   r:   )r    any_string_dtyper$   ra   s       r&   test_repr_ea_columnsz&TestDataFrameRepr.test_repr_ea_columns  sQ    I&IyIJZZ&&'78
 Bx8###r(   N)7__name__
__module____qualname__r'   r>   rL   r[   rb   rf   ri   rv   r   r   r   r   r   markslowr   xfailr   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   parametrizer2   
datetime64timedelta64r   r
   r   r   r   r   r   r  r  r  r  r  r  r   r(   r&   r   r      s   +
"	"" .!&! [[  [[13GD% E%	8 [[ 

8+*)*""" " [[UR]]BNN$CD[[
+	,y:J.KL"	 E
"

""	""""""""	$r(   r   zdata,outputr+   re   r@   )	 2.0+0.0j	 NaN+0.0jz	 1.0+0.0j)r*  r+  	-1.0+0.0j)z	-2.0+0.0jr+  r-  y       Gz)-0.00-1.23j  NaN+0.00jz-1.00+0.00jy        Gz?gGz?)z 0.00+1.23jr0  z 1.23+0.00j)r/  z  NaN+ NaNj 1.00+0.00jg333333?)r/  z 1.20+ NaNjr1  g333333)r/  z  NaN-1.20jr1  as_frameTFc                    t        t        j                  |             }|r\|j                  d      }t	        |      D cg c]  \  }}| d|  }}}ddt        |d          ddj                  |      z   }n6t	        |      D cg c]  \  }}| d|  }}}dj                  |      dz   }t        |      |k(  sJ dt        |       d	|        y c c}}w c c}}w )
Nval)name z >r   r{   z   z
dtype: complex128z

)r   r2   r   to_frame	enumeratelenjoinr   )r!   outputr2  rK   r   r4  reprsra   s           r&   test_repr_with_complex_nansr=    s    2 $
 Clll&,5f,=>,=&!SA3au,=>Bs58}o-.b1DIIe4DD.7.?@.?FAsA3c#.?@99U#&;;s8x>2c#hZtH:!>> ? As   CC) r   r   ior   numpyr2   r   pandas._configr   pandasr   r   r	   r
   r   r   r   r   r   r   r   r   r   pandas._testing_testingrH   r   r#  r&  complexre   r=  r)  r(   r&   <module>rE     sK      5    G$ G$T 
WU^Q	!HI
WU^R	 "IJ
genb	!#JK
'%."	%'TU
	&(UVWRVVRVV,a09	

 WS"&&)1-9	

 WRVVT*A.9	
, dE]3
? 4-.
?r(   