zmc
2023-08-08 e792e9a60d958b93aef96050644f369feb25d61b
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
U
­ý°d»8ã @s¬ddlZddlmZddlZddlZddlZddlZddlm    Z    ddl
m Z ddl mZmZe d¡Zej ddg¡Zdd    „Zd
d „Zej d d dg¡dd„ƒZdd„Zej dddg¡dd„ƒZej dddgfddddgfg¡dd„ƒZej d d!d"d#d$gfd%d&d'gfd(d&d'd$gfg¡d)d*„ƒZej d+ddd,d-gd.d/gfdd&d0d-gd,d/gfd&dd0d,gd.d/gfd&d&d0d-gd.d,gfg¡d1d2„ƒZej d3d4d5d6g¡d7d8„ƒZd9d:„Zej d;d dg¡d<d=„ƒZej d>dej d?d&d"d@gej dAdBdCdDgej dEdFdGdHgdIœfd"d&d"d@gdBdCdDgdFdGdHgdJœfg¡ej dKdLdMdNg¡ej d;d ddg¡dOdP„ƒƒƒZ!dQdR„Z"ej d;d ddg¡dSdT„ƒZ#ej d;d ddg¡dUdV„ƒZ$dWdX„Z%dYdZ„Z&d[d\„Z'dS)]éN)ÚPath)Ú    DataFrame)Ú ExcelWriterÚ_OpenpyxlWriterÚopenpyxlÚextz.xlsxc Cs4ddlm}dddœdddddœdd    d
œd d d dœdœddidddœdœ}| d¡}|jd|d}|j|jjd}|j||||d}|jdd    d
}|jd d d}|j    d |d}    d}
|j
ddd} t   |¡} | d|ksÚt ‚| d|ksêt ‚| d|ksút ‚| d|    ks t ‚| d|
kst ‚| d| ks0t ‚dS)Nr)ÚstylesÚ00FF0000T©ÚcolorÚboldZthin)ÚtopÚrightÚbottomÚleftÚcenterr )Z
horizontalZverticalZsolidZ006666FFg333333Ó?)ZrgbZtint)Z patternTypeZfgColorZ format_codez0.00F)ÚlockedÚhidden)ÚfontÚbordersÚ    alignmentÚfillÚ number_formatÚ
protection)r r )ÚstylerÚborderrrrr)rrZColorZFontZSiderZ BORDER_THINZBorderZ    AlignmentZ PatternFillZ
ProtectionrÚ_convert_to_style_kwargsÚAssertionError) rrZhstyleZ
font_colorrZsiderrZ
fill_colorrrrÚkw©rúZd:\z\workplace\vscode\pyvenv\venv\Lib\site-packages\pandas/tests/io/excel/test_openpyxl.pyÚtest_to_excel_styleconverters0  ú    
 
r!c
Csþddlm}d}dddii}dddii}|ddd    |d
|ddd |d
g}dd d dœi}t |¡}|d}|ddddd|dg}    t |¡l}
t|
ƒ,} | j||d| j|    |d| j|} W5QRX| d} | d}| j|ksât    ‚|j|ksðt    ‚W5QRXdS)Nr)Ú    ExcelCellZ merge_styledrr r    Z0000FF00éé*)ÚcolÚrowÚvalrécZ000000FFTr
Úpandas)r%r&r'Z
mergestartZmergeendr©Ú
sheet_nameÚB1ÚA2)
Zpandas.io.formats.excelr"rrÚtmÚ ensure_cleanZ _write_cellsÚsheetsrr)rr"r+Zsty_b1Zsty_a2Z initial_cellsZ
sty_mergedZ
sty_kwargsZopenpyxl_sty_mergedZ merge_cellsÚpathÚwriterZwksZxcell_b1Zxcell_a2rrr Útest_write_cells_merge_styled7s8   þ
ÿÿ 
r3Ú    iso_datesTFc
CsXd|i}t |¡<}t|d|d"}|jj|ks4t‚tƒ |¡W5QRXW5QRXdS)Nr4r)ÚengineÚ engine_kwargs)r.r/rÚbookr4rrÚto_excel)rr4r6Úfr2rrr Útest_engine_kwargs_writeYs
 r:c Cs€t |¡l}tddgƒ |¡tjtt d¡d:t    |ddddid    }td
