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
U
®ý°dÍ!ã@shdZddlZddlZddlmZmZddlmZej    e
e e e eeegddd„ƒZej    e
e fe e fe e
feefee feefe efe efgdd„d    d
d „ƒZd d „Zej d¡dd„ƒZej ddddddddddddg ¡dd„ƒZdd „Zd!d"„Zd#d$„Zd%d&„Zd'd(„Zd)d*„Zd+d,„Zd-d.„Zd/d0„Zd1d2„Z ej d3d4dg¡Gd5d6„d6ƒƒZ!d7d8„Z"d9d:„Z#dS);zG"
Test module for testing ``pandas._testing.assert_produces_warning``.
éN)Ú DtypeWarningÚPerformanceWarning)ÚparamscCs|jS)zx
    Return unique warning.
 
    Useful for testing behavior of tm.assert_produces_warning with various categories.
    ©Úparam©Úrequest©r    úed:\z\workplace\vscode\pyvenv\venv\Lib\site-packages\pandas/tests/util/test_assert_produces_warning.pyÚcategorysr cCs
t|ƒjS©N)ÚtypeÚ__name__)Úxr    r    r
Ú<lambda>/ór)rÚidscCs|jS)z’
    Return pair or different warnings.
 
    Useful for testing how several different warnings are handled
    in tm.assert_produces_warning.
    rrr    r    r
Úpair_different_warnings$srcCst dt¡t dt¡dS)NÚf1Úf2)ÚwarningsÚwarnÚ FutureWarningÚRuntimeWarningr    r    r    r
Úf;s rzignore:f1:FutureWarningc
Cs^d}tjt|d"t t¡ tƒW5QRXW5QRXtjtdd tƒW5QRXdS)NúCaused unexpected warning\(s\)©ÚmatchF©Zraise_on_extra_warnings)ÚpytestÚraisesÚAssertionErrorÚtmÚassert_produces_warningrr©Úmsgr    r    r
Ú*test_assert_produces_warning_honors_filter@s  r&zmessage, match)ÚN)r'r')úWarning messagez.*)r(ZWar)r(z
[Ww]arning)r(Zage)r(zage$)úMessage 12-234 with numbersz \d{2}-\d{3})r)z^Mes.*\d{2}-\d{3})r)z\d{2}-\d{3}\s\S+)zMessage, which we do not matchNc    Cs*tj||dt ||¡W5QRXdS)Nr©r"r#rr)r Úmessagerr    r    r
Ú%test_catch_warning_category_and_matchLsr,c
Cs\t}d}d}tjt|d8tj||dt d|¡t d|¡W5QRXW5QRXdS)NzDid not see this warningzÇDid not see warning 'RuntimeWarning' matching 'Did not see this warning'. The emitted warning messages are \[RuntimeWarning\('This is not a match.'\), RuntimeWarning\('Another unmatched warning.'\)\]rúThis is not a match.úAnother unmatched warning.)rrr r!r"r#rr©r rÚ    unmatchedr    r    r
Ú"test_fail_to_match_runtime_warningasÿ r1c
Cs\t}d}d}tjt|d8tj||dt d|¡t d|¡W5QRXW5QRXdS)NÚWarningz³Did not see warning 'FutureWarning' matching 'Warning'. The emitted warning messages are \[FutureWarning\('This is not a match.'\), FutureWarning\('Another unmatched warning.'\)\]rr-r.)rrr r!r"r#rrr/r    r    r
Ú!test_fail_to_match_future_warningpsÿ r3c
Cs\t}d}d}tjt|d8tj||dt d|¡t d|¡W5QRXW5QRXdS)Nz\d+z·Did not see warning 'ResourceWarning' matching '\\d\+'. The emitted warning messages are \[ResourceWarning\('This is not a match.'\), ResourceWarning\('Another unmatched warning.'\)\]rr-r.)ÚResourceWarningrr r!r"r#rrr/r    r    r
Ú#test_fail_to_match_resource_warningsÿ r5c
CsL|\}}d}tjt|d(t |¡t d|¡W5QRXW5QRXdS)Nz%Did not see expected warning of classrzwarning message©rr r!r"r#rr)rÚexpected_categoryZactual_categoryrr    r    r
Ú!test_fail_to_catch_actual_warningŽs
 r8c    Cs>|\}}tj|ddt d|¡t d|¡W5QRXdS)NFrúExpected warningzUnexpected warning OKr*)rr7Úextra_categoryr    r    r
