
    OwgQ                    l   d Z 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Zddl	Z	ddl
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ZddlZddlZddlZddlmZmZ dd	lmZ dd
lmZ ddlmc m Z! ddl"Z#ddl"m$Z$m%Z%m&Z&m'Z' ddl(m)Z* ddl+m,Z, ddl-m	c m.Z/ ddl0m1Z1m2Z2 d Z3ejh                  jk                  ddd e6d       e7d       ejp                  d       edg d       e7d      js                  dd       e7d      js                  dd      ddd    ejt                  d      jw                  dd       ejt                  d      jw                  dd       ejt                  d      jw                  dd      dddddf   g      d        Z<d Z=d Z>d Z?dUd Z@ejh                  jk                  d! ej                  e>d"#       ej                  e#j                  d$#       ej                   ej                  e#j                  ej                  %      d&#       ej                   ej                  e#j                  d'%      d(#       ej                   ej                  e#j                  d)%      d*#      g      ejh                  jk                  d+e#j                  e>g      ejh                  jk                  d, e@ e,                   d-                      ZDd. ZEd/ ZFej                  d0        ZH G d1 d2      ZI G d3 d4      ZJejh                  jk                  d5d6gd7 e%g d8      fd9e#j                  j                  g d8g d:g      fg      d;        ZMd< ZNejh                  jk                  d=g d>      d?        ZOd@ ZP G dA dBej                        ZRdC ZSdD ZTdE ZUdF ZVejh                  jk                  dGdHdIdG ej
                  dJdKdK      dLg      dM        ZWdN ZXdO ZYe!j                  dP        Z[ejh                  jk                  dQej                  ej                  g      dR        Z]dS Z^dT Z_y)Va<  
manage legacy pickle tests

How to add pickle tests:

1. Install pandas version intended to output the pickle.

2. Execute "generate_legacy_storage_files.py" to create the pickle.
$ python generate_legacy_storage_files.py <output_dir> pickle

3. Move the created pickle to "data/legacy_pickle/<version>" directory.
    )annotations)arrayN)partial)Path)Any)get_lzma_fileis_platform_little_endian)import_optional_dependency)flatten_buffer)	DataFrameIndexSeriesperiod_range)create_pickle_data)DayMonthEndc                b   t        |t              rt        j                  ||        y |j	                  d      rt        j
                  | |       y |dk(  r/|t        j                  u r| t        j                  u s
J | |k(  sJ y y t        t        d| dt        j                        } || |       y )Nsp_	timestampassert__equal)

