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
U
­ý°d!ã@svddlZddlZddlZddlZddlmZmZmZddlZ    eƒZ
e  ej ¡Z ejje
ddZejjee
ƒdkddZej feedœdd    „Zej d
ej ejejf¡d d „ƒZej d
ej ejejf¡d d„ƒZej d
ej ejejf¡dd„ƒZej dddddg¡ej d
ej ejejf¡dd„ƒƒZdd„Zdd„Zedd„ƒZeej dddddg¡dd„ƒƒZ d d!„Z!dS)"éN)Úcan_set_localeÚ get_localesÚ
set_localez Need locales)Úreasonéz)Need multiple locales for meaningful test)Úlc_varÚreturncCs
t |¡S©N)ÚlocaleÚ    setlocale©r©r ú\d:\z\workplace\vscode\pyvenv\venv\Lib\site-packages\pandas/tests/config/test_localization.pyÚ_get_current_localesrrcCs0t|ƒ}t||dst‚t|ƒ}||ks,t‚dS)Nr ©rrÚAssertionError©rÚ before_localeÚ after_localer r rÚtest_can_set_current_localesrcCs0t|ƒ}td|dst‚t|ƒ}||ks,t‚dS)NÚr rrr r rÚtest_can_set_locale_valid_set(srcCs0t|ƒ}td|drt‚t|ƒ}||ks,t‚dS)Nznon-existent_localer rrr r rÚtest_can_set_locale_invalid_set1srzlang,enc)Úit_CHzUTF-8)Úen_USÚascii)Úzh_CNÚGB2312)Úit_ITz
ISO-8859-1cCs0t|ƒ}t||ftjƒt|ƒ}||ks,t‚dSr    )rrr
ÚLC_ALLr)ÚlangÚencrrrr r rÚtest_can_set_locale_no_leak:s r"c    Cs:dd„}| ¡ }| td|¡tdƒr,t‚W5QRXdS)NcSs
tƒ‚dSr    )Ú
ValueErrorr r r rÚmock_get_localeQsz8test_can_set_locale_invalid_get.<locals>.mock_get_localeÚ    getlocaler)ÚcontextÚsetattrr
rr)Z monkeypatchr$Úmr r rÚtest_can_set_locale_invalid_getLs
r)cCsttƒdkst‚dS)Nr)ÚlenÚ _all_localesrr r r rÚtest_get_locales_at_least_oneYsr,cCs*td}tt|dd…dƒdks&t‚dS)Nré)Úprefix)r+r*rr)Z first_localer r rÚtest_get_locales_prefix^sr/c    
Cs°tƒ}t |¡j}||f}t|ƒsXd}tjtj|dt    |ƒW5QRXW5QRXnBt    |ƒ4}| 
d¡\}}t |¡j}||f}||kst ‚W5QRXtƒ}||ks¬t ‚dS)Nzunsupported locale setting)ÚmatchÚ.) rÚcodecsÚlookupÚnamerÚpytestZraisesr
ÚErrorrÚsplitr)    r r!rZ
new_localeÚmsgZnormalized_localeZnew_langZnew_encrr r rÚtest_set_localeds  
 
 r9cCsHtj d¡}|r| d¡dnd}t tjjj    ¡j
t |¡j
ksDt ‚dS)Nrr1éÿÿÿÿzutf-8) ÚosÚenvironÚgetr7r2r3ÚpdÚoptionsZdisplayÚencodingr4r)Z system_localeZsystem_encodingr r rÚtest_encoding_detected‡s  
ÿÿrA)"r2r
r;r5Zpandas._config.localizationrrrZpandasr>r+r rZ_current_localeÚmarkZskipifZ
pytestmarkr*Z_skip_if_only_one_localeÚintÚstrrZ parametrizeÚLC_CTYPEÚLC_TIMErrrr"r)r,r/r9rAr r r rÚ<module>sX 
ÿ
 
 
üþ      
üþ