o
    ŀg                     @   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   X/var/www/html/myenv/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 )N	test_name)name)
r   r   r   sheetsr   tableTablebookspreadsheet
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-valuer0   )r   floatr*   1)g      ?r2   r*   z1.5i  
   r   z
date-valuez2010-10-10T10:10:10z
2010-10-10)	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)hasattrr;   ).0xtable_cell_namer   r   
<listcomp>b   s    
z(test_cell_value_type.<locals>.<listcomp>z
value-type)odf.namespacesr6   	odf.tabler7   r8   r;   r   r   pd	DataFrameto_excel	ExcelFile_readerget_sheet_by_indexgetElementsByType
childNodes
attributesget)r	   r*   r+   r,   r-   r6   r7   r8   r   wbsheet
sheet_rowssheet_cellscellr   r?   r   test_cell_value_typeA   s$   

"rS   )r   r   r   r   pandas.compatr   pandasrD   pandas._testing_testingr   pandas.io.excelr   importorskipr   mark
single_cpu
pytestmarkfixturer	   r   parametrizer   r)   rS   r   r   r   r   <module>   s>    