isinstancer   tmassert_index_equal
startswithassert_equalpdNaTgetattrassert_almost_equal)resultexpectedtyp
comparators       R/var/www/horilla/myenv/lib/python3.12/site-packages/pandas/tests/io/test_pickle.pycompare_elementr&   >   s    (E"
h/
~~e
)		rvvRVV###X%%% $ R73%v!68N8NO
68$    datas   123s   123456I         B)r-   r,   r,      )r-      C)orderFc                P   t        |       }t        |       j                  d      }||k(  sJ t        | t        t
        f      r|| u sJ y t        |t              rM|j                  dk(  sJ |j                  dk(  sJ |j                  sJ |j                  |j                  fk(  sJ y y )NAr+   r.   )r   
memoryviewtobytesr   bytes	bytearrayndimformat
contiguousshapenbytes)r(   r!   r"   s      r%   test_flatten_bufferr?   T   s    " D!F$'',HX$	*+~~	FJ	'{{a}}###    ||////	 
(r'   c           	        t               st        j                  d       t        t              j
                  j                  d      D ]  } | |      }t        j                  |      }|j                         D ]x  \  }}|j                         D ]^  \  }}||   |   }|dk(  r_|dk(  rYt        j                  ||       |j                  j                  |j                  j                  k(  sJ |j                  j                  j                  rJ t        j                  |dkD  |dkD         |j                  j                  }|t        d      z   t        d      k(  sJ |t        j                   d      z   }	t#        |	t        j                         sJ |	t        j                   dd	      k(  sJ |t        j                   d
      z   }	t#        |	t        j                         sJ |	t        j                   dd      k(  rrJ |dk(  r|dk(  rt        j$                  ||       t#        |j                  t&              sJ |j                  t'               k(  sJ |j(                  dk(  sJ t        j$                  |j+                  d      |j+                  d             |dk(  r|dv rt        j                  ||       1|dk(  r|dv rt        j,                  ||       Rt/        |||       a {  y )Nz"known failure on non-little endianzdata/legacy_pickle/*/*.p*kl*seriestsr   r+   r,   )hours)daysrC   )nanoseconds)rD   rE   indexperiodM)dt_tzcatframe)dt_mixed_tzs
cat_onecolcat_and_float)r	   pytestskipr   __file__parentglobr   read_pickleitemsr   assert_series_equalrF   freq	normalizer   	Timedeltar   r   r   freqstrshiftassert_frame_equalr&   )
datapathlegacy_pickler(   r#   dvdtr!   r"   rW   ress
             r%   test_picklesrb   q   sw   $&89 h..334RS *; /~~m,zz| %	;GC hhj $;
F9R=(?rTz**68<!<<,,0C0CCCC%||00::::**6A:x!|D "<<,,D#a&=CF222A!66C%c2<<888",,AQ"????!!<<C%c2<<888",,A1"EEEEG^h))&(;%fkk8<<<!;;(*444!>>S000))&,,q/8>>!;LMH_/?)?**68<G^ / )
 ))&(;#FHc:I$;%	;*;r'   c                v    t        |d      5 }t        j                  | |d       d d d        y # 1 sw Y   y xY wNwbprotocolopenpickledumpobjpathfhs      r%   python_picklerrq      s3    	dD	 *RCb)* * *   /8c                    t        | d      5 }|j                  d       t        j                  |      cd d d        S # 1 sw Y   y xY w)Nrbr   )rj   seekrk   load)ro   rp   s     r%   python_unpicklerrw      s9    	dD	 R

{{2  s	   &=Ac                    | j                         D cg c]  \  }}|j                         D ]  }||f   c}}}S c c}}}w )zFlatten create_pickle_data)rU   values)r(   r#   examplesexamples       r%   flattenr|      sS     "ZZ\ C(  
g  s   #=pickle_writerpython)idpandas_proto_defaultrg   pandas_proto_highestr0   pandas_proto_4   pandas_proto_5writerztyp, expectedc                   t        j                         5 } |||       t        j                  |      }t	        |||        t        |      }t	        |||        t        |d      5 } |||       |j                  d       d d d        t        |d      5 }t        j                  |      }|j                  d       d d d        t	        |||        d d d        y # 1 sw Y   [xY w# 1 sw Y   +xY w# 1 sw Y   y xY w)Nre   moder   rt   )r   ensure_cleanr   rT   r&   rw   rj   ru   )r#   r"   r}   r   ro   r!   handles          r%   test_round_trip_currentr      s    & 
	 /dh% %#.!$'#. $T" 	f8T"KKN	 $T" 	f^^F+FKKN	 	#.%/ /	 		 	/ /s<   AC3&CC3'C'=C3C$	 C3'C0	,C33C<c                 ~   t        dt        j                  d      j                  d      z  t	        t        d      t              t	        t        d      D  cg c]  } d|  	 c} t                    }t        j                  |j                  t        j                        }t        j                  ||       y c c} w 	N皙?x      r0   ABCDdtyper   i-columnsrF   )r   nparangereshaper   listobjectranger   round_trip_pathlib	to_pickler   rT   r\   idfr!   s      r%   test_pickle_path_pathlibr      s    	biin$$W--d6l&1uRy1!r!X1@
B
 ""2<<@F"f% 2   B:c                 ~   t        dt        j                  d      j                  d      z  t	        t        d      t              t	        t        d      D  cg c]  } d|  	 c} t                    }t        j                  |j                  t        j                        }t        j                  ||       y c c} w r   )r   r   r   r   r   r   r   r   r   round_trip_localpathr   r   rT   r\   r   s      r%   test_pickle_path_localpathr      s    	biin$$W--d6l&1uRy1!r!X1@
B
 $$R\\2>>BF"f% 2r   c                 2    dt        j                          dS )N__z	__.pickle)uuiduuid4 r'   r%   get_random_pathr      s    

~Y''r'   c                      e Zd Zej                  Zd Zd Zej                  j                  dg d      d        Zd Zd Zd Zy	)
TestCompressionc                   |t        j                  ||       y |dk(  rt        j                  |d      }nE|dk(  rt	        j
                  |d      }n(|dk(  r_t        j                  |dt        j                        5 }|j                  |t        j                  j                  |             d d d        n|dk(  rwt        |d      5 }t        j                  |d      5 }|j                  |t        j                  j                  |            }|j                  ||       d d d        d d d        nH|d	k(  r t!               |d      }n1|d
