zmc
2023-10-12 ed135d79df12a2466b52dae1a82326941211dcc9
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
U
­ý°dÔCã@sBddlZddlZddlmZddlmZddlZGdd„dƒZ    dS)éN)Úconfig)Ú OptionErrorc@sÈeZdZejdddd„ƒZdd„Zdd„Zd    d
„Zd d „Z    d d„Z
dd„Z dd„Z dd„Z dd„Zdd„Zdd„Zdd„Zdd„Zdd „Zd!d"„Zd#d$„Zd%d&„Zd'd(„Zd)d*„Zd+d,„Zd-d.„Zd/S)0Ú
TestConfigT)Zautousec    csj| ¡X}| tdi¡| tdt tj¡¡| tdi¡| tdi¡t dd¡dVW5QRXdS)NÚ_global_configÚoptionsZ_deprecated_optionsZ_registered_optionsZchained_assignmentÚraise)ÚcontextÚsetattrÚcfZ DictWrapperrÚregister_option)ÚselfZ monkeypatchÚm©rúVd:\z\workplace\vscode\pyvenv\venv\Lib\site-packages\pandas/tests/config/test_config.pyÚ clean_config s
 zTestConfig.clean_configcCs<ttdƒst‚ttdƒst‚ttdƒs*t‚ttdƒs8t‚dS)NÚ
get_optionÚ
set_optionÚ reset_optionÚdescribe_option)ÚhasattrÚpdÚAssertionError©r rrrÚtest_apiszTestConfig.test_apic    CsHt ddg¡}|dƒ|dƒd}tjt|d|dƒW5QRXdS)Né zValue must be one of None\|12©Úmatch皙™™™™ñ?)r
Úis_one_of_factoryÚpytestÚraisesÚ
ValueError)r ÚvÚmsgrrrÚtest_is_one_of_factory"s z!TestConfig.test_is_one_of_factoryc    Cs(t ddd¡d}tjt|dt ddd¡W5QRXd}tjt|dt ddd¡W5QRXtjt|dt ddd¡W5QRXd    }tjt|dt d
d ¡W5QRXtjt|dt d d ¡W5QRXd }tjt|dt dd ¡W5QRXt ddd¡t ddd¡dS)NÚaéÚdocz&Option 'a' has already been registeredrz.Path prefix to option 'a' is already an optionza.b.c.d1úa.b.c.d2zfor is a python keywordÚforrza.for.bz(oh my goddess! is not a valid identifierzOh my Goddess!zk.b.c.d1zk.b.c.d2)r
r rr rr!©r r#rrrÚtest_register_option+s&zTestConfig.test_register_optionc    CsÒt ddd¡t ddd¡t d¡t ddd¡t ddd    ¡t d
d¡t d d¡t d d ¡tjd d dt dd¡d}tjt|dt d¡W5QRXdtjdddks¾t‚dtjdddksÔt‚dtjdddksêt‚dtjdddkst‚d    tjdddkst‚dtjd
ddks2t‚dtjd ddksJt‚dtjd ddksbt‚d tjd ddkszt‚dtjdddks’t‚dtjdddksªt‚t dd¡dtjdddksÎt‚dS)Nr%r&r'ÚbÚdoc2zc.d.e1Zdoc3zc.d.e2Zdoc4Úfzg.hÚké©ZrkeyÚlÚfoozNo such keys\(s\)rú no.such.keyF©Z _print_descZprecatedÚ    availableÚbar)    r
r Údeprecate_optionrr rrrrr*rrrÚtest_describe_optionLs4
     zTestConfig.test_describe_optionc    Cs˜t ddd¡dtjdddks$t‚t d¡dks6t‚t dd    ¡t d