gƒj|d d W5QRXW5QRXW5QRXdS) NÚhelloÚworldzAload_workbook() got an unexpected keyword argument 'apple_banana'©ÚmatchrÚaZ apple_bananaÚfruit©r5Úmoder6ZgoodÚSheet2r*)
r.r/rr8ÚpytestÚraisesÚ    TypeErrorÚreÚescaper)rr9r2rrr Ú!test_engine_kwargs_append_invalidds  ÿþÿrIzdata_only, expected)Tr)Fú=1+1c
Csrt |¡^}tdgƒ |¡t|ddd|id.}|jddj|ksJt‚tƒj|dd    W5QRXW5QRXdS)
NrJrr?Ú    data_onlyrAZSheet1ÚB2rCr*)r.r/rr8rr0Úvaluer)rrKÚexpectedr9r2rrr Ú#test_engine_kwargs_append_data_onlyvs ÿrOz mode,expectedÚwÚbazr?ÚfooÚbarc
Csþtdgdgd}t |¡Ú}t ¡}d|jd_d|jdd_| d¡d|jdd_|     |¡t
|d|d    }|j |dd
d W5QRXt   t |¡¡L}d d „|jDƒ}||ks¼t‚t|ƒD] \}    }
|j|    dj|
ksÄt‚qÄW5QRXW5QRXdS)Nr#rQ©ÚcolumnsrRrÚA1rSr)r5rBF©r+ÚindexcSsg|]
}|j‘qSr)Útitle)Ú.0Úsheetrrr Ú
<listcomp>—sz*test_write_append_mode.<locals>.<listcomp>)rr.r/rZWorkbookZ
worksheetsrYrMÚ create_sheetÚsaverr8Ú
contextlibÚclosingÚ load_workbookrÚ    enumerate) rrBrNÚdfr9Úwbr2Zwb2ÚresultrXZ
cell_valuerrr Útest_write_append_mode…s  
 
 rfz#if_sheet_exists,num_sheets,expectedÚnewéÚappleÚbananaÚreplacer#ÚpearÚoverlayc
 