k(  rt#        d      j                  |d      }nd| }t%        |      |dvr@t        |d      5 }5  |j                  |j'                                d d d        d d d        y y # 1 sw Y   NxY w# 1 sw Y   xY w# 1 sw Y   fxY w# 1 sw Y   7xY w# 1 sw Y   y xY w)Ngzipwbz2zipcompressiontarrt   r   xzzstd	zstandardre   zUnrecognized compression type: )r   r   )shutilcopyfiler   rj   r   BZ2FilezipfileZipFileZIP_DEFLATEDwriteosro   basenametarfile
gettarinfoaddfiler   r
   
ValueErrorread)	selfsrc_path	dest_pathr   frp   r   tarinfomsgs	            r%   compress_filezTestCompression.compress_file   s   OOHi0& 		)S)AE!Is+AE!CW=Q=QR >VW"''"2"28"<=> >E!h% -\\)#6 -#!nnXrww7G7G7QRGKK,-- - D 	3/AF"*;7<<YMA3K=ACS/!n,h% ' 'GGBGGI&'' ' -> >- -- -' '' 'sU   ?0G	G!AG#GG1 G%/G1G
G	GG"%G.	*G11G:c                   |}|dz   }|dz   }t        j                  |      5 }t        j                  |      5 }t        dt        j                  d      j                  d      z  t        t        d      t              t        t        d      D cg c]  }d	| 	 c}t              
      }	|	j                  ||       t        j                  ||      5 }
t        |d      5 }|j                  |
j                                d d d        d d d        t        j                   |d       }t        j"                  |	|       d d d        d d d        y c c}w # 1 sw Y   TxY w# 1 sw Y   XxY w# 1 sw Y   /xY w# 1 sw Y   y xY w)N.compressed.rawr   r   r   r   r   r   r   r   r   re   )r   r   r   r   r   r   r   r   r   r   r   decompress_filerj   r   r   r   rT   r\   )r   r   r   basepath1path2p1p2r   r   r   rp   df2s                r%   test_write_explicitz#TestCompression.test_write_explicit  sJ   }$v__U# 	+r2??5+A 	+Rbiin,,W55d6l&9uRy9!r!X9HB LLL5 ##BK@ 'A"d^ 'rHHQVVX&''
 ..6C!!"c*%	+ 	+ 	+ :' '' '	+ 	+ 	+ 	+se   E;AE/E<E/E#$ E	E#5E/E;E/E E##E,(E//E8	4E;;Fr   ) Nonebad7zc                   t        j                  t        d      5  t        j                  |      5 }t        dt        j                  d      j                  d      z  t        t        d      t              t        t        d      D cg c]  }d	| 	 c}t              
      }|j                  ||       d d d        d d d        y c c}w # 1 sw Y   xY w# 1 sw Y   y xY w)NzUnrecognized compression typematchr   r   r   r   r   r   r   r   r   )rO   raisesr   r   r   r   r   r   r   r   r   r   r   r   )r   r   r   ro   r   r   s         r%   test_write_explicit_badz'TestCompression.test_write_explicit_bad7  s    ]]:-LM 	<1 <T"))C.0099!$v,f=59 =a2aS =VL
 T{;<	< 	<
 !>	< <	< 	<s5   CAC	C%C:CCC	CC%c                \   |}||z   }|dz   }| j                   j                  |j                               }t        j                  |      5 }t        j                  |      5 }t        dt        j                  d      j                  d      z  t        t        d      t              t        t        d      D 	cg c]  }	d|	 	 c}	t              	      }
