o
    թZh                     @   s   d dl mZm Z  d dlZd dlZd dlmZ d dlZd dlm	Z
 d dlmZ edZe r2ejjZejdd Zdd	 Zejd
dddigdd Zdd Zejjg ddddde dddddddddfeddddddfgddd ZdS )    )datedatetimeN)is_platform_windows)ExcelWriterodfc                   C   s   dS )Nz.ods r   r   r   [/var/www/html/lang_env/lib/python3.10/site-packages/pandas/tests/io/excel/test_odswriter.pyext   s   r	   c              	   C   s   d}t | /}tjt|d t|ddd W d    n1 s!w   Y  W d    d S W d    d S 1 s9w   Y  d S )Nz&Append mode is not supported with odf!matchr   a)enginemode)tmensure_cleanpytestraises
ValueErrorr   )r	   msgfr   r   r   test_write_append_mode_raises   s   "r   engine_kwargskwarg   c              	   C   s   t | X}|d ur.td}tjt|d t|d|d W d    n1 s(w   Y  nt|d|d}W d    n1 s@w   Y  W d    d S W d    d S W d    d S 1 s`w   Y  d S )NzDOpenDocumentSpreadsheet() got an unexpected keyword argument 'kwarg'r
   r   )r   r   )r   r   reescaper   r   	TypeErrorr   )r	   r   r   error_r   r   r   test_engine_kwargs#   s(    "r   c              	   C   s   t | C}t|&}|ji ksJ tjjdd}|jj	| |jd|iks)J W d    n1 s3w   Y  W d    d S W d    d S 1 sKw   Y  d S )NZ	test_name)name)
r   r   r   Zsheetsr   tableTablebookZspreadsheetZ
addElement)r	   r   writerr!   r   r   r   test_book_and_sheets_consistent7   s   
"r%   )valuecell_value_typecell_value_attribute
cell_value)Tbooleanzboolean-valuetrue)test stringstringzstring-valuer,   )r   floatr&   1)g      ?r.   r&   z1.5i  
   r   z
date-valuez2010-10-10T10:10:10z
2010-10-10)Z	argvaluesc              	      s  ddl m} ddlm}m} | j t| f}t	|ggj
|ddd t|;}	|	jd}
|
|} fdd|d jD }|d }|j|df|ksRJ |j||f|ks^J W d    n1 shw   Y  W d    d S W d    d S 1 sw   Y  d S )	Nr   )OFFICENS)	TableCellTableRowF)headerindexc                    s$   g | ]}t |d r|j kr|qS )qname)hasattrr6   ).0xZtable_cell_namer   r   
<listcomp>b   s    
z(test_cell_value_type.<locals>.<listcomp>z
value-type)Zodf.namespacesr1   Z	odf.tabler2   r3   r6   r   r   pdZ	DataFrameZto_excelZ	ExcelFile_readerZget_sheet_by_indexZgetElementsByTypeZ
childNodes
attributesget)r	   r&   r'   r(   r)   r1   r2   r3   r   wbZsheetZ
sheet_rowsZsheet_cellscellr   r:   r   test_cell_value_typeA   s$   

"rB   )r   r   r   r   Zpandas.compatr   Zpandasr<   Zpandas._testingZ_testingr   Zpandas.io.excelr   Zimportorskipr   markZ
single_cpuZ
pytestmarkZfixturer	   r   Zparametrizer   r%   rB   r   r   r   r   <module>   s>    