Cs
tdddgiƒ}tddgiƒ}t |¡Ø}|j|ddddt|dd    |d
}|j|ddd W5QRXt t |¡¡~}t    |j
ƒ|ksŒt ‚|j
d dksžt ‚t j |ddd }    t|    dƒ|ksÂt ‚t    |j
ƒdkròt j ||j
ddd }    t |    |¡W5QRXW5QRXdS)Nr@rirjrlrrRF©r5r+rXr?©r5rBÚif_sheet_existsrWr©r5rhr#)rr.r/r8rr_r`rraÚlenZ
sheetnamesrÚpdÚ
read_excelÚlistÚassert_frame_equal)
rrpZ
num_sheetsrNÚdf1Údf2r9r2rdrerrr Ú!test_if_sheet_exists_append_modesžs(
 ÿryz%startrow, startcol, greeting, goodbyeÚpoopr<ÚgoodbyeÚpeopler;c
Cs¬tddgddgdœƒ}tdgƒ}t |¡x}|j|ddd    d
t|dd d d  }|j|d    d    |d|ddW5QRXtj|ddd}    t||dœƒ}
t |    |
¡W5QRXdS)Nr;r<r{r|)Úgreetingr{rzrZpooFrnr?rmror#)rXÚheaderÚstartrowÚstartcolr+)r+r5)rr.r/r8rrsrtrv) rrr€r}r{rwrxr9r2rerNrrr Ú%test_append_overlay_startrow_startcol¼s,
 
 ÿú    rzif_sheet_exists,msg)Úinvalidzf'invalid' is not valid for if_sheet_exists. Valid options are 'error', 'new', 'replace' and 'overlay'.)ÚerrorúASheet 'foo' already exists and if_sheet_exists is set to 'error'.)Nr„c Cs‚tddgiƒ}t |¡`}tjtt |¡d@|j|dddt    |dd|d}|j|dd    W5QRXW5QRXW5QRXdS)
Nr@rlr=rRrrqr?ror*)
rr.r/rDrEÚ
ValueErrorrGrHr8r)rrpÚmsgrcr9r2rrr Útest_if_sheet_exists_raisesÝs ÿr‡c    Cszt |¡f}tdt ddd¡iƒ}tdt ddd¡iƒ}tj||gdd}|j dd„¡     ¡}|j
|d    d
W5QRXdS) NÚAr#é
ÚBé)ZaxiscSsd|dkrdnd›S)Nzcolor: rÚredZblackr)r'rrr Ú<lambda>óz4test_to_excel_with_openpyxl_engine.<locals>.<lambda>rrq) r.r/rÚnpZlinspacersÚconcatrZapplymapZ highlight_maxr8)rÚfilenamerwrxrcZstyledrrr Ú"test_to_excel_with_openpyxl_engineûs ÿr’Ú    read_onlyc    CsZ|dddd|ƒ}t tj||d¡}tj|dd}W5QRXt |¡}t ||¡dS)NÚioÚdataÚexcelZtest1©r“rrq)r_r`rrarsrtr.rv)Údatapathrr“r‘rdrerNrrr Útest_read_workbooks ÿ
r™zheader, expected_datarˆérŠéééÚCééé    ©ZTitlez
Unnamed: 1z
Unnamed: 2)rˆrŠržr‘Zdimension_missingZdimension_smallZdimension_largec
    Csv|ddd|›|›ƒ}|dkr.tj||d}n0t tj||d¡}tj|d|d}W5QRXt|ƒ}    t ||    ¡dS)Nr”r•r–)r~r—r)r5r~©    rsrtr_r`rrarr.rv)
r˜rr~Z expected_datar‘r“r1rerdrNrrr Útest_read_with_bad_dimensions ÿr¤c
Csžtƒ}t |¡„}|j|ddt|dddd}| |¡W5QRXt|ƒ ¡}| d¡}| d|d¡}| d|d¡}|dkrŒ|dkst‚W5QRXdS)    Nrrqr?rg)rBr5rpsdocProps/app.xmlr#éÿÿÿÿ)    rr.r/r8rrÚ
read_bytesÚfindr)rrcr9r2r•ÚfirstÚsecondÚthirdrrr Útest_append_mode_file7s  ÿ 
r«c    Csš|dddd|›ƒ}|dkr(t |¡}n.t tj||d¡}tj|dd}W5QRXttjdd    d
d gtjd d ddgtjddddgdœƒ}t     
||¡dS)Nr”r•r–Zempty_trailing_rowsr—rrqrˆr#rhršrŠr›rœrržrŸr r¡r¢) rsrtr_r`rrarrÚnanr.rv©r˜rr“r1rerdrNrrr Ú"test_read_with_empty_trailing_rowsMs  ÿýÿr®c    Csl|dddd|›ƒ}|dkr(t |¡}n.t tj||d¡}tj|dd}W5QRXtƒ}t ||¡dS)Nr”r•r–Zempty_with_blank_rowr—rrqr£r­rrr Útest_read_empty_with_blank_rowcs  ÿr¯c
Cs`t |¡L}t|dd4}|jiks(t‚|j dd¡}|jd|iksHt‚W5QRXW5QRXdS)NrrqZ    test_namer)r.r/rr0rr7r])rr9r2r[rrr Útest_book_and_sheets_consistentrs
 r°cCsB|dddd|›ƒ}t |¡}ttddƒdgd}t ||¡dS)    Nr”r•r–Zints_spelled_with_decimalsrhé r#rT)rsrtrÚranger.rv©r˜rr1rerNrrr Útest_ints_spelled_with_decimals{s
r´cCs†|dddd|›ƒ}tj|dddgdddgd}ttjd    d    d    gd    tjtjtjggtj d
d d d g¡tj ddg¡d}t ||¡dS)Nr”r•r–Zmultiindex_no_index_namesrr#rh)Z    index_colr~Úx)ÚXÚYrV)r¶r·r-)ÚXXÚYYr,)r¸r¹rL)rˆZAAZAAA)rˆÚBBZBBB)rUrX)    rsrtrrr¬Z
MultiIndexÚ from_tuplesr.rvr³rrr Ú*test_read_multiindex_header_no_index_namesƒs
ÿûr¼)(r_ÚpathlibrrGÚnumpyrrDr)rsrZpandas._testingZ_testingr.Zpandas.io.excelrrZ importorskiprÚmarkZ parametrizeZ
pytestmarkr!r3r:rIrOrfryrr‡r’r™r¬r¤r«r®r¯r°r´r¼rrrr Ú<module>s–   
!"
 
 
ÿ
 
 ýþ
üþ    
öþ
 
ýþ ÷þÿ