|
j                  |       t        j                  ||
      5 }t        |d      5 }|j!                  |j#                                d d d        d d d        t%        j&                  |d 
      }t        j(                  |
|       d d d        d d d        y c c}	w # 1 sw Y   TxY w# 1 sw Y   XxY w# 1 sw Y   /xY w# 1 sw Y   y xY w)Nr   r   r   r   r   r   r   r   r   r   re   )_extension_to_compressiongetlowerr   r   r   r   r   r   r   r   r   r   r   r   rj   r   r   r   rT   r\   )r   compression_extr   r   r   r   r   r   r   r   r   r   rp   r   s                 r%   test_write_inferz TestCompression.test_write_inferB  se   &v44889N9N9PQ__U# 	+r2??5+A 	+Rbiin,,W55d6l&9uRy9!r!X9HB LL ##BK@ 'A"d^ 'rHHQVVX&''
 ..6C!!"c*%	+ 	+ 	+ :' '' '	+ 	+ 	+ 	+sg   F"!AF8E9:F>F
 E>	+F
35F(F"9F>FF

FFF	F""F+c                ^   |}|dz   }|dz   }t        j                  |      5 }t        j                  |      5 }t        dt        j                  d      j                  d      z  t        t        d      t              t        t        d      D cg c]  }d	| 	 c}t              
      }	|	j                  |d        | j                  |||       t        j                  ||      }
t        j                  |	|
       d d d        d d d        y c c}w # 1 sw Y   xY w# 1 sw Y   y xY w)Nr   r   r   r   r   r   r   r   r   r   r   )r   r   r   r   r   r   r   r   r   r   r   r   r   rT   r\   )r   r   r   r   r   r   r   r   r   r   r   s              r%   test_read_explicitz"TestCompression.test_read_explicit\  s   v}$__U# 	+r2??5+A 	+Rbiin,,W55d6l&9uRy9!r!X9HB LLL. r2;? ..=C!!"c*	+ 	+ 	+ :		+ 	+ 	+ 	+s6   D#ADDA&DD#DD 	D##D,c                   |}|dz   }||z   }| j                   j                  |j                               }t        j                  |      5 }t        j                  |      5 }t        dt        j                  d      j                  d      z  t        t        d      t              t        t        d      D 	cg c]  }	d|	 	 c}	t              	      }
|
j                  |d 
       | j                  |||
       t        j                   |      }t        j"                  |
