
    m*i                        S r SSKJr  SSKrSSKJr  SSKrSSKJr  SSK	J
s  Jr  SSKrSSKJr  \R$                  R&                  \R$                  R(                  \R$                  R+                  S5      /rS rS rS	 rS
 rS rS rS rS rS rS r \R$                  RC                  S\\RD                  4\\RF                  4\S 4\RH                  " \\" \RJ                  SS9\RL                  " S5      S9\RH                  " \\" \RJ                  SS9\RL                  " S5      \RL                  " S5      \RN                  \R$                  RQ                  \" 5       SS9/S9\\RR                  4\ \RT                  4\\RD                  4\\RF                  4/	5      \R$                  RC                  SSSS0SSS./5      S 5       5       r+\R$                  RC                  S SS/5      S! 5       r,g)"z9
Tests for the pandas custom headers in http(s) requests
    )partialN)BytesIO)using_string_dtypez=ignore:Passing a BlockManager to DataFrame:DeprecationWarningc                     [        5        n[        R                  " USS9 nUR                  U 5        S S S 5        UR	                  5       sS S S 5        $ ! , (       d  f       N'= f! , (       d  f       g = f)Nw)fileobjmode)r   gzipGzipFilewritegetvalue)response_bytesbiozippers      a/var/www/html/land-doc-ocr/venv/lib/python3.13/site-packages/pandas/tests/io/test_http_headers.py
gzip_bytesr      sI    	c]]3S1VLL( 2||~ 
11 
s!   A%AA%
A"	A%%
A3c                 >    U R                  SS9R                  S5      $ NF)indexutf-8)to_csvencodedfs    r   csv_responderr   !   s    9959!((11    c                 *    [        [        U 5      5      $ N)r   r   r   s    r   gz_csv_responderr   %   s    mB'((r   c                 @    U R                  5       R                  S5      $ )Nr   )to_jsonr   r   s    r   json_responderr"   )   s    ::<w''r   c                 *    [        [        U 5      5      $ r   )r   r"   r   s    r   gz_json_responderr$   -   s    nR())r   c                 >    U R                  SS9R                  S5      $ r   )to_htmlr   r   s    r   html_responderr'   1   s    ::E:"))'22r   c                 "    U R                  SSS9$ )NFpyarrow)r   engine)
to_parquetr   s    r   parquetpyarrow_reponderr,   5   s    ==uY=77r   c                     SS K nU R                  SSSS S9  UR                  SS5       nUR                  5       sS S S 5        $ ! , (       d  f       g = f)Nr   z'memory://fastparquet_user_agent.parquetFfastparquet)r   r*   compressionrb)fsspecr+   openread)r   r1   fs      r   parquetfastparquet_responderr5   9   sM     MM1	   
>	Evvx 
F	E	Es   A
Ac                     [        5        nU R                  U5        UR                  5       sS S S 5        $ ! , (       d  f       g = fr   )r   	to_pickler   r   r   s     r   pickle_respnderr9   L   s(    	c
S||~ 
s	   !6
Ac                     [        5        nU R                  USS9  UR                  5       sS S S 5        $ ! , (       d  f       g = f)NF)write_index)r   to_statar   r8   s     r   stata_responderr=   R   s,    	c
CU+||~ 
s	    5
Azresponder, read_methodc                  4    [         R                  " U 0 UD6S   $ )Nr   )pd	read_html)argskwargss     r   <lambda>rC   _   s    BLL$$A&$A!$Dr   r)   )r*   )marksr.   r1   zTODO(infer_string)reasonstorage_options
User-AgentfoobarrG   Authc                    [         R                  " SS/05      n/ SQnSU R                  ;   a  SS0nUc  UnOX6-  nOS n[        U5      R	                  U(       a  UR                  5       O/ 5      nUR                  U " U5      US9  U" UR                  US9n[        R                  " X5        [        UR                  S	   R                  5      n	U H.  n
U	R                  U
5      nU(       d  M  X;   d  M$  XU
   :X  a  M.   e   U	(       a   eg )
Nab)zAccept-EncodingHost
ConnectionrG   gzzContent-Encodingr
   )contentheaders)rF   r   )r?   	DataFrame__name__setunionkeysserve_contenturltmassert_frame_equaldictrequestsrS   pop)	responderread_method
httpserverrF   expecteddefault_headersextraexpected_headersresultrequest_headersheaderexps               r   test_request_headersrk   X   s	   P ||S3%L)HMOy!!!#V,"#O$O?+11"1r Yx%8%HIF&+:..q199:O"!!&)?v8&1111 #
 r   r*   c                     SSS.n[         R                  " U 5        [        R                  " SS/05      nSn[         R                  " [
        US9   UR                  SXS	9  S S S 5        g ! , (       d  f       g = f)
Ncustomother_customrJ   column_namecolumn_valuezxstorage_options passed with file object or non-fsspec file path|storage_options passed with buffer, or non-supported URL)matchz/tmp/junk.parquet)rF   r*   )pytestimportorskipr?   rT   raises
ValueErrorr+   )r*   rS   true_dfmsgs       r   ,test_to_parquet_to_disk_with_storage_optionsrx      sr     G
 llMN+;<=G	C  
z	-.W 
.	-	-s   A**
A8)-__doc__	functoolsr   r
   ior   rr   pandas._configr   pandas.util._test_decoratorsutil_test_decoratorstdpandasr?   pandas._testing_testingr[   mark
single_cpunetworkfilterwarnings
pytestmarkr   r   r   r"   r$   r'   r,   r5   r9   r=   parametrizeread_csv	read_jsonparamread_parquet
skip_if_no&skip_array_manager_not_yet_implementedxfailread_pickle
read_statark   rx    r   r   <module>r      s       - ) )   KK
KK
KKG
2)(*38& 	$	&D	
 	#BOOI6--	*	

 	(BOOM: m,h'99!!"4"6?R!S		
	
 
"..)	"--(	2;;'	BLL)5> 	ue,?N6 XXr   