Útest_ignore_extra_warning–s r;c
CsX|\}}d}tjt|d4t |¡t d|¡t d|¡W5QRXW5QRXdS)Nrrr9zUnexpected warning NOT OKr6)rr7r:rr    r    r
Útest_raise_on_extra_warnings   r<c    CsFt}tj|dd*t d|¡t d|¡t d|¡W5QRXdS)Nú ^Match thisrú
Match thisúDo not match thatúDo not match that either)Ú UserWarningr"r#rr©r r    r    r
Ú1test_same_category_different_messages_first_match¦s
  rCc    CsFt}tj|dd*t d|¡t d|¡t d|¡W5QRXdS)Nr=rr?r@r>)ÚDeprecationWarningr"r#rrrBr    r    r
Ú0test_same_category_different_messages_last_match®s
  rEc    Cs>ttf}tj|ddt dt¡t dt¡W5QRXdS)Nr=rr>zMatch this too)rrAr"r#rrrBr    r    r
Útest_match_multiple_warnings¶s rFc
CsX|\}}tjtdd8tj|ddt d|¡t d|¡W5QRXW5QRXdS)NzDid not see warning.*matchingrr=zDo not match itr>r6)rZtarget_categoryZother_categoryr    r    r
Ú&test_right_category_wrong_match_raises¾s
 rGÚ false_or_noneFc@s$eZdZdd„Zdd„Zdd„ZdS)ÚTestFalseOrNoneExpectedWarningc
Cs>d}tjt|d"t |¡ tƒW5QRXW5QRXdS)Nrr)rr r!r"r#r)ÚselfrHr%r    r    r
Útest_raise_on_warningÈs z4TestFalseOrNoneExpectedWarning.test_raise_on_warningc    Cst |¡W5QRXdSr )r"r#©rJrHr    r    r
Útest_no_raise_without_warningÎs z<TestFalseOrNoneExpectedWarning.test_no_raise_without_warningc    Cs$tj|dd tƒW5QRXdS)NFr)r"r#rrLr    r    r
Ú'test_no_raise_with_false_raise_on_extraÒszFTestFalseOrNoneExpectedWarning.test_no_raise_with_false_raise_on_extraN)rÚ
__module__Ú __qualname__rKrMrNr    r    r    r
rIÆsrIc
CsÀd}tjt|d t t¡
t‚W5QRXW5QRXtjt|d,t t¡t dt    ¡t
‚W5QRXW5QRXd}tjt|d,t d¡t dt    ¡t ‚W5QRXW5QRXdS)Nz3Did not see expected warning of class 'UserWarning'rrzCaused unexpected warning) rr r!r"r#rAÚ
ValueErrorrrrÚ
IndexErrorÚ SystemErrorr$r    r    r
Útest_raises_during_exception×s     rTc
Cs„tjtdd$t d¡tdƒ‚W5QRXW5QRXtjtdd4tjtddt dt¡tdƒ‚W5QRXW5QRXdS)NÚErrorrr)    rr Ú SyntaxErrorr"r#rQrrrr    r    r    r
Útest_passes_during_exceptionés  rW)$Ú__doc__rrZ pandas.errorsrrZpandas._testingZ_testingr"Zfixturerr4rArrDr rrÚmarkÚfilterwarningsr&Z parametrizer,r1r3r5r8r;r<rCrErFrGrIrTrWr    r    r    r
Ú<module>sz ùÿ
    ø
õ
 
 
 
õþ