|       d d d        d d d        y c c}	w # 1 sw Y   xY w# 1 sw Y   y xY w)Nr   r   r   r   r   r   r   r   r   r   )r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   rT   r\   )r   r   r   r   r   r   r   r   r   r   r   r   s               r%   test_read_inferzTestCompression.test_read_inferr  s#   v&44889N9N9PQ__U# 	+r2??5+A 	+Rbiin,,W55d6l&9uRy9!r!X9HB LLL. r2;? ..$C!!"c*	+ 	+ 	+ :		+ 	+ 	+ 	+s8   E
!AD>8D9A$D>(E
9D>>E	E

EN)__name__
__module____qualname__icomextension_to_compressionr   r   r   rO   markparametrizer   r   r   r   r   r'   r%   r   r      sN     $ = ='<+2 [[],EF< G<+4+,+r'   r   c                  T    e Zd Zej                  j                  dg d      d        Zy)TestProtocolrh   )rf   r   r+   r,   c                   t        j                  |      5 }t        dt        j                  d      j                  d      z  t        t        d      t              t        t        d      D cg c]  }d| 	 c}t                    }|j                  ||	       t        j                  |      }t        j                  ||       d d d        y c c}w # 1 sw Y   y xY w)
Nr   r   r   r   r   r   r   r   rg   )r   r   r   r   r   r   r   r   r   r   r   r   rT   r\   )r   rh   r   ro   r   r   r   s          r%   	test_readzTestProtocol.test_read  s    ___- 	+biin,,W55d6l&9uRy9!r!X9HB
 LLL1..&C!!"c*	+ 	+ :		+ 	+s   AC-C9ACCC N)r   r   r   rO   r   r   r   r   r'   r%   r   r     s%    [[Z7	+ 8	+r'   r   pickle_fileexcolsztest_py27.pkl)abcztest_mi_py27.pkl)r5   r.   r1   c                     | ddd|      }t        j                  |      }t        j                  |j                  |       y )Nior(   rk   )r   rT   r   r   r   )r]   r   r   ro   r   s        r%   test_unicode_decode_errorr     s8     D&(K8D		B "**f-r'   c                 D   t        j                         5 } t        dt        j                  d      j                  d      z  t        t        d      t              t        t        d      D cg c]  }d| 	 c}t                    }t        | d	      5 }|j                  |       d d d        t        | d
      5 }t        j                  |      }d d d        t        j                  |       d d d        y c c}w # 1 sw Y   WxY w# 1 sw Y   9xY w# 1 sw Y   y xY w)Nr   r   r   r   r   r   r   r   re   rt   )r   r   r   r   r   r   r   r   r   r   rj   r   r   rT   r\   )ro   r   r   rp   r!   s        r%   test_pickle_buffer_roundtripr    s    		 
*d"))C.((11$v,f5595a2aS5VD

 $ 	LL	$ 	(^^B'F	(
b&)
* 
* 6	 		( 	(
* 
*sN   AD,C98DC>(D<D
D9D>D	D
D	DDmockurl)zhttp://url.comzftp://test.comzhttp://gzip.comc                   d } G d d      t        j                         5 fd}t        dt        j                  d      j                  d      z  t        t        d      t        	      t        t        d
      D cg c]  }d| 	 c}t        	            } ||       | j                  d|       t        j                  |      }t        j                  ||       d d d        y c c}w # 1 sw Y   y xY w)Nc                v    t        |d      5 }t        j                  | |d       d d d        y # 1 sw Y   y xY wrd   ri   rm   s      r%   rq   z3test_pickle_generalurl_read.<locals>.python_pickler  s3    $ 	.KKR"-	. 	. 	.rr   c                  ,    e Zd ZddZd Zd Zd Zd Zy)5test_pickle_generalurl_read.<locals>.MockReadResponsec                T    t        |d      | _        d|v r
ddi| _        y ddi| _        y )Nrt   r   zContent-Encodingr   )rj   fileheaders)r   ro   s     r%   __init__z>test_pickle_generalurl_read.<locals>.MockReadResponse.__init__  s/    T4(DI~ 2F; 2B7r'   c                    | S Nr   r   s    r%   	__enter__z?test_pickle_generalurl_read.<locals>.MockReadResponse.__enter__  s    Kr'   c                $    | j                          y r  )close)r   argss     r%   __exit__z>test_pickle_generalurl_read.<locals>.MockReadResponse.__exit__  s    JJLr'   c                6    | j                   j                         S r  )r	  r   r  s    r%   r   z:test_pickle_generalurl_read.<locals>.MockReadResponse.read  s    99>>##r'   c                6    | j                   j                         S r  )r	  r  r  s    r%   r  z;test_pickle_generalurl_read.<locals>.MockReadResponse.close  s    99??$$r'   Nreturnr   )r   r   r   r  r  r  r   r  r   r'   r%   MockReadResponser    s    	8			$	%r'   r  c                            S r  r   )r  kwargsr  ro   s     r%   mock_urlopen_readz6test_pickle_generalurl_read.<locals>.mock_urlopen_read  s    #D))r'   r   r   r   r   r   r   r   r   zurllib.request.urlopen)r   r   r   r   r   r   r   r   r   r   setattrr   rT   r\   )	monkeypatchr  rq   r  r   r   r!   r  ro   s	          @@r%   test_pickle_generalurl_readr    s    .% %( 
	 *d	* "))C.((11$v,f5595a2aS5VD

 	r4 46GH(
b&)* * 6* *s   AC3C.AC3.C33C<c                    t        j                  d       t        j                         5  d} t	        dt        j                  d      j                  d      z  t        t        d      t              t        t        d      D cg c]  }d	| 	 c}t              
      }|j                  |        t        j                  |       }t        j                  ||       d d d        y c c}w # 1 sw Y   y xY w)Nfsspeczmemory://mockfiler   r   r   r   r   r   r   r   )rO   importorskipr   r   r   r   r   r   r   r   r   r   r   r   rT   r\   )r  r   r   r!   s       r%   test_pickle_fsspec_roundtripr"    s    