¡d    ksTt‚d }tjt|d t d ¡W5QRXt     d¡t 
d
¡s”t‚dS)NZKanBANr&r'ZkanbaNFr5ZkanBaNZKanBanr0ZkAnBaNú#No such keys\(s\): 'no_such_option'rÚno_such_option) r
r rrrrrr rr8Ú_is_deprecatedr*rrrÚtest_case_insensitivess 
z TestConfig.test_case_insensitivec    CsŒt ddd¡t ddd¡t ddd¡t d¡dks<t‚t d¡dksNt‚t d¡dks`t‚d}tjt|d    t d
¡W5QRXdS) Nr%r&r'úb.cÚhullor-úb.br:rr;)r
r rrrr rr*rrrÚtest_get_optionƒszTestConfig.test_get_optionc    Csèt ddd¡t ddd¡t ddd¡t d¡dks<t‚t d¡dksNt‚t d¡dks`t‚t dd¡t dd    ¡t dd
¡t d¡dks–t‚t d¡d    ks¨t‚t d¡d
ksºt‚d }tjt|d t d d¡W5QRXdS)Nr%r&r'r>r?r-r@r0Úwurldrz No such keys\(s\): 'no.such.key'rr4)r
r rrrrr rr*rrrÚtest_set_option’s   zTestConfig.test_set_optionc    Cs*d}tjt|dt ¡W5QRXdS)Nú4Must provide an even number of non-keyword argumentsr©rr r!r
rr*rrrÚtest_set_option_empty_args§sz%TestConfig.test_set_option_empty_argsc    Cs0d}tjt|dt ddd¡W5QRXdS)NrDrza.br0r>rEr*rrrÚtest_set_option_uneven_args¬sz&TestConfig.test_set_option_uneven_argsc    Cs,d}tjt|dt d¡W5QRXdS)NrDrr0rEr*rrrÚ,test_set_option_invalid_single_argument_type±sz7TestConfig.test_set_option_invalid_single_argument_typecCs®t ddd¡t ddd¡t ddd¡t d¡dks<t‚t d¡dksNt‚t d¡dks`t‚t dddddd    ¡t d¡dks†t‚t d¡dks˜t‚t d¡d    ksªt‚dS)
Nr%r&r'r>r?r-r@Ú2g$@)r
r rrrrrrrÚtest_set_option_multiple¶sz#TestConfig.test_set_option_multiplec    CsÞtjdddtjdtjdddtjdtjdddtjdd    }tjt|d
tjd d dtjdW5QRXt dd ¡t dd¡t dd ¡t dd¡tjt|d
t dd¡W5QRXtjt|d
t dd¡W5QRXd}tjt|d
tjdd dtjdW5QRXtjt|d
tjdddtjdW5QRXd}tjt|d
t dd¡W5QRXt     dtj
g¡}tjddd„d|dt ddj ¡t dd¡tjtdd
t dd¡W5QRXdS)Nr%r&r'©Ú    validatorÚdr>r?r-z$Value must have type '<class 'int'>'rr(ÚNOr0rBÚabz+Value must be a nonnegative integer or Noneza.b.c.d3éþÿÿÿz;Value must be an instance of <class 'str'>\|<class 'bytes'>r,cSsdS©NrrrrrÚ<lambda>äóz,TestConfig.test_validation.<locals>.<lambda>z%.1fzValue must be a callable) r
r Úis_intZis_nonnegative_intZis_textrr r!rrZ is_callableÚformat)r r#rLrrrÚtest_validationÅs8     zTestConfig.test_validationcCsètjdddtjdtjdddtjdt d¡dks:t‚t d¡dksLt‚t dd¡t dd    ¡t d¡dksvt‚t d¡d    ksˆt‚t d¡t d¡dks¤t‚t d¡d    ks¶t‚t d¡t d¡dksÒt‚t d¡dksät‚dS)
Nr%r&r'rKr>r?r-r0rB©r
r rTZis_strrrrrrrrrÚtest_reset_optionës  
 
zTestConfig.test_reset_optioncCsºtjdddtjdtjdddtjdt d¡dks:t‚t d¡dksLt‚t dd¡t dd    ¡t d¡dksvt‚t d¡d    ksˆt‚t d
¡t d¡dks¤t‚t d¡dks¶t‚dS) Nr%r&r'rKr>r?r-r0rBÚallrWrrrrÚtest_reset_option_allýs  
z TestConfig.test_reset_option_allc
Cst d¡t d¡st‚tjddX}t d¡tjt    ddt 
d¡W5QRXt |ƒdksdt‚dt |d    ƒksxt‚W5QRXtj d
dd tjd t  d dd¡t  ddd¡tjd
ddtjdd~}t d¡t 
d
¡t |ƒdksòt‚dt |d    ƒkst‚dt |d    ƒkst‚d}tjt|dt d
¡W5QRXW5QRXt d d¡tjddB}t d¡t 
d ¡t |ƒdkst‚dt |d    ƒks¦t‚W5QRXt  ddd¡t  ddd¡t 
d¡dksàt‚t 
d¡dksôt‚tjdddtjddL}t d¡t 
d¡dks.t‚t |ƒdks@t‚dt |d    ƒksVt‚W5QRXtjddD}t d¡t dd¡t |ƒdks–t‚dt |d    ƒks¬t‚W5QRXtjddL}t d¡t 
d¡dksât‚t |ƒdksôt‚dt |d    ƒks
t‚W5QRXdS)Nr3T)ÚrecordÚalwayszNo such keys.s.: 'foo'rr&Ú
deprecatedéÿÿÿÿr%r'rKr>r?r-Z    nifty_ver)Z removal_verZ    eprecatedz1Option 'a' has already been defined as deprecatedzzounds!úd.azd.depr7r1Zbaz)r
r8r<rÚwarningsÚcatch_warningsÚ simplefilterrr ÚKeyErrorrÚlenÚstrr rTrr)r Úwr#rrrÚtest_deprecate_option s^
 
 
 
 
 
 
 
  
z TestConfig.test_deprecate_optionc    Cs8t d¡‚t ddd¡t ddd¡t d¡dks:t‚t d¡dksLt‚t dd¡t dd    ¡t d¡dksvt‚t d¡d    ksˆt‚W5QRXt d
¡dks¤t‚t d ¡d    ks¶t‚dtjd
d d ksÌt‚dtjd d d ksât‚t d
¡t d ¡t d¡.t d¡dkst‚t d¡dks*t‚W5QRXdS)NÚbaser%r&Zdoc1r,r0r-éézbase.azbase.bFr5)r
Z config_prefixr rrrrrrrrrÚtest_config_prefixMs$   
 
 zTestConfig.test_config_prefixcsÔdg‰dg‰‡‡fdd„}tjdd|dtjdd|dˆd=ˆd=t dd¡ˆddksbt‚ˆddksrt‚ˆd=ˆd=t dd    ¡ˆddksšt‚ˆdd    ksªt‚ˆd=ˆd=t d¡ˆddksÐt‚dS)
Ncsˆ |¡ˆ t |¡¡dSrQ)Úappendr
r©Úkey©r/r"rrÚcallbackis
z*TestConfig.test_callback.<locals>.callbackr_r3©Úcbzd.br^ZfoozZboo)r
r rrr)r rprrorÚ test_callbackes      
zTestConfig.test_callbackc
s¢dd„‰t dd¡ˆdƒt dd¡6ˆdƒt dd¡ˆdƒW5QRXˆdƒW5QRXˆdƒt dd¡ˆdƒt dd¡‡fd    d
„ƒ}|ƒdS) NcSst d¡|kst‚dS)Nr%)r
rr)ÚvalrrrÚeqsz.TestConfig.test_set_ContextManager.<locals>.eqr%réééé{cs ˆdƒdS)Nryrr©rurrr.sz-TestConfig.test_set_ContextManager.<locals>.f)r
r Úoption_contextr)r r.rrzrÚtest_set_ContextManager~s  
z"TestConfig.test_set_ContextManagerc    süg‰‡fdd„}t dd¡tjdd|dtj}|jdks@t‚t dd¡|jdks\t‚W5QRXd|_t d¡dks~t‚t d¡|jt dd¡ksžt‚d    }tj    t
|d
 d |_ W5QRXtj    t
|d
 d |_ W5QRXd |_ tˆƒd ksøt‚dS) Ncsˆ d¡dS)NT)rlrm©ZholderrrÚf3˜sz,TestConfig.test_attribute_access.<locals>.f3r%rÚcrqrviôz.You can only set the value of existing optionsrr&)r
r rr%rr{rrrr rr,Zdisplayrrd)r r~rr#rr}rÚtest_attribute_access•s&  
z TestConfig.test_attribute_accessc    Csnd}d}d}t ||¡t ||¡}t |¡|ks6t‚|t |¡|ksNt‚W5QRXt |¡|ksjt‚dS)Né<é
r%)r
r r{rr)r Úoriginal_valueZ context_valueZ option_nameÚctxrrrÚtest_option_context_scope³s  z$TestConfig.test_option_context_scopec    Cs8tj}tjtdd |jW5QRXt|dƒr4t‚dS)NzNo such optionrÚbananas)r
rrr rr†rr)r rrrrÚtest_dictwrapper_getattrÉsz#TestConfig.test_dictwrapper_getattrN)Ú__name__Ú
__module__Ú __qualname__rZfixturerrr$r+r9r=rArCrFrGrHrJrVrXrZrgrkrsr|r€r…r‡rrrrr s.
 
    !'&Ar)
r`rZpandas._configrr
Zpandas._config.configrZpandasrrrrrrÚ<module>s