o
    vhU                     @   sl  d dl mZ d dlmZ d dlZd dlZd dlZd dlm	Z	 d dl
mZmZ d dlmZmZmZmZmZ dd Zd	d
 Zejdddgdd Zdd Zdd Zdd Zejjedddd Zejje dddd Zejdg ddfeedd d!e	 oe feeded!dfe e!d"e!d"gdfe e!d"d#d$gge	 oe fgd%d& Z"d'd( Z#dS ))    )StringIO)ascii_uppercaseN)using_string_dtype)HAS_PYARROWPYPY)CategoricalIndexIndex
MultiIndexSeries
date_rangec                  C   sx   d} t tdt jdjdd| td}t|	d}|
  t }|j|d ||d	k }t }|j|d d S )
Ni	  
abcdefghij   r   
   )sizedtypecategorybufd)nparraylisttakerandomdefault_rngintegersintr
   astypeisnar   info)ndatasr   s2 r$   c/var/www/html/hyperkenya/venv/lib/python3.10/site-packages/pandas/tests/series/methods/test_info.py'test_info_categorical_column_just_works   s   r&   c                  C   s4   t ddg} ttd| d}t }|j|d d S )Nabr   indexr   )r   r
   r   zerosr   r   )idxr"   r   r$   r$   r%   test_info_categorical'   s   r-   verboseTFc           	      C   s   | }t tt||dd}t }|j||d | }td}|r)|td7 }|r/tr/dnd}|td|	  d	| d
7 }||ksGJ d S )Nsth)r*   name)r.   r   zw        <class 'pandas.core.series.Series'>
        MultiIndex: 10 entries, ('foo', 'one') to ('qux', 'three')
        z            Series name: sth
            Non-Null Count  Dtype
            --------------  -----
            10 non-null     int64
             +z/        dtypes: int64(1)
        memory usage: z.0z bytes
        )
r
   rangelenr   r   getvaluetextwrapdedentr   memory_usage)	%lexsorted_two_level_string_multiindexr.   using_infer_stringr*   serr   resultexpected	qualifierr$   r$   r%   test_info_series/   s*   r?   c                  C   sX   t ddgdd} t }| j|d | }t|  }td| d}||ks*J d S )N   r   i8r   r   z    <class 'pandas.core.series.Series'>
    RangeIndex: 2 entries, 0 to 1
    Series name: None
    Non-Null Count  Dtype
    --------------  -----
    2 non-null      int64
    dtypes: int64(1)
    memory usage: z bytes
    )r
   r   r   r5   floatr8   r6   r7   )r"   r   r<   memory_bytesr=   r$   r$   r%   test_info_memoryR   s   rE   c                  C   sZ   t tjdd} d}tjt|d | jdd W d    d S 1 s&w   Y  d S )Nr   e   zIArgument `max_cols` can only be passed in DataFrame.info, not Series.info)matchr@   )max_cols)	r
   r   r   r   standard_normalpytestraises
ValueErrorr   )r"   msgr$   r$   r%   test_info_wideg   s
   "rN   c                  C   sp   g d} d}| D ]-}t tjdjd|d|}t }|j|d | }|dd| }||v s5J qd S )N)int64float64zdatetime64[ns]ztimedelta64[ns]
complex128objectboolr   r   )r   r   r   z non-null     )	r
   r   r   r   r   r   r   r   r5   )dtypesr    r   r"   r   resr0   r$   r$   r%   test_info_shows_dtypesn   s   	 rV   z'on PyPy deep=True doesn't change result)reasonc                  C   s\   t ddgidgd} | jddd| jddksJ t ddgi}|jdd| ks,J d S Nr'   r@   foor)   T)r*   deeprZ   r
   r8   s_with_object_indexs_objectr$   r$   r%   $test_info_memory_usage_deep_not_pypy      
r`   z(on PyPy deep=True does not change resultc                  C   s\   t ddgidgd} | jddd| jddksJ t ddgi}|jdd| ks,J d S rX   r\   r]   r$   r$   r%    test_info_memory_usage_deep_pypy   ra   rb   zindex, plus)r@   r      ABCstrrB   rc   rY   barc                 C   sJ   t d| d}t }|j|d |rd| v sJ d S d| vs#J d S )Nr@   r)   r   r2   )r
   r   r   r5   )r*   plusseriesr   r$   r$   r%    test_info_memory_usage_qualified   s   ri   c                  C   s   d} t t}tjtttd| dgddgd}ttj	d
| | |d}|d}|jj|jjks5J |jd	d
|jd	d
 ksEJ |jd	d
 |jd	d
 }|dk sYJ d S )Nd   20160101)periodsiddate)namesr   r)   Tr[   i  )r4   r   r	   from_productr   r   r
   r   r   r   rI   unstackvaluesnbytesr8   sum)NMr*   r"   	unstackeddiffr$   r$   r%   (test_info_memory_usage_bug_on_multiindex   s   
 ry   )$ior   stringr   r6   numpyr   rJ   pandas._configr   pandas.compatr   r   pandasr   r   r	   r
   r   r&   r-   markparametrizer?   rE   rN   rV   xfailr`   rb   r   rR   rp   r3   ri   ry   r$   r$   r$   r%   <module>   s@    	
"