!		 	*%"))C.((11$v,f5595a2aS5VD

 	W(
b&)	* 	*
 6	* 	*s   AC+C&AC+&C++C4c                      e Zd ZddZy)MyTzc                     y r  r   r  s    r%   r  zMyTz.__init__  s    r'   Nr  )r   r   r   r  r   r'   r%   r$  r$    s    r'   r$  c                     t        t              t               f} t        j                  |       }t        j
                  |d   | d          t        |d   t              sJ y )Nr   r   r+   )r   r   r$  r   round_trip_picklerV   r   )r"   r!   s     r%   test_read_pickle_with_subclassr(    sO    F#TV+H!!(+F6!9hqk2fQi&&&r'   c                   t        dt        j                  d      j                  d      z  t	        t        d      t              t	        t        d      D cg c]  }d| 	 c}t                    }t        j                         5 }|j                  || 	       t        |      j                         }d
d
d
       t        j                         }|j                  || 	       |j                  d       |j!                         k(  s| dv sJ t#        j$                  || 	      }|j                  d       t        j&                  ||       y
c c}w # 1 sw Y   xY w)ze
    Read/write from binary file-objects w/wo compression.

    GH 26237, GH 29054, and GH 29570
    r   r   r   r   r   r   r   r   r   Nr   )r   r   r   )r   r   r   r   r   r   r   r   r   r   r   r   
read_bytesr   BytesIOru   getvaluer   rT   r\   )r   r   r   ro   	referencebufferread_dfs          r%   %test_pickle_binary_object_compressionr0    s    
biin$$W--d6l&1uRy1!r!X1@
B 
	 ,d
T{3J))+	,
 ZZ\FLL[L1
KKN ??	)[<R-RRR nnV=G
KKN"g&' 2, ,s   E	-EEc                z    | }|}d } ||        ||j                           ||        ||j                          y )Nc                Z    t        j                  |       }t        j                  | |       y r  )r   r'  r\   )rK   	unpickleds     r%   _test_roundtripzDtest_pickle_dataframe_with_multilevel_index.<locals>._test_roundtrip7  s"    ((/	
eY/r'   )T)/multiindex_year_month_day_dataframe_random_data multiindex_dataframe_random_dataymdrK   r4  s        r%   +test_pickle_dataframe_with_multilevel_indexr9  0  s=     :C,E0 EEGGCCEEr'   c                    t        ddd      } t        t        j                  j	                  d      j                  t        |             |       }t        j                  |      }|j                  j                  dk(  sJ y )Nz1/1/2011z1/1/2012rH   )rW   r,   )r   r   r   randomdefault_rngstandard_normallenr   r'  rF   rZ   )prngrB   new_tss      r%   "test_pickle_timeseries_periodindexrA  A  sb    
JS9D			%%a(88TCT	JB!!"%F<<3&&&r'   namei	  g     H@i     )r+   r,   c                    t        j                  t        t        j                  dt        j
                        |             }|j                  | k(  sJ y )N
   r   )rB  )r   r'  r   r   r   float64rB  )rB  r3  s     r%   test_pickle_preserve_namerG  I  s=     $$VBIIb

,KRV%WXI>>T!!!r'   c                Z    t        j                  |       }t        j                  ||        y r  r   r'  rV   )datetime_seriesunp_tss     r%   test_pickle_datetimesrL  Q  s"    !!/2F6?3r'   c                Z    t        j                  |       }t        j                  ||        y r  rI  )string_series
unp_seriess     r%   test_pickle_stringsrP  V  s"    %%m4J:}5r'   c                 d   t        t        d            j                  d      j                  dg   } t	        j
                  |       }|j                  j                  d   j                  dk(  sJ |j                  j                  d   j                  dk(  sJ t	        j                  |dg   |        y )Nabccategoryr   r+   )r+   T)r   r   astypeilocr   r'  _mgrblocksr:   r=   rV   )serra   s     r%    test_pickle_preserves_block_ndimrY  [  s     e

$
$Z
0
5
5qc
:C


s
#C88??1""a'''88??1##t+++ 3v;,r'   rh   c                    t        t        d            }t        j                  t	        |j
                  | |      t	        t        j                  |            }t        j                  ||       y )Ni )rh   r   r   )	r   r   r   r   r   r   r   rT   r\   )rh   r   r   r!   s       r%   %test_pickle_big_dataframe_compressionr[  h  sR     
5=	!B""x[IK8F "f%r'   c                     | t        t              j                  dddd      }t        |d      5 }t	        j
                  |      }d d d        t        g g       }t        j                  |       y # 1 sw Y   -xY w)Nr(   r^   z1.2.4zempty_frame_v1_2_4-GH#42345.pklrt   )rF   r   )	r   rQ   rR   rj   rk   rv   r   r   r\   )r]   ro   fdr   r"   s        r%   #test_pickle_frame_v124_unpickle_130r^  s  ss    X)D 
dD	 R[[_ r2.H"h'	 s   A22A;c                     t        dg di      } d}t        j                  t        |      5  t	        j
                         }| j                  |d       d d d        y # 1 sw Y   y xY w)Nr   r*   zpStarting with pandas version 3.0 all arguments of to_pickle except for the argument 'path' will be keyword-only.r   infer)r   r   assert_produces_warningFutureWarningr   r+  r   )r   r   r.  s      r%    test_pickle_pos_args_deprecationrc    s[    	C#	$B	1  
	#	#M	= &
VW%& & &s   'AA&)r(   dictr  zlist[tuple[str, Any]])`__doc__
__future__r   r   r   datetime	functoolsr   r   r   r   pathlibr   rk   r   r   typingr   r   r   numpyr   rO   pandas.compatr   r	   pandas.compat._optionalr
   pandas.compat.compressorsr   pandas.util._test_decoratorsutil_test_decoratorstdpandasr   r   r   r   r   pandas._testing_testingr   -pandas.tests.io.generate_legacy_storage_filesr   pandas.io.commoncommonr   pandas.tseries.offsetsr   r   r&   r   r   r9   r6   PickleBuffercastr   r   r?   rb   rq   rw   r|   paramr   HIGHEST_PROTOCOLr   r   r   fixturer   r   r   
MultiIndexfrom_arraysr   r  r  r"  tzinfor$  r(  r0  r9  rA  rG  rL  rP  skip_array_manager_invalid_testrY  DEFAULT_PROTOCOLr[  r^  rc  r   r'   r%   <module>r     s+   #  
     	 	          ? 4 ) )    L  %, 
&6F#c99""3/9""3/!4		"fC0		"fC0		"fC0CaC8 
0! 
0/;d*
 ^1R\\&<=IbllV5L5LM%	
 	&Y&&r||a@EUVIbllQ7	
  BLL.#AB'2D2F*GH/ I C!$/,&& ( (J+ J+d+ + H	%01MM%%&HI	
	.	.*& F&*&*R*8?? 
''>"' 
S%!2!2!24R!@&I""
4
6
 ##	- $	- f&=&=v?V?V%WX& Y&( 	&r'   