aboutsummaryrefslogtreecommitdiffhomepage
path: root/third_party/py/mock/html/.doctrees/getting-started.doctree
blob: ba82a899840d5582d02f280cd38fdeed04cd2e43 (plain)
ofshex dumpascii
0000 80 02 63 64 6f 63 75 74 69 6c 73 2e 6e 6f 64 65 73 0a 64 6f 63 75 6d 65 6e 74 0a 71 01 29 81 71 ..cdocutils.nodes.document.q.).q
0020 02 7d 71 03 28 55 09 6e 61 6d 65 74 79 70 65 73 71 04 7d 71 05 28 58 0f 00 00 00 67 65 74 74 69 .}q.(U.nametypesq.}q.(X....getti
0040 6e 67 2d 73 74 61 72 74 65 64 71 06 88 58 0a 00 00 00 75 73 69 6e 67 20 6d 6f 63 6b 71 07 4e 58 ng-startedq..X....using.mockq.NX
0060 0f 00 00 00 6d 6f 63 6b 69 6e 67 20 63 6c 61 73 73 65 73 71 08 4e 58 23 00 00 00 73 69 64 65 20 ....mocking.classesq.NX#...side.
0080 65 66 66 65 63 74 20 66 75 6e 63 74 69 6f 6e 73 20 61 6e 64 20 69 74 65 72 61 62 6c 65 73 71 09 effect.functions.and.iterablesq.
00a0 4e 58 19 00 00 00 67 65 74 74 69 6e 67 20 73 74 61 72 74 65 64 20 77 69 74 68 20 6d 6f 63 6b 71 NX....getting.started.with.mockq
00c0 0a 4e 58 10 00 00 00 70 61 74 63 68 20 64 65 63 6f 72 61 74 6f 72 73 71 0b 4e 58 15 00 00 00 6d .NX....patch.decoratorsq.NX....m
00e0 6f 63 6b 20 70 61 74 63 68 69 6e 67 20 6d 65 74 68 6f 64 73 71 0c 4e 58 22 00 00 00 6d 6f 63 6b ock.patching.methodsq.NX"...mock
0100 20 66 6f 72 20 6d 65 74 68 6f 64 20 63 61 6c 6c 73 20 6f 6e 20 61 6e 20 6f 62 6a 65 63 74 71 0d .for.method.calls.on.an.objectq.
0120 4e 58 12 00 00 00 74 72 61 63 6b 69 6e 67 20 61 6c 6c 20 63 61 6c 6c 73 71 0e 4e 58 11 00 00 00 NX....tracking.all.callsq.NX....
0140 6e 61 6d 69 6e 67 20 79 6f 75 72 20 6d 6f 63 6b 73 71 0f 4e 58 24 00 00 00 73 65 74 74 69 6e 67 naming.your.mocksq.NX$...setting
0160 20 72 65 74 75 72 6e 20 76 61 6c 75 65 73 20 61 6e 64 20 61 74 74 72 69 62 75 74 65 73 71 10 4e .return.values.and.attributesq.N
0180 58 27 00 00 00 63 72 65 61 74 69 6e 67 20 61 20 6d 6f 63 6b 20 66 72 6f 6d 20 61 6e 20 65 78 69 X'...creating.a.mock.from.an.exi
01a0 73 74 69 6e 67 20 6f 62 6a 65 63 74 71 11 4e 58 1d 00 00 00 72 61 69 73 69 6e 67 20 65 78 63 65 sting.objectq.NX....raising.exce
01c0 70 74 69 6f 6e 73 20 77 69 74 68 20 6d 6f 63 6b 73 71 12 4e 75 55 11 73 75 62 73 74 69 74 75 74 ptions.with.mocksq.NuU.substitut
01e0 69 6f 6e 5f 64 65 66 73 71 13 7d 71 14 55 0e 70 61 72 73 65 5f 6d 65 73 73 61 67 65 73 71 15 5d ion_defsq.}q.U.parse_messagesq.]
0200 71 16 55 0e 63 75 72 72 65 6e 74 5f 73 6f 75 72 63 65 71 17 4e 55 0a 64 65 63 6f 72 61 74 69 6f q.U.current_sourceq.NU.decoratio
0220 6e 71 18 4e 55 12 61 75 74 6f 66 6f 6f 74 6e 6f 74 65 5f 73 74 61 72 74 71 19 4b 01 55 07 6e 61 nq.NU.autofootnote_startq.K.U.na
0240 6d 65 69 64 73 71 1a 7d 71 1b 28 68 06 55 0f 67 65 74 74 69 6e 67 2d 73 74 61 72 74 65 64 71 1c meidsq.}q.(h.U.getting-startedq.
0260 68 07 55 0a 75 73 69 6e 67 2d 6d 6f 63 6b 71 1d 68 08 55 0f 6d 6f 63 6b 69 6e 67 2d 63 6c 61 73 h.U.using-mockq.h.U.mocking-clas
0280 73 65 73 71 1e 68 09 55 23 73 69 64 65 2d 65 66 66 65 63 74 2d 66 75 6e 63 74 69 6f 6e 73 2d 61 sesq.h.U#side-effect-functions-a
02a0 6e 64 2d 69 74 65 72 61 62 6c 65 73 71 1f 68 0a 55 19 67 65 74 74 69 6e 67 2d 73 74 61 72 74 65 nd-iterablesq.h.U.getting-starte
02c0 64 2d 77 69 74 68 2d 6d 6f 63 6b 71 20 68 0b 55 10 70 61 74 63 68 2d 64 65 63 6f 72 61 74 6f 72 d-with-mockq.h.U.patch-decorator
02e0 73 71 21 68 0c 55 15 6d 6f 63 6b 2d 70 61 74 63 68 69 6e 67 2d 6d 65 74 68 6f 64 73 71 22 68 0d sq!h.U.mock-patching-methodsq"h.
0300 55 22 6d 6f 63 6b 2d 66 6f 72 2d 6d 65 74 68 6f 64 2d 63 61 6c 6c 73 2d 6f 6e 2d 61 6e 2d 6f 62 U"mock-for-method-calls-on-an-ob
0320 6a 65 63 74 71 23 68 0e 55 12 74 72 61 63 6b 69 6e 67 2d 61 6c 6c 2d 63 61 6c 6c 73 71 24 68 0f jectq#h.U.tracking-all-callsq$h.
0340 55 11 6e 61 6d 69 6e 67 2d 79 6f 75 72 2d 6d 6f 63 6b 73 71 25 68 10 55 24 73 65 74 74 69 6e 67 U.naming-your-mocksq%h.U$setting
0360 2d 72 65 74 75 72 6e 2d 76 61 6c 75 65 73 2d 61 6e 64 2d 61 74 74 72 69 62 75 74 65 73 71 26 68 -return-values-and-attributesq&h
0380 11 55 27 63 72 65 61 74 69 6e 67 2d 61 2d 6d 6f 63 6b 2d 66 72 6f 6d 2d 61 6e 2d 65 78 69 73 74 .U'creating-a-mock-from-an-exist
03a0 69 6e 67 2d 6f 62 6a 65 63 74 71 27 68 12 55 1d 72 61 69 73 69 6e 67 2d 65 78 63 65 70 74 69 6f ing-objectq'h.U.raising-exceptio
03c0 6e 73 2d 77 69 74 68 2d 6d 6f 63 6b 73 71 28 75 55 08 63 68 69 6c 64 72 65 6e 71 29 5d 71 2a 63 ns-with-mocksq(uU.childrenq)]q*c
03e0 64 6f 63 75 74 69 6c 73 2e 6e 6f 64 65 73 0a 73 65 63 74 69 6f 6e 0a 71 2b 29 81 71 2c 7d 71 2d docutils.nodes.section.q+).q,}q-
0400 28 55 09 72 61 77 73 6f 75 72 63 65 71 2e 55 00 55 06 70 61 72 65 6e 74 71 2f 68 02 55 06 73 6f (U.rawsourceq.U.U.parentq/h.U.so
0420 75 72 63 65 71 30 63 64 6f 63 75 74 69 6c 73 2e 6e 6f 64 65 73 0a 72 65 70 72 75 6e 69 63 6f 64 urceq0cdocutils.nodes.reprunicod
0440 65 0a 71 31 58 26 00 00 00 2f 63 6f 6d 70 69 6c 65 2f 6d 6f 63 6b 2f 64 6f 63 73 2f 67 65 74 74 e.q1X&.../compile/mock/docs/gett
0460 69 6e 67 2d 73 74 61 72 74 65 64 2e 74 78 74 71 32 85 81 71 33 7d 71 34 62 55 07 74 61 67 6e 61 ing-started.txtq2..q3}q4bU.tagna
0480 6d 65 71 35 55 07 73 65 63 74 69 6f 6e 71 36 55 0a 61 74 74 72 69 62 75 74 65 73 71 37 7d 71 38 meq5U.sectionq6U.attributesq7}q8
04a0 28 55 08 64 75 70 6e 61 6d 65 73 71 39 5d 71 3a 55 07 63 6c 61 73 73 65 73 71 3b 5d 71 3c 55 08 (U.dupnamesq9]q:U.classesq;]q<U.
04c0 62 61 63 6b 72 65 66 73 71 3d 5d 71 3e 55 03 69 64 73 71 3f 5d 71 40 68 20 61 55 05 6e 61 6d 65 backrefsq=]q>U.idsq?]q@h.aU.name
04e0 73 71 41 5d 71 42 68 0a 61 75 55 04 6c 69 6e 65 71 43 4b 03 55 08 64 6f 63 75 6d 65 6e 74 71 44 sqA]qBh.auU.lineqCK.U.documentqD
0500 68 02 68 29 5d 71 45 28 63 64 6f 63 75 74 69 6c 73 2e 6e 6f 64 65 73 0a 74 69 74 6c 65 0a 71 46 h.h)]qE(cdocutils.nodes.title.qF
0520 29 81 71 47 7d 71 48 28 68 2e 58 19 00 00 00 47 65 74 74 69 6e 67 20 53 74 61 72 74 65 64 20 77 ).qG}qH(h.X....Getting.Started.w
0540 69 74 68 20 4d 6f 63 6b 71 49 68 2f 68 2c 68 30 68 33 68 35 55 05 74 69 74 6c 65 71 4a 68 37 7d ith.MockqIh/h,h0h3h5U.titleqJh7}
0560 71 4b 28 68 39 5d 71 4c 68 3b 5d 71 4d 68 3d 5d 71 4e 68 3f 5d 71 4f 68 41 5d 71 50 75 68 43 4b qK(h9]qLh;]qMh=]qNh?]qOhA]qPuhCK
0580 03 68 44 68 02 68 29 5d 71 51 63 64 6f 63 75 74 69 6c 73 2e 6e 6f 64 65 73 0a 54 65 78 74 0a 71 .hDh.h)]qQcdocutils.nodes.Text.q
05a0 52 58 19 00 00 00 47 65 74 74 69 6e 67 20 53 74 61 72 74 65 64 20 77 69 74 68 20 4d 6f 63 6b 71 RX....Getting.Started.with.Mockq
05c0 53 85 81 71 54 7d 71 55 28 68 2e 68 49 68 2f 68 47 75 62 61 75 62 63 64 6f 63 75 74 69 6c 73 2e S..qT}qU(h.hIh/hGubaubcdocutils.
05e0 6e 6f 64 65 73 0a 74 61 72 67 65 74 0a 71 56 29 81 71 57 7d 71 58 28 68 2e 58 14 00 00 00 2e 2e nodes.target.qV).qW}qX(h.X......
0600 20 5f 67 65 74 74 69 6e 67 2d 73 74 61 72 74 65 64 3a 71 59 68 2f 68 2c 68 30 68 33 68 35 55 06 ._getting-started:qYh/h,h0h3h5U.
0620 74 61 72 67 65 74 71 5a 68 37 7d 71 5b 28 68 39 5d 71 5c 68 3b 5d 71 5d 68 3d 5d 71 5e 68 3f 5d targetqZh7}q[(h9]q\h;]q]h=]q^h?]
0640 71 5f 68 1c 61 68 41 5d 71 60 68 06 61 75 68 43 4b 05 68 44 68 02 68 29 5d 71 61 75 62 63 73 70 q_h.ahA]q`h.auhCK.hDh.h)]qaubcsp
0660 68 69 6e 78 2e 61 64 64 6e 6f 64 65 73 0a 69 6e 64 65 78 0a 71 62 29 81 71 63 7d 71 64 28 68 2e hinx.addnodes.index.qb).qc}qd(h.
0680 55 00 68 2f 68 2c 68 30 68 33 68 35 55 05 69 6e 64 65 78 71 65 68 37 7d 71 66 28 68 3f 5d 71 67 U.h/h,h0h3h5U.indexqeh7}qf(h?]qg
06a0 68 3d 5d 71 68 68 39 5d 71 69 68 3b 5d 71 6a 68 41 5d 71 6b 55 07 65 6e 74 72 69 65 73 71 6c 5d h=]qhh9]qih;]qjhA]qkU.entriesql]
06c0 71 6d 28 55 06 73 69 6e 67 6c 65 71 6e 58 0f 00 00 00 47 65 74 74 69 6e 67 20 53 74 61 72 74 65 qm(U.singleqnX....Getting.Starte
06e0 64 55 07 69 6e 64 65 78 2d 30 71 6f 55 00 74 71 70 61 55 06 69 6e 6c 69 6e 65 71 71 89 75 68 43 dU.index-0qoU.tqpaU.inlineqq.uhC
0700 4b 08 68 44 68 02 68 29 5d 71 72 75 62 68 56 29 81 71 73 7d 71 74 28 68 2e 55 00 68 2f 68 2c 68 K.hDh.h)]qrubhV).qs}qt(h.U.h/h,h
0720 30 68 33 68 35 68 5a 68 37 7d 71 75 28 68 39 5d 71 76 68 3b 5d 71 77 68 3d 5d 71 78 68 3f 5d 71 0h3h5hZh7}qu(h9]qvh;]qwh=]qxh?]q
0740 79 68 6f 61 68 41 5d 71 7a 75 68 43 4b 08 68 44 68 02 68 29 5d 71 7b 75 62 63 64 6f 63 75 74 69 yhoahA]qzuhCK.hDh.h)]q{ubcdocuti
0760 6c 73 2e 6e 6f 64 65 73 0a 63 6f 6d 6d 65 6e 74 0a 71 7c 29 81 71 7d 7d 71 7e 28 68 2e 58 f6 00 ls.nodes.comment.q|).q}}q~(h.X..
0780 00 00 63 6c 61 73 73 20 53 6f 6d 65 43 6c 61 73 73 28 6f 62 6a 65 63 74 29 3a 0a 20 20 20 20 73 ..class.SomeClass(object):.....s
07a0 74 61 74 69 63 5f 6d 65 74 68 6f 64 20 3d 20 4e 6f 6e 65 0a 20 20 20 20 63 6c 61 73 73 5f 6d 65 tatic_method.=.None.....class_me
07c0 74 68 6f 64 20 3d 20 4e 6f 6e 65 0a 20 20 20 20 61 74 74 72 69 62 75 74 65 20 3d 20 4e 6f 6e 65 thod.=.None.....attribute.=.None
07e0 0a 0a 73 79 73 2e 6d 6f 64 75 6c 65 73 5b 27 70 61 63 6b 61 67 65 27 5d 20 3d 20 70 61 63 6b 61 ..sys.modules['package'].=.packa
0800 67 65 20 3d 20 4d 6f 63 6b 28 6e 61 6d 65 3d 27 70 61 63 6b 61 67 65 27 29 0a 73 79 73 2e 6d 6f ge.=.Mock(name='package').sys.mo
0820 64 75 6c 65 73 5b 27 70 61 63 6b 61 67 65 2e 6d 6f 64 75 6c 65 27 5d 20 3d 20 6d 6f 64 75 6c 65 dules['package.module'].=.module
0840 20 3d 20 70 61 63 6b 61 67 65 2e 6d 6f 64 75 6c 65 0a 73 79 73 2e 6d 6f 64 75 6c 65 73 5b 27 6d .=.package.module.sys.modules['m
0860 6f 64 75 6c 65 27 5d 20 3d 20 70 61 63 6b 61 67 65 2e 6d 6f 64 75 6c 65 71 7f 68 2f 68 2c 68 30 odule'].=.package.moduleq.h/h,h0
0880 68 33 68 35 55 07 63 6f 6d 6d 65 6e 74 71 80 68 37 7d 71 81 28 55 0c 74 65 73 74 6e 6f 64 65 74 h3h5U.commentq.h7}q.(U.testnodet
08a0 79 70 65 71 82 58 09 00 00 00 74 65 73 74 73 65 74 75 70 71 83 55 09 78 6d 6c 3a 73 70 61 63 65 ypeq.X....testsetupq.U.xml:space
08c0 71 84 55 08 70 72 65 73 65 72 76 65 71 85 68 3f 5d 71 86 68 3d 5d 71 87 68 39 5d 71 88 68 3b 5d q.U.preserveq.h?]q.h=]q.h9]q.h;]
08e0 71 89 68 41 5d 71 8a 55 06 67 72 6f 75 70 73 71 8b 5d 71 8c 55 07 64 65 66 61 75 6c 74 71 8d 61 q.hA]q.U.groupsq.]q.U.defaultq.a
0900 55 07 6f 70 74 69 6f 6e 73 71 8e 7d 71 8f 75 68 43 4b 09 68 44 68 02 68 29 5d 71 90 68 52 58 f6 U.optionsq.}q.uhCK.hDh.h)]q.hRX.
0920 00 00 00 63 6c 61 73 73 20 53 6f 6d 65 43 6c 61 73 73 28 6f 62 6a 65 63 74 29 3a 0a 20 20 20 20 ...class.SomeClass(object):.....
0940 73 74 61 74 69 63 5f 6d 65 74 68 6f 64 20 3d 20 4e 6f 6e 65 0a 20 20 20 20 63 6c 61 73 73 5f 6d static_method.=.None.....class_m
0960 65 74 68 6f 64 20 3d 20 4e 6f 6e 65 0a 20 20 20 20 61 74 74 72 69 62 75 74 65 20 3d 20 4e 6f 6e ethod.=.None.....attribute.=.Non
0980 65 0a 0a 73 79 73 2e 6d 6f 64 75 6c 65 73 5b 27 70 61 63 6b 61 67 65 27 5d 20 3d 20 70 61 63 6b e..sys.modules['package'].=.pack
09a0 61 67 65 20 3d 20 4d 6f 63 6b 28 6e 61 6d 65 3d 27 70 61 63 6b 61 67 65 27 29 0a 73 79 73 2e 6d age.=.Mock(name='package').sys.m
09c0 6f 64 75 6c 65 73 5b 27 70 61 63 6b 61 67 65 2e 6d 6f 64 75 6c 65 27 5d 20 3d 20 6d 6f 64 75 6c odules['package.module'].=.modul
09e0 65 20 3d 20 70 61 63 6b 61 67 65 2e 6d 6f 64 75 6c 65 0a 73 79 73 2e 6d 6f 64 75 6c 65 73 5b 27 e.=.package.module.sys.modules['
0a00 6d 6f 64 75 6c 65 27 5d 20 3d 20 70 61 63 6b 61 67 65 2e 6d 6f 64 75 6c 65 71 91 85 81 71 92 7d module'].=.package.moduleq...q.}
0a20 71 93 28 68 2e 55 00 68 2f 68 7d 75 62 61 75 62 68 2b 29 81 71 94 7d 71 95 28 68 2e 55 00 68 2f q.(h.U.h/h}ubaubh+).q.}q.(h.U.h/
0a40 68 2c 68 30 68 33 68 35 68 36 68 37 7d 71 96 28 68 39 5d 71 97 68 3b 5d 71 98 68 3d 5d 71 99 68 h,h0h3h5h6h7}q.(h9]q.h;]q.h=]q.h
0a60 3f 5d 71 9a 68 1d 61 68 41 5d 71 9b 68 07 61 75 68 43 4b 16 68 44 68 02 68 29 5d 71 9c 28 68 46 ?]q.h.ahA]q.h.auhCK.hDh.h)]q.(hF
0a80 29 81 71 9d 7d 71 9e 28 68 2e 58 0a 00 00 00 55 73 69 6e 67 20 4d 6f 63 6b 71 9f 68 2f 68 94 68 ).q.}q.(h.X....Using.Mockq.h/h.h
0aa0 30 68 33 68 35 68 4a 68 37 7d 71 a0 28 68 39 5d 71 a1 68 3b 5d 71 a2 68 3d 5d 71 a3 68 3f 5d 71 0h3h5hJh7}q.(h9]q.h;]q.h=]q.h?]q
0ac0 a4 68 41 5d 71 a5 75 68 43 4b 16 68 44 68 02 68 29 5d 71 a6 68 52 58 0a 00 00 00 55 73 69 6e 67 .hA]q.uhCK.hDh.h)]q.hRX....Using
0ae0 20 4d 6f 63 6b 71 a7 85 81 71 a8 7d 71 a9 28 68 2e 68 9f 68 2f 68 9d 75 62 61 75 62 68 2b 29 81 .Mockq...q.}q.(h.h.h/h.ubaubh+).
0b00 71 aa 7d 71 ab 28 68 2e 55 00 68 2f 68 94 68 30 68 33 68 35 68 36 68 37 7d 71 ac 28 68 39 5d 71 q.}q.(h.U.h/h.h0h3h5h6h7}q.(h9]q
0b20 ad 68 3b 5d 71 ae 68 3d 5d 71 af 68 3f 5d 71 b0 68 22 61 68 41 5d 71 b1 68 0c 61 75 68 43 4b 19 .h;]q.h=]q.h?]q.h"ahA]q.h.auhCK.
0b40 68 44 68 02 68 29 5d 71 b2 28 68 46 29 81 71 b3 7d 71 b4 28 68 2e 58 15 00 00 00 4d 6f 63 6b 20 hDh.h)]q.(hF).q.}q.(h.X....Mock.
0b60 50 61 74 63 68 69 6e 67 20 4d 65 74 68 6f 64 73 71 b5 68 2f 68 aa 68 30 68 33 68 35 68 4a 68 37 Patching.Methodsq.h/h.h0h3h5hJh7
0b80 7d 71 b6 28 68 39 5d 71 b7 68 3b 5d 71 b8 68 3d 5d 71 b9 68 3f 5d 71 ba 68 41 5d 71 bb 75 68 43 }q.(h9]q.h;]q.h=]q.h?]q.hA]q.uhC
0ba0 4b 19 68 44 68 02 68 29 5d 71 bc 68 52 58 15 00 00 00 4d 6f 63 6b 20 50 61 74 63 68 69 6e 67 20 K.hDh.h)]q.hRX....Mock.Patching.
0bc0 4d 65 74 68 6f 64 73 71 bd 85 81 71 be 7d 71 bf 28 68 2e 68 b5 68 2f 68 b3 75 62 61 75 62 63 64 Methodsq...q.}q.(h.h.h/h.ubaubcd
0be0 6f 63 75 74 69 6c 73 2e 6e 6f 64 65 73 0a 70 61 72 61 67 72 61 70 68 0a 71 c0 29 81 71 c1 7d 71 ocutils.nodes.paragraph.q.).q.}q
0c00 c2 28 68 2e 58 2e 00 00 00 43 6f 6d 6d 6f 6e 20 75 73 65 73 20 66 6f 72 20 3a 63 6c 61 73 73 3a .(h.X....Common.uses.for.:class:
0c20 60 4d 6f 63 6b 60 20 6f 62 6a 65 63 74 73 20 69 6e 63 6c 75 64 65 3a 71 c3 68 2f 68 aa 68 30 68 `Mock`.objects.include:q.h/h.h0h
0c40 33 68 35 55 09 70 61 72 61 67 72 61 70 68 71 c4 68 37 7d 71 c5 28 68 39 5d 71 c6 68 3b 5d 71 c7 3h5U.paragraphq.h7}q.(h9]q.h;]q.
0c60 68 3d 5d 71 c8 68 3f 5d 71 c9 68 41 5d 71 ca 75 68 43 4b 1b 68 44 68 02 68 29 5d 71 cb 28 68 52 h=]q.h?]q.hA]q.uhCK.hDh.h)]q.(hR
0c80 58 10 00 00 00 43 6f 6d 6d 6f 6e 20 75 73 65 73 20 66 6f 72 20 71 cc 85 81 71 cd 7d 71 ce 28 68 X....Common.uses.for.q...q.}q.(h
0ca0 2e 58 10 00 00 00 43 6f 6d 6d 6f 6e 20 75 73 65 73 20 66 6f 72 20 71 cf 68 2f 68 c1 75 62 63 73 .X....Common.uses.for.q.h/h.ubcs
0cc0 70 68 69 6e 78 2e 61 64 64 6e 6f 64 65 73 0a 70 65 6e 64 69 6e 67 5f 78 72 65 66 0a 71 d0 29 81 phinx.addnodes.pending_xref.q.).
0ce0 71 d1 7d 71 d2 28 68 2e 58 0d 00 00 00 3a 63 6c 61 73 73 3a 60 4d 6f 63 6b 60 71 d3 68 2f 68 c1 q.}q.(h.X....:class:`Mock`q.h/h.
0d00 68 30 68 33 68 35 55 0c 70 65 6e 64 69 6e 67 5f 78 72 65 66 71 d4 68 37 7d 71 d5 28 55 07 72 65 h0h3h5U.pending_xrefq.h7}q.(U.re
0d20 66 74 79 70 65 71 d6 58 05 00 00 00 63 6c 61 73 73 71 d7 55 07 72 65 66 77 61 72 6e 71 d8 89 55 ftypeq.X....classq.U.refwarnq..U
0d40 09 72 65 66 74 61 72 67 65 74 71 d9 58 04 00 00 00 4d 6f 63 6b 71 da 55 09 72 65 66 64 6f 6d 61 .reftargetq.X....Mockq.U.refdoma
0d60 69 6e 71 db 58 02 00 00 00 70 79 71 dc 68 3f 5d 71 dd 68 3d 5d 71 de 55 0b 72 65 66 65 78 70 6c inq.X....pyq.h?]q.h=]q.U.refexpl
0d80 69 63 69 74 71 df 89 68 39 5d 71 e0 68 3b 5d 71 e1 68 41 5d 71 e2 55 06 72 65 66 64 6f 63 71 e3 icitq..h9]q.h;]q.hA]q.U.refdocq.
0da0 55 0f 67 65 74 74 69 6e 67 2d 73 74 61 72 74 65 64 71 e4 55 08 70 79 3a 63 6c 61 73 73 71 e5 4e U.getting-startedq.U.py:classq.N
0dc0 55 09 70 79 3a 6d 6f 64 75 6c 65 71 e6 4e 75 68 43 4b 1b 68 29 5d 71 e7 63 64 6f 63 75 74 69 6c U.py:moduleq.NuhCK.h)]q.cdocutil
0de0 73 2e 6e 6f 64 65 73 0a 6c 69 74 65 72 61 6c 0a 71 e8 29 81 71 e9 7d 71 ea 28 68 2e 68 d3 68 37 s.nodes.literal.q.).q.}q.(h.h.h7
0e00 7d 71 eb 28 68 39 5d 71 ec 68 3b 5d 71 ed 28 55 04 78 72 65 66 71 ee 68 dc 58 08 00 00 00 70 79 }q.(h9]q.h;]q.(U.xrefq.h.X....py
0e20 2d 63 6c 61 73 73 71 ef 65 68 3d 5d 71 f0 68 3f 5d 71 f1 68 41 5d 71 f2 75 68 2f 68 d1 68 29 5d -classq.eh=]q.h?]q.hA]q.uh/h.h)]
0e40 71 f3 68 52 58 04 00 00 00 4d 6f 63 6b 71 f4 85 81 71 f5 7d 71 f6 28 68 2e 55 00 68 2f 68 e9 75 q.hRX....Mockq...q.}q.(h.U.h/h.u
0e60 62 61 68 35 55 07 6c 69 74 65 72 61 6c 71 f7 75 62 61 75 62 68 52 58 11 00 00 00 20 6f 62 6a 65 bah5U.literalq.ubaubhRX.....obje
0e80 63 74 73 20 69 6e 63 6c 75 64 65 3a 71 f8 85 81 71 f9 7d 71 fa 28 68 2e 58 11 00 00 00 20 6f 62 cts.include:q...q.}q.(h.X.....ob
0ea0 6a 65 63 74 73 20 69 6e 63 6c 75 64 65 3a 71 fb 68 2f 68 c1 75 62 65 75 62 63 64 6f 63 75 74 69 jects.include:q.h/h.ubeubcdocuti
0ec0 6c 73 2e 6e 6f 64 65 73 0a 62 75 6c 6c 65 74 5f 6c 69 73 74 0a 71 fc 29 81 71 fd 7d 71 fe 28 68 ls.nodes.bullet_list.q.).q.}q.(h
0ee0 2e 55 00 68 2f 68 aa 68 30 68 33 68 35 55 0b 62 75 6c 6c 65 74 5f 6c 69 73 74 71 ff 68 37 7d 72 .U.h/h.h0h3h5U.bullet_listq.h7}r
0f00 00 01 00 00 28 55 06 62 75 6c 6c 65 74 72 01 01 00 00 58 01 00 00 00 2a 68 3f 5d 72 02 01 00 00 ....(U.bulletr....X....*h?]r....
0f20 68 3d 5d 72 03 01 00 00 68 39 5d 72 04 01 00 00 68 3b 5d 72 05 01 00 00 68 41 5d 72 06 01 00 00 h=]r....h9]r....h;]r....hA]r....
0f40 75 68 43 4b 1d 68 44 68 02 68 29 5d 72 07 01 00 00 28 63 64 6f 63 75 74 69 6c 73 2e 6e 6f 64 65 uhCK.hDh.h)]r....(cdocutils.node
0f60 73 0a 6c 69 73 74 5f 69 74 65 6d 0a 72 08 01 00 00 29 81 72 09 01 00 00 7d 72 0a 01 00 00 28 68 s.list_item.r....).r....}r....(h
0f80 2e 58 10 00 00 00 50 61 74 63 68 69 6e 67 20 6d 65 74 68 6f 64 73 72 0b 01 00 00 68 2f 68 fd 68 .X....Patching.methodsr....h/h.h
0fa0 30 68 33 68 35 55 09 6c 69 73 74 5f 69 74 65 6d 72 0c 01 00 00 68 37 7d 72 0d 01 00 00 28 68 39 0h3h5U.list_itemr....h7}r....(h9
0fc0 5d 72 0e 01 00 00 68 3b 5d 72 0f 01 00 00 68 3d 5d 72 10 01 00 00 68 3f 5d 72 11 01 00 00 68 41 ]r....h;]r....h=]r....h?]r....hA
0fe0 5d 72 12 01 00 00 75 68 43 4e 68 44 68 02 68 29 5d 72 13 01 00 00 68 c0 29 81 72 14 01 00 00 7d ]r....uhCNhDh.h)]r....h.).r....}
1000 72 15 01 00 00 28 68 2e 6a 0b 01 00 00 68 2f 6a 09 01 00 00 68 30 68 33 68 35 68 c4 68 37 7d 72 r....(h.j....h/j....h0h3h5h.h7}r
1020 16 01 00 00 28 68 39 5d 72 17 01 00 00 68 3b 5d 72 18 01 00 00 68 3d 5d 72 19 01 00 00 68 3f 5d ....(h9]r....h;]r....h=]r....h?]
1040 72 1a 01 00 00 68 41 5d 72 1b 01 00 00 75 68 43 4b 1d 68 29 5d 72 1c 01 00 00 68 52 58 10 00 00 r....hA]r....uhCK.h)]r....hRX...
1060 00 50 61 74 63 68 69 6e 67 20 6d 65 74 68 6f 64 73 72 1d 01 00 00 85 81 72 1e 01 00 00 7d 72 1f .Patching.methodsr......r....}r.
1080 01 00 00 28 68 2e 6a 0b 01 00 00 68 2f 6a 14 01 00 00 75 62 61 75 62 61 75 62 6a 08 01 00 00 29 ...(h.j....h/j....ubaubaubj....)
10a0 81 72 20 01 00 00 7d 72 21 01 00 00 28 68 2e 58 22 00 00 00 52 65 63 6f 72 64 69 6e 67 20 6d 65 .r....}r!...(h.X"...Recording.me
10c0 74 68 6f 64 20 63 61 6c 6c 73 20 6f 6e 20 6f 62 6a 65 63 74 73 0a 72 22 01 00 00 68 2f 68 fd 68 thod.calls.on.objects.r"...h/h.h
10e0 30 68 33 68 35 6a 0c 01 00 00 68 37 7d 72 23 01 00 00 28 68 39 5d 72 24 01 00 00 68 3b 5d 72 25 0h3h5j....h7}r#...(h9]r$...h;]r%
1100 01 00 00 68 3d 5d 72 26 01 00 00 68 3f 5d 72 27 01 00 00 68 41 5d 72 28 01 00 00 75 68 43 4e 68 ...h=]r&...h?]r'...hA]r(...uhCNh
1120 44 68 02 68 29 5d 72 29 01 00 00 68 c0 29 81 72 2a 01 00 00 7d 72 2b 01 00 00 28 68 2e 58 21 00 Dh.h)]r)...h.).r*...}r+...(h.X!.
1140 00 00 52 65 63 6f 72 64 69 6e 67 20 6d 65 74 68 6f 64 20 63 61 6c 6c 73 20 6f 6e 20 6f 62 6a 65 ..Recording.method.calls.on.obje
1160 63 74 73 72 2c 01 00 00 68 2f 6a 20 01 00 00 68 30 68 33 68 35 68 c4 68 37 7d 72 2d 01 00 00 28 ctsr,...h/j....h0h3h5h.h7}r-...(
1180 68 39 5d 72 2e 01 00 00 68 3b 5d 72 2f 01 00 00 68 3d 5d 72 30 01 00 00 68 3f 5d 72 31 01 00 00 h9]r....h;]r/...h=]r0...h?]r1...
11a0 68 41 5d 72 32 01 00 00 75 68 43 4b 1e 68 29 5d 72 33 01 00 00 68 52 58 21 00 00 00 52 65 63 6f hA]r2...uhCK.h)]r3...hRX!...Reco
11c0 72 64 69 6e 67 20 6d 65 74 68 6f 64 20 63 61 6c 6c 73 20 6f 6e 20 6f 62 6a 65 63 74 73 72 34 01 rding.method.calls.on.objectsr4.
11e0 00 00 85 81 72 35 01 00 00 7d 72 36 01 00 00 28 68 2e 6a 2c 01 00 00 68 2f 6a 2a 01 00 00 75 62 ....r5...}r6...(h.j,...h/j*...ub
1200 61 75 62 61 75 62 65 75 62 68 c0 29 81 72 37 01 00 00 7d 72 38 01 00 00 28 68 2e 58 84 00 00 00 aubaubeubh.).r7...}r8...(h.X....
1220 59 6f 75 20 6d 69 67 68 74 20 77 61 6e 74 20 74 6f 20 72 65 70 6c 61 63 65 20 61 20 6d 65 74 68 You.might.want.to.replace.a.meth
1240 6f 64 20 6f 6e 20 61 6e 20 6f 62 6a 65 63 74 20 74 6f 20 63 68 65 63 6b 20 74 68 61 74 0a 69 74 od.on.an.object.to.check.that.it
1260 20 69 73 20 63 61 6c 6c 65 64 20 77 69 74 68 20 74 68 65 20 63 6f 72 72 65 63 74 20 61 72 67 75 .is.called.with.the.correct.argu
1280 6d 65 6e 74 73 20 62 79 20 61 6e 6f 74 68 65 72 20 70 61 72 74 20 6f 66 20 74 68 65 20 73 79 73 ments.by.another.part.of.the.sys
12a0 74 65 6d 3a 72 39 01 00 00 68 2f 68 aa 68 30 68 33 68 35 68 c4 68 37 7d 72 3a 01 00 00 28 68 39 tem:r9...h/h.h0h3h5h.h7}r:...(h9
12c0 5d 72 3b 01 00 00 68 3b 5d 72 3c 01 00 00 68 3d 5d 72 3d 01 00 00 68 3f 5d 72 3e 01 00 00 68 41 ]r;...h;]r<...h=]r=...h?]r>...hA
12e0 5d 72 3f 01 00 00 75 68 43 4b 20 68 44 68 02 68 29 5d 72 40 01 00 00 68 52 58 84 00 00 00 59 6f ]r?...uhCK.hDh.h)]r@...hRX....Yo
1300 75 20 6d 69 67 68 74 20 77 61 6e 74 20 74 6f 20 72 65 70 6c 61 63 65 20 61 20 6d 65 74 68 6f 64 u.might.want.to.replace.a.method
1320 20 6f 6e 20 61 6e 20 6f 62 6a 65 63 74 20 74 6f 20 63 68 65 63 6b 20 74 68 61 74 0a 69 74 20 69 .on.an.object.to.check.that.it.i
1340 73 20 63 61 6c 6c 65 64 20 77 69 74 68 20 74 68 65 20 63 6f 72 72 65 63 74 20 61 72 67 75 6d 65 s.called.with.the.correct.argume
1360 6e 74 73 20 62 79 20 61 6e 6f 74 68 65 72 20 70 61 72 74 20 6f 66 20 74 68 65 20 73 79 73 74 65 nts.by.another.part.of.the.syste
1380 6d 3a 72 41 01 00 00 85 81 72 42 01 00 00 7d 72 43 01 00 00 28 68 2e 6a 39 01 00 00 68 2f 6a 37 m:rA.....rB...}rC...(h.j9...h/j7
13a0 01 00 00 75 62 61 75 62 63 64 6f 63 75 74 69 6c 73 2e 6e 6f 64 65 73 0a 6c 69 74 65 72 61 6c 5f ...ubaubcdocutils.nodes.literal_
13c0 62 6c 6f 63 6b 0a 72 44 01 00 00 29 81 72 45 01 00 00 7d 72 46 01 00 00 28 68 2e 58 8c 00 00 00 block.rD...).rE...}rF...(h.X....
13e0 3e 3e 3e 20 72 65 61 6c 20 3d 20 53 6f 6d 65 43 6c 61 73 73 28 29 0a 3e 3e 3e 20 72 65 61 6c 2e >>>.real.=.SomeClass().>>>.real.
1400 6d 65 74 68 6f 64 20 3d 20 4d 61 67 69 63 4d 6f 63 6b 28 6e 61 6d 65 3d 27 6d 65 74 68 6f 64 27 method.=.MagicMock(name='method'
1420 29 0a 3e 3e 3e 20 72 65 61 6c 2e 6d 65 74 68 6f 64 28 33 2c 20 34 2c 20 35 2c 20 6b 65 79 3d 27 ).>>>.real.method(3,.4,.5,.key='
1440 76 61 6c 75 65 27 29 0a 3c 4d 61 67 69 63 4d 6f 63 6b 20 6e 61 6d 65 3d 27 6d 65 74 68 6f 64 28 value').<MagicMock.name='method(
1460 29 27 20 69 64 3d 27 2e 2e 2e 27 3e 72 47 01 00 00 68 2f 68 aa 68 30 68 33 68 35 55 0d 6c 69 74 )'.id='...'>rG...h/h.h0h3h5U.lit
1480 65 72 61 6c 5f 62 6c 6f 63 6b 72 48 01 00 00 68 37 7d 72 49 01 00 00 28 55 0c 74 65 73 74 6e 6f eral_blockrH...h7}rI...(U.testno
14a0 64 65 74 79 70 65 72 4a 01 00 00 58 07 00 00 00 64 6f 63 74 65 73 74 72 4b 01 00 00 68 84 68 85 detyperJ...X....doctestrK...h.h.
14c0 68 3f 5d 72 4c 01 00 00 68 3d 5d 72 4d 01 00 00 68 39 5d 72 4e 01 00 00 68 3b 5d 72 4f 01 00 00 h?]rL...h=]rM...h9]rN...h;]rO...
14e0 68 41 5d 72 50 01 00 00 55 06 67 72 6f 75 70 73 72 51 01 00 00 5d 72 52 01 00 00 68 8d 61 68 8e hA]rP...U.groupsrQ...]rR...h.ah.
1500 7d 72 53 01 00 00 75 68 43 4b 23 68 44 68 02 68 29 5d 72 54 01 00 00 68 52 58 8c 00 00 00 3e 3e }rS...uhCK#hDh.h)]rT...hRX....>>
1520 3e 20 72 65 61 6c 20 3d 20 53 6f 6d 65 43 6c 61 73 73 28 29 0a 3e 3e 3e 20 72 65 61 6c 2e 6d 65 >.real.=.SomeClass().>>>.real.me
1540 74 68 6f 64 20 3d 20 4d 61 67 69 63 4d 6f 63 6b 28 6e 61 6d 65 3d 27 6d 65 74 68 6f 64 27 29 0a thod.=.MagicMock(name='method').
1560 3e 3e 3e 20 72 65 61 6c 2e 6d 65 74 68 6f 64 28 33 2c 20 34 2c 20 35 2c 20 6b 65 79 3d 27 76 61 >>>.real.method(3,.4,.5,.key='va
1580 6c 75 65 27 29 0a 3c 4d 61 67 69 63 4d 6f 63 6b 20 6e 61 6d 65 3d 27 6d 65 74 68 6f 64 28 29 27 lue').<MagicMock.name='method()'
15a0 20 69 64 3d 27 2e 2e 2e 27 3e 72 55 01 00 00 85 81 72 56 01 00 00 7d 72 57 01 00 00 28 68 2e 55 .id='...'>rU.....rV...}rW...(h.U
15c0 00 68 2f 6a 45 01 00 00 75 62 61 75 62 68 c0 29 81 72 58 01 00 00 7d 72 59 01 00 00 28 68 2e 58 .h/jE...ubaubh.).rX...}rY...(h.X
15e0 97 00 00 00 4f 6e 63 65 20 6f 75 72 20 6d 6f 63 6b 20 68 61 73 20 62 65 65 6e 20 75 73 65 64 20 ....Once.our.mock.has.been.used.
1600 28 60 72 65 61 6c 2e 6d 65 74 68 6f 64 60 20 69 6e 20 74 68 69 73 20 65 78 61 6d 70 6c 65 29 20 (`real.method`.in.this.example).
1620 69 74 20 68 61 73 20 6d 65 74 68 6f 64 73 0a 61 6e 64 20 61 74 74 72 69 62 75 74 65 73 20 74 68 it.has.methods.and.attributes.th
1640 61 74 20 61 6c 6c 6f 77 20 79 6f 75 20 74 6f 20 6d 61 6b 65 20 61 73 73 65 72 74 69 6f 6e 73 20 at.allow.you.to.make.assertions.
1660 61 62 6f 75 74 20 68 6f 77 20 69 74 20 68 61 73 20 62 65 65 6e 20 75 73 65 64 2e 72 5a 01 00 00 about.how.it.has.been.used.rZ...
1680 68 2f 68 aa 68 30 68 33 68 35 68 c4 68 37 7d 72 5b 01 00 00 28 68 39 5d 72 5c 01 00 00 68 3b 5d h/h.h0h3h5h.h7}r[...(h9]r\...h;]
16a0 72 5d 01 00 00 68 3d 5d 72 5e 01 00 00 68 3f 5d 72 5f 01 00 00 68 41 5d 72 60 01 00 00 75 68 43 r]...h=]r^...h?]r_...hA]r`...uhC
16c0 4b 2a 68 44 68 02 68 29 5d 72 61 01 00 00 28 68 52 58 1d 00 00 00 4f 6e 63 65 20 6f 75 72 20 6d K*hDh.h)]ra...(hRX....Once.our.m
16e0 6f 63 6b 20 68 61 73 20 62 65 65 6e 20 75 73 65 64 20 28 72 62 01 00 00 85 81 72 63 01 00 00 7d ock.has.been.used.(rb.....rc...}
1700 72 64 01 00 00 28 68 2e 58 1d 00 00 00 4f 6e 63 65 20 6f 75 72 20 6d 6f 63 6b 20 68 61 73 20 62 rd...(h.X....Once.our.mock.has.b
1720 65 65 6e 20 75 73 65 64 20 28 72 65 01 00 00 68 2f 6a 58 01 00 00 75 62 63 64 6f 63 75 74 69 6c een.used.(re...h/jX...ubcdocutil
1740 73 2e 6e 6f 64 65 73 0a 74 69 74 6c 65 5f 72 65 66 65 72 65 6e 63 65 0a 72 66 01 00 00 29 81 72 s.nodes.title_reference.rf...).r
1760 67 01 00 00 7d 72 68 01 00 00 28 68 2e 58 0d 00 00 00 60 72 65 61 6c 2e 6d 65 74 68 6f 64 60 72 g...}rh...(h.X....`real.method`r
1780 69 01 00 00 68 37 7d 72 6a 01 00 00 28 68 39 5d 72 6b 01 00 00 68 3b 5d 72 6c 01 00 00 68 3d 5d i...h7}rj...(h9]rk...h;]rl...h=]
17a0 72 6d 01 00 00 68 3f 5d 72 6e 01 00 00 68 41 5d 72 6f 01 00 00 75 68 2f 6a 58 01 00 00 68 29 5d rm...h?]rn...hA]ro...uh/jX...h)]
17c0 72 70 01 00 00 68 52 58 0b 00 00 00 72 65 61 6c 2e 6d 65 74 68 6f 64 72 71 01 00 00 85 81 72 72 rp...hRX....real.methodrq.....rr
17e0 01 00 00 7d 72 73 01 00 00 28 68 2e 55 00 68 2f 6a 67 01 00 00 75 62 61 68 35 55 0f 74 69 74 6c ...}rs...(h.U.h/jg...ubah5U.titl
1800 65 5f 72 65 66 65 72 65 6e 63 65 72 74 01 00 00 75 62 68 52 58 6d 00 00 00 20 69 6e 20 74 68 69 e_referencert...ubhRXm....in.thi
1820 73 20 65 78 61 6d 70 6c 65 29 20 69 74 20 68 61 73 20 6d 65 74 68 6f 64 73 0a 61 6e 64 20 61 74 s.example).it.has.methods.and.at
1840 74 72 69 62 75 74 65 73 20 74 68 61 74 20 61 6c 6c 6f 77 20 79 6f 75 20 74 6f 20 6d 61 6b 65 20 tributes.that.allow.you.to.make.
1860 61 73 73 65 72 74 69 6f 6e 73 20 61 62 6f 75 74 20 68 6f 77 20 69 74 20 68 61 73 20 62 65 65 6e assertions.about.how.it.has.been
1880 20 75 73 65 64 2e 72 75 01 00 00 85 81 72 76 01 00 00 7d 72 77 01 00 00 28 68 2e 58 6d 00 00 00 .used.ru.....rv...}rw...(h.Xm...
18a0 20 69 6e 20 74 68 69 73 20 65 78 61 6d 70 6c 65 29 20 69 74 20 68 61 73 20 6d 65 74 68 6f 64 73 .in.this.example).it.has.methods
18c0 0a 61 6e 64 20 61 74 74 72 69 62 75 74 65 73 20 74 68 61 74 20 61 6c 6c 6f 77 20 79 6f 75 20 74 .and.attributes.that.allow.you.t
18e0 6f 20 6d 61 6b 65 20 61 73 73 65 72 74 69 6f 6e 73 20 61 62 6f 75 74 20 68 6f 77 20 69 74 20 68 o.make.assertions.about.how.it.h
1900 61 73 20 62 65 65 6e 20 75 73 65 64 2e 72 78 01 00 00 68 2f 6a 58 01 00 00 75 62 65 75 62 63 64 as.been.used.rx...h/jX...ubeubcd
1920 6f 63 75 74 69 6c 73 2e 6e 6f 64 65 73 0a 6e 6f 74 65 0a 72 79 01 00 00 29 81 72 7a 01 00 00 7d ocutils.nodes.note.ry...).rz...}
1940 72 7b 01 00 00 28 68 2e 58 b7 00 00 00 49 6e 20 6d 6f 73 74 20 6f 66 20 74 68 65 73 65 20 65 78 r{...(h.X....In.most.of.these.ex
1960 61 6d 70 6c 65 73 20 74 68 65 20 3a 63 6c 61 73 73 3a 60 4d 6f 63 6b 60 20 61 6e 64 20 3a 63 6c amples.the.:class:`Mock`.and.:cl
1980 61 73 73 3a 60 4d 61 67 69 63 4d 6f 63 6b 60 20 63 6c 61 73 73 65 73 0a 61 72 65 20 69 6e 74 65 ass:`MagicMock`.classes.are.inte
19a0 72 63 68 61 6e 67 65 61 62 6c 65 2e 20 41 73 20 74 68 65 20 60 4d 61 67 69 63 4d 6f 63 6b 60 20 rchangeable..As.the.`MagicMock`.
19c0 69 73 20 74 68 65 20 6d 6f 72 65 20 63 61 70 61 62 6c 65 20 63 6c 61 73 73 20 69 74 20 6d 61 6b is.the.more.capable.class.it.mak
19e0 65 73 0a 61 20 73 65 6e 73 69 62 6c 65 20 6f 6e 65 20 74 6f 20 75 73 65 20 62 79 20 64 65 66 61 es.a.sensible.one.to.use.by.defa
1a00 75 6c 74 2e 72 7c 01 00 00 68 2f 68 aa 68 30 68 33 68 35 55 04 6e 6f 74 65 72 7d 01 00 00 68 37 ult.r|...h/h.h0h3h5U.noter}...h7
1a20 7d 72 7e 01 00 00 28 68 39 5d 72 7f 01 00 00 68 3b 5d 72 80 01 00 00 68 3d 5d 72 81 01 00 00 68 }r~...(h9]r....h;]r....h=]r....h
1a40 3f 5d 72 82 01 00 00 68 41 5d 72 83 01 00 00 75 68 43 4e 68 44 68 02 68 29 5d 72 84 01 00 00 68 ?]r....hA]r....uhCNhDh.h)]r....h
1a60 c0 29 81 72 85 01 00 00 7d 72 86 01 00 00 28 68 2e 58 b7 00 00 00 49 6e 20 6d 6f 73 74 20 6f 66 .).r....}r....(h.X....In.most.of
1a80 20 74 68 65 73 65 20 65 78 61 6d 70 6c 65 73 20 74 68 65 20 3a 63 6c 61 73 73 3a 60 4d 6f 63 6b .these.examples.the.:class:`Mock
1aa0 60 20 61 6e 64 20 3a 63 6c 61 73 73 3a 60 4d 61 67 69 63 4d 6f 63 6b 60 20 63 6c 61 73 73 65 73 `.and.:class:`MagicMock`.classes
1ac0 0a 61 72 65 20 69 6e 74 65 72 63 68 61 6e 67 65 61 62 6c 65 2e 20 41 73 20 74 68 65 20 60 4d 61 .are.interchangeable..As.the.`Ma
1ae0 67 69 63 4d 6f 63 6b 60 20 69 73 20 74 68 65 20 6d 6f 72 65 20 63 61 70 61 62 6c 65 20 63 6c 61 gicMock`.is.the.more.capable.cla
1b00 73 73 20 69 74 20 6d 61 6b 65 73 0a 61 20 73 65 6e 73 69 62 6c 65 20 6f 6e 65 20 74 6f 20 75 73 ss.it.makes.a.sensible.one.to.us
1b20 65 20 62 79 20 64 65 66 61 75 6c 74 2e 72 87 01 00 00 68 2f 6a 7a 01 00 00 68 30 68 33 68 35 68 e.by.default.r....h/jz...h0h3h5h
1b40 c4 68 37 7d 72 88 01 00 00 28 68 39 5d 72 89 01 00 00 68 3b 5d 72 8a 01 00 00 68 3d 5d 72 8b 01 .h7}r....(h9]r....h;]r....h=]r..
1b60 00 00 68 3f 5d 72 8c 01 00 00 68 41 5d 72 8d 01 00 00 75 68 43 4b 2f 68 29 5d 72 8e 01 00 00 28 ..h?]r....hA]r....uhCK/h)]r....(
1b80 68 52 58 1e 00 00 00 49 6e 20 6d 6f 73 74 20 6f 66 20 74 68 65 73 65 20 65 78 61 6d 70 6c 65 73 hRX....In.most.of.these.examples
1ba0 20 74 68 65 20 72 8f 01 00 00 85 81 72 90 01 00 00 7d 72 91 01 00 00 28 68 2e 58 1e 00 00 00 49 .the.r......r....}r....(h.X....I
1bc0 6e 20 6d 6f 73 74 20 6f 66 20 74 68 65 73 65 20 65 78 61 6d 70 6c 65 73 20 74 68 65 20 72 92 01 n.most.of.these.examples.the.r..
1be0 00 00 68 2f 6a 85 01 00 00 75 62 68 d0 29 81 72 93 01 00 00 7d 72 94 01 00 00 28 68 2e 58 0d 00 ..h/j....ubh.).r....}r....(h.X..
1c00 00 00 3a 63 6c 61 73 73 3a 60 4d 6f 63 6b 60 72 95 01 00 00 68 2f 6a 85 01 00 00 68 30 68 33 68 ..:class:`Mock`r....h/j....h0h3h
1c20 35 68 d4 68 37 7d 72 96 01 00 00 28 55 07 72 65 66 74 79 70 65 72 97 01 00 00 58 05 00 00 00 63 5h.h7}r....(U.reftyper....X....c
1c40 6c 61 73 73 72 98 01 00 00 68 d8 89 68 d9 58 04 00 00 00 4d 6f 63 6b 72 99 01 00 00 55 09 72 65 lassr....h..h.X....Mockr....U.re
1c60 66 64 6f 6d 61 69 6e 72 9a 01 00 00 58 02 00 00 00 70 79 72 9b 01 00 00 68 3f 5d 72 9c 01 00 00 fdomainr....X....pyr....h?]r....
1c80 68 3d 5d 72 9d 01 00 00 55 0b 72 65 66 65 78 70 6c 69 63 69 74 72 9e 01 00 00 89 68 39 5d 72 9f h=]r....U.refexplicitr.....h9]r.
1ca0 01 00 00 68 3b 5d 72 a0 01 00 00 68 41 5d 72 a1 01 00 00 68 e3 68 e4 68 e5 4e 68 e6 4e 75 68 43 ...h;]r....hA]r....h.h.h.Nh.NuhC
1cc0 4b 2f 68 29 5d 72 a2 01 00 00 68 e8 29 81 72 a3 01 00 00 7d 72 a4 01 00 00 28 68 2e 6a 95 01 00 K/h)]r....h.).r....}r....(h.j...
1ce0 00 68 37 7d 72 a5 01 00 00 28 68 39 5d 72 a6 01 00 00 68 3b 5d 72 a7 01 00 00 28 68 ee 6a 9b 01 .h7}r....(h9]r....h;]r....(h.j..
1d00 00 00 58 08 00 00 00 70 79 2d 63 6c 61 73 73 72 a8 01 00 00 65 68 3d 5d 72 a9 01 00 00 68 3f 5d ..X....py-classr....eh=]r....h?]
1d20 72 aa 01 00 00 68 41 5d 72 ab 01 00 00 75 68 2f 6a 93 01 00 00 68 29 5d 72 ac 01 00 00 68 52 58 r....hA]r....uh/j....h)]r....hRX
1d40 04 00 00 00 4d 6f 63 6b 72 ad 01 00 00 85 81 72 ae 01 00 00 7d 72 af 01 00 00 28 68 2e 55 00 68 ....Mockr......r....}r....(h.U.h
1d60 2f 6a a3 01 00 00 75 62 61 68 35 68 f7 75 62 61 75 62 68 52 58 05 00 00 00 20 61 6e 64 20 72 b0 /j....ubah5h.ubaubhRX.....and.r.
1d80 01 00 00 85 81 72 b1 01 00 00 7d 72 b2 01 00 00 28 68 2e 58 05 00 00 00 20 61 6e 64 20 72 b3 01 .....r....}r....(h.X.....and.r..
1da0 00 00 68 2f 6a 85 01 00 00 75 62 68 d0 29 81 72 b4 01 00 00 7d 72 b5 01 00 00 28 68 2e 58 12 00 ..h/j....ubh.).r....}r....(h.X..
1dc0 00 00 3a 63 6c 61 73 73 3a 60 4d 61 67 69 63 4d 6f 63 6b 60 72 b6 01 00 00 68 2f 6a 85 01 00 00 ..:class:`MagicMock`r....h/j....
1de0 68 30 68 33 68 35 68 d4 68 37 7d 72 b7 01 00 00 28 55 07 72 65 66 74 79 70 65 72 b8 01 00 00 58 h0h3h5h.h7}r....(U.reftyper....X
1e00 05 00 00 00 63 6c 61 73 73 72 b9 01 00 00 68 d8 89 68 d9 58 09 00 00 00 4d 61 67 69 63 4d 6f 63 ....classr....h..h.X....MagicMoc
1e20 6b 72 ba 01 00 00 55 09 72 65 66 64 6f 6d 61 69 6e 72 bb 01 00 00 58 02 00 00 00 70 79 72 bc 01 kr....U.refdomainr....X....pyr..
1e40 00 00 68 3f 5d 72 bd 01 00 00 68 3d 5d 72 be 01 00 00 55 0b 72 65 66 65 78 70 6c 69 63 69 74 72 ..h?]r....h=]r....U.refexplicitr
1e60 bf 01 00 00 89 68 39 5d 72 c0 01 00 00 68 3b 5d 72 c1 01 00 00 68 41 5d 72 c2 01 00 00 68 e3 68 .....h9]r....h;]r....hA]r....h.h
1e80 e4 68 e5 4e 68 e6 4e 75 68 43 4b 2f 68 29 5d 72 c3 01 00 00 68 e8 29 81 72 c4 01 00 00 7d 72 c5 .h.Nh.NuhCK/h)]r....h.).r....}r.
1ea0 01 00 00 28 68 2e 6a b6 01 00 00 68 37 7d 72 c6 01 00 00 28 68 39 5d 72 c7 01 00 00 68 3b 5d 72 ...(h.j....h7}r....(h9]r....h;]r
1ec0 c8 01 00 00 28 68 ee 6a bc 01 00 00 58 08 00 00 00 70 79 2d 63 6c 61 73 73 72 c9 01 00 00 65 68 ....(h.j....X....py-classr....eh
1ee0 3d 5d 72 ca 01 00 00 68 3f 5d 72 cb 01 00 00 68 41 5d 72 cc 01 00 00 75 68 2f 6a b4 01 00 00 68 =]r....h?]r....hA]r....uh/j....h
1f00 29 5d 72 cd 01 00 00 68 52 58 09 00 00 00 4d 61 67 69 63 4d 6f 63 6b 72 ce 01 00 00 85 81 72 cf )]r....hRX....MagicMockr......r.
1f20 01 00 00 7d 72 d0 01 00 00 28 68 2e 55 00 68 2f 6a c4 01 00 00 75 62 61 68 35 68 f7 75 62 61 75 ...}r....(h.U.h/j....ubah5h.ubau
1f40 62 68 52 58 25 00 00 00 20 63 6c 61 73 73 65 73 0a 61 72 65 20 69 6e 74 65 72 63 68 61 6e 67 65 bhRX%....classes.are.interchange
1f60 61 62 6c 65 2e 20 41 73 20 74 68 65 20 72 d1 01 00 00 85 81 72 d2 01 00 00 7d 72 d3 01 00 00 28 able..As.the.r......r....}r....(
1f80 68 2e 58 25 00 00 00 20 63 6c 61 73 73 65 73 0a 61 72 65 20 69 6e 74 65 72 63 68 61 6e 67 65 61 h.X%....classes.are.interchangea
1fa0 62 6c 65 2e 20 41 73 20 74 68 65 20 72 d4 01 00 00 68 2f 6a 85 01 00 00 75 62 6a 66 01 00 00 29 ble..As.the.r....h/j....ubjf...)
1fc0 81 72 d5 01 00 00 7d 72 d6 01 00 00 28 68 2e 58 0b 00 00 00 60 4d 61 67 69 63 4d 6f 63 6b 60 72 .r....}r....(h.X....`MagicMock`r
1fe0 d7 01 00 00 68 37 7d 72 d8 01 00 00 28 68 39 5d 72 d9 01 00 00 68 3b 5d 72 da 01 00 00 68 3d 5d ....h7}r....(h9]r....h;]r....h=]
2000 72 db 01 00 00 68 3f 5d 72 dc 01 00 00 68 41 5d 72 dd 01 00 00 75 68 2f 6a 85 01 00 00 68 29 5d r....h?]r....hA]r....uh/j....h)]
2020 72 de 01 00 00 68 52 58 09 00 00 00 4d 61 67 69 63 4d 6f 63 6b 72 df 01 00 00 85 81 72 e0 01 00 r....hRX....MagicMockr......r...
2040 00 7d 72 e1 01 00 00 28 68 2e 55 00 68 2f 6a d5 01 00 00 75 62 61 68 35 6a 74 01 00 00 75 62 68 .}r....(h.U.h/j....ubah5jt...ubh
2060 52 58 45 00 00 00 20 69 73 20 74 68 65 20 6d 6f 72 65 20 63 61 70 61 62 6c 65 20 63 6c 61 73 73 RXE....is.the.more.capable.class
2080 20 69 74 20 6d 61 6b 65 73 0a 61 20 73 65 6e 73 69 62 6c 65 20 6f 6e 65 20 74 6f 20 75 73 65 20 .it.makes.a.sensible.one.to.use.
20a0 62 79 20 64 65 66 61 75 6c 74 2e 72 e2 01 00 00 85 81 72 e3 01 00 00 7d 72 e4 01 00 00 28 68 2e by.default.r......r....}r....(h.
20c0 58 45 00 00 00 20 69 73 20 74 68 65 20 6d 6f 72 65 20 63 61 70 61 62 6c 65 20 63 6c 61 73 73 20 XE....is.the.more.capable.class.
20e0 69 74 20 6d 61 6b 65 73 0a 61 20 73 65 6e 73 69 62 6c 65 20 6f 6e 65 20 74 6f 20 75 73 65 20 62 it.makes.a.sensible.one.to.use.b
2100 79 20 64 65 66 61 75 6c 74 2e 72 e5 01 00 00 68 2f 6a 85 01 00 00 75 62 65 75 62 61 75 62 68 c0 y.default.r....h/j....ubeubaubh.
2120 29 81 72 e6 01 00 00 7d 72 e7 01 00 00 28 68 2e 58 fb 00 00 00 4f 6e 63 65 20 74 68 65 20 6d 6f ).r....}r....(h.X....Once.the.mo
2140 63 6b 20 68 61 73 20 62 65 65 6e 20 63 61 6c 6c 65 64 20 69 74 73 20 3a 61 74 74 72 3a 60 7e 4d ck.has.been.called.its.:attr:`~M
2160 6f 63 6b 2e 63 61 6c 6c 65 64 60 20 61 74 74 72 69 62 75 74 65 20 69 73 20 73 65 74 20 74 6f 0a ock.called`.attribute.is.set.to.
2180 60 54 72 75 65 60 2e 20 4d 6f 72 65 20 69 6d 70 6f 72 74 61 6e 74 6c 79 20 77 65 20 63 61 6e 20 `True`..More.importantly.we.can.
21a0 75 73 65 20 74 68 65 20 3a 6d 65 74 68 3a 60 7e 4d 6f 63 6b 2e 61 73 73 65 72 74 5f 63 61 6c 6c use.the.:meth:`~Mock.assert_call
21c0 65 64 5f 77 69 74 68 60 20 6f 72 0a 3a 6d 65 74 68 3a 60 7e 4d 6f 63 6b 2e 61 73 73 65 72 74 5f ed_with`.or.:meth:`~Mock.assert_
21e0 63 61 6c 6c 65 64 5f 6f 6e 63 65 5f 77 69 74 68 60 20 6d 65 74 68 6f 64 20 74 6f 20 63 68 65 63 called_once_with`.method.to.chec
2200 6b 20 74 68 61 74 20 69 74 20 77 61 73 20 63 61 6c 6c 65 64 20 77 69 74 68 0a 74 68 65 20 63 6f k.that.it.was.called.with.the.co
2220 72 72 65 63 74 20 61 72 67 75 6d 65 6e 74 73 2e 72 e8 01 00 00 68 2f 68 aa 68 30 68 33 68 35 68 rrect.arguments.r....h/h.h0h3h5h
2240 c4 68 37 7d 72 e9 01 00 00 28 68 39 5d 72 ea 01 00 00 68 3b 5d 72 eb 01 00 00 68 3d 5d 72 ec 01 .h7}r....(h9]r....h;]r....h=]r..
2260 00 00 68 3f 5d 72 ed 01 00 00 68 41 5d 72 ee 01 00 00 75 68 43 4b 33 68 44 68 02 68 29 5d 72 ef ..h?]r....hA]r....uhCK3hDh.h)]r.
2280 01 00 00 28 68 52 58 22 00 00 00 4f 6e 63 65 20 74 68 65 20 6d 6f 63 6b 20 68 61 73 20 62 65 65 ...(hRX"...Once.the.mock.has.bee
22a0 6e 20 63 61 6c 6c 65 64 20 69 74 73 20 72 f0 01 00 00 85 81 72 f1 01 00 00 7d 72 f2 01 00 00 28 n.called.its.r......r....}r....(
22c0 68 2e 58 22 00 00 00 4f 6e 63 65 20 74 68 65 20 6d 6f 63 6b 20 68 61 73 20 62 65 65 6e 20 63 61 h.X"...Once.the.mock.has.been.ca
22e0 6c 6c 65 64 20 69 74 73 20 72 f3 01 00 00 68 2f 6a e6 01 00 00 75 62 68 d0 29 81 72 f4 01 00 00 lled.its.r....h/j....ubh.).r....
2300 7d 72 f5 01 00 00 28 68 2e 58 14 00 00 00 3a 61 74 74 72 3a 60 7e 4d 6f 63 6b 2e 63 61 6c 6c 65 }r....(h.X....:attr:`~Mock.calle
2320 64 60 72 f6 01 00 00 68 2f 6a e6 01 00 00 68 30 68 33 68 35 68 d4 68 37 7d 72 f7 01 00 00 28 55 d`r....h/j....h0h3h5h.h7}r....(U
2340 07 72 65 66 74 79 70 65 72 f8 01 00 00 58 04 00 00 00 61 74 74 72 72 f9 01 00 00 68 d8 89 68 d9 .reftyper....X....attrr....h..h.
2360 58 0b 00 00 00 4d 6f 63 6b 2e 63 61 6c 6c 65 64 72 fa 01 00 00 55 09 72 65 66 64 6f 6d 61 69 6e X....Mock.calledr....U.refdomain
2380 72 fb 01 00 00 58 02 00 00 00 70 79 72 fc 01 00 00 68 3f 5d 72 fd 01 00 00 68 3d 5d 72 fe 01 00 r....X....pyr....h?]r....h=]r...
23a0 00 55 0b 72 65 66 65 78 70 6c 69 63 69 74 72 ff 01 00 00 89 68 39 5d 72 00 02 00 00 68 3b 5d 72 .U.refexplicitr.....h9]r....h;]r
23c0 01 02 00 00 68 41 5d 72 02 02 00 00 68 e3 68 e4 68 e5 4e 68 e6 4e 75 68 43 4b 33 68 29 5d 72 03 ....hA]r....h.h.h.Nh.NuhCK3h)]r.
23e0 02 00 00 68 e8 29 81 72 04 02 00 00 7d 72 05 02 00 00 28 68 2e 6a f6 01 00 00 68 37 7d 72 06 02 ...h.).r....}r....(h.j....h7}r..
2400 00 00 28 68 39 5d 72 07 02 00 00 68 3b 5d 72 08 02 00 00 28 68 ee 6a fc 01 00 00 58 07 00 00 00 ..(h9]r....h;]r....(h.j....X....
2420 70 79 2d 61 74 74 72 72 09 02 00 00 65 68 3d 5d 72 0a 02 00 00 68 3f 5d 72 0b 02 00 00 68 41 5d py-attrr....eh=]r....h?]r....hA]
2440 72 0c 02 00 00 75 68 2f 6a f4 01 00 00 68 29 5d 72 0d 02 00 00 68 52 58 06 00 00 00 63 61 6c 6c r....uh/j....h)]r....hRX....call
2460 65 64 72 0e 02 00 00 85 81 72 0f 02 00 00 7d 72 10 02 00 00 28 68 2e 55 00 68 2f 6a 04 02 00 00 edr......r....}r....(h.U.h/j....
2480 75 62 61 68 35 68 f7 75 62 61 75 62 68 52 58 15 00 00 00 20 61 74 74 72 69 62 75 74 65 20 69 73 ubah5h.ubaubhRX.....attribute.is
24a0 20 73 65 74 20 74 6f 0a 72 11 02 00 00 85 81 72 12 02 00 00 7d 72 13 02 00 00 28 68 2e 58 15 00 .set.to.r......r....}r....(h.X..
24c0 00 00 20 61 74 74 72 69 62 75 74 65 20 69 73 20 73 65 74 20 74 6f 0a 72 14 02 00 00 68 2f 6a e6 ...attribute.is.set.to.r....h/j.
24e0 01 00 00 75 62 6a 66 01 00 00 29 81 72 15 02 00 00 7d 72 16 02 00 00 28 68 2e 58 06 00 00 00 60 ...ubjf...).r....}r....(h.X....`
2500 54 72 75 65 60 72 17 02 00 00 68 37 7d 72 18 02 00 00 28 68 39 5d 72 19 02 00 00 68 3b 5d 72 1a True`r....h7}r....(h9]r....h;]r.
2520 02 00 00 68 3d 5d 72 1b 02 00 00 68 3f 5d 72 1c 02 00 00 68 41 5d 72 1d 02 00 00 75 68 2f 6a e6 ...h=]r....h?]r....hA]r....uh/j.
2540 01 00 00 68 29 5d 72 1e 02 00 00 68 52 58 04 00 00 00 54 72 75 65 72 1f 02 00 00 85 81 72 20 02 ...h)]r....hRX....Truer......r..
2560 00 00 7d 72 21 02 00 00 28 68 2e 55 00 68 2f 6a 15 02 00 00 75 62 61 68 35 6a 74 01 00 00 75 62 ..}r!...(h.U.h/j....ubah5jt...ub
2580 68 52 58 22 00 00 00 2e 20 4d 6f 72 65 20 69 6d 70 6f 72 74 61 6e 74 6c 79 20 77 65 20 63 61 6e hRX".....More.importantly.we.can
25a0 20 75 73 65 20 74 68 65 20 72 22 02 00 00 85 81 72 23 02 00 00 7d 72 24 02 00 00 28 68 2e 58 22 .use.the.r".....r#...}r$...(h.X"
25c0 00 00 00 2e 20 4d 6f 72 65 20 69 6d 70 6f 72 74 61 6e 74 6c 79 20 77 65 20 63 61 6e 20 75 73 65 .....More.importantly.we.can.use
25e0 20 74 68 65 20 72 25 02 00 00 68 2f 6a e6 01 00 00 75 62 68 d0 29 81 72 26 02 00 00 7d 72 27 02 .the.r%...h/j....ubh.).r&...}r'.
2600 00 00 28 68 2e 58 20 00 00 00 3a 6d 65 74 68 3a 60 7e 4d 6f 63 6b 2e 61 73 73 65 72 74 5f 63 61 ..(h.X....:meth:`~Mock.assert_ca
2620 6c 6c 65 64 5f 77 69 74 68 60 72 28 02 00 00 68 2f 6a e6 01 00 00 68 30 68 33 68 35 68 d4 68 37 lled_with`r(...h/j....h0h3h5h.h7
2640 7d 72 29 02 00 00 28 55 07 72 65 66 74 79 70 65 72 2a 02 00 00 58 04 00 00 00 6d 65 74 68 72 2b }r)...(U.reftyper*...X....methr+
2660 02 00 00 68 d8 89 68 d9 58 17 00 00 00 4d 6f 63 6b 2e 61 73 73 65 72 74 5f 63 61 6c 6c 65 64 5f ...h..h.X....Mock.assert_called_
2680 77 69 74 68 72 2c 02 00 00 55 09 72 65 66 64 6f 6d 61 69 6e 72 2d 02 00 00 58 02 00 00 00 70 79 withr,...U.refdomainr-...X....py
26a0 72 2e 02 00 00 68 3f 5d 72 2f 02 00 00 68 3d 5d 72 30 02 00 00 55 0b 72 65 66 65 78 70 6c 69 63 r....h?]r/...h=]r0...U.refexplic
26c0 69 74 72 31 02 00 00 89 68 39 5d 72 32 02 00 00 68 3b 5d 72 33 02 00 00 68 41 5d 72 34 02 00 00 itr1....h9]r2...h;]r3...hA]r4...
26e0 68 e3 68 e4 68 e5 4e 68 e6 4e 75 68 43 4b 33 68 29 5d 72 35 02 00 00 68 e8 29 81 72 36 02 00 00 h.h.h.Nh.NuhCK3h)]r5...h.).r6...
2700 7d 72 37 02 00 00 28 68 2e 6a 28 02 00 00 68 37 7d 72 38 02 00 00 28 68 39 5d 72 39 02 00 00 68 }r7...(h.j(...h7}r8...(h9]r9...h
2720 3b 5d 72 3a 02 00 00 28 68 ee 6a 2e 02 00 00 58 07 00 00 00 70 79 2d 6d 65 74 68 72 3b 02 00 00 ;]r:...(h.j....X....py-methr;...
2740 65 68 3d 5d 72 3c 02 00 00 68 3f 5d 72 3d 02 00 00 68 41 5d 72 3e 02 00 00 75 68 2f 6a 26 02 00 eh=]r<...h?]r=...hA]r>...uh/j&..
2760 00 68 29 5d 72 3f 02 00 00 68 52 58 14 00 00 00 61 73 73 65 72 74 5f 63 61 6c 6c 65 64 5f 77 69 .h)]r?...hRX....assert_called_wi
2780 74 68 28 29 72 40 02 00 00 85 81 72 41 02 00 00 7d 72 42 02 00 00 28 68 2e 55 00 68 2f 6a 36 02 th()r@.....rA...}rB...(h.U.h/j6.
27a0 00 00 75 62 61 68 35 68 f7 75 62 61 75 62 68 52 58 04 00 00 00 20 6f 72 0a 72 43 02 00 00 85 81 ..ubah5h.ubaubhRX.....or.rC.....
27c0 72 44 02 00 00 7d 72 45 02 00 00 28 68 2e 58 04 00 00 00 20 6f 72 0a 72 46 02 00 00 68 2f 6a e6 rD...}rE...(h.X.....or.rF...h/j.
27e0 01 00 00 75 62 68 d0 29 81 72 47 02 00 00 7d 72 48 02 00 00 28 68 2e 58 25 00 00 00 3a 6d 65 74 ...ubh.).rG...}rH...(h.X%...:met
2800 68 3a 60 7e 4d 6f 63 6b 2e 61 73 73 65 72 74 5f 63 61 6c 6c 65 64 5f 6f 6e 63 65 5f 77 69 74 68 h:`~Mock.assert_called_once_with
2820 60 72 49 02 00 00 68 2f 6a e6 01 00 00 68 30 68 33 68 35 68 d4 68 37 7d 72 4a 02 00 00 28 55 07 `rI...h/j....h0h3h5h.h7}rJ...(U.
2840 72 65 66 74 79 70 65 72 4b 02 00 00 58 04 00 00 00 6d 65 74 68 72 4c 02 00 00 68 d8 89 68 d9 58 reftyperK...X....methrL...h..h.X
2860 1c 00 00 00 4d 6f 63 6b 2e 61 73 73 65 72 74 5f 63 61 6c 6c 65 64 5f 6f 6e 63 65 5f 77 69 74 68 ....Mock.assert_called_once_with
2880 72 4d 02 00 00 55 09 72 65 66 64 6f 6d 61 69 6e 72 4e 02 00 00 58 02 00 00 00 70 79 72 4f 02 00 rM...U.refdomainrN...X....pyrO..
28a0 00 68 3f 5d 72 50 02 00 00 68 3d 5d 72 51 02 00 00 55 0b 72 65 66 65 78 70 6c 69 63 69 74 72 52 .h?]rP...h=]rQ...U.refexplicitrR
28c0 02 00 00 89 68 39 5d 72 53 02 00 00 68 3b 5d 72 54 02 00 00 68 41 5d 72 55 02 00 00 68 e3 68 e4 ....h9]rS...h;]rT...hA]rU...h.h.
28e0 68 e5 4e 68 e6 4e 75 68 43 4b 33 68 29 5d 72 56 02 00 00 68 e8 29 81 72 57 02 00 00 7d 72 58 02 h.Nh.NuhCK3h)]rV...h.).rW...}rX.
2900 00 00 28 68 2e 6a 49 02 00 00 68 37 7d 72 59 02 00 00 28 68 39 5d 72 5a 02 00 00 68 3b 5d 72 5b ..(h.jI...h7}rY...(h9]rZ...h;]r[
2920 02 00 00 28 68 ee 6a 4f 02 00 00 58 07 00 00 00 70 79 2d 6d 65 74 68 72 5c 02 00 00 65 68 3d 5d ...(h.jO...X....py-methr\...eh=]
2940 72 5d 02 00 00 68 3f 5d 72 5e 02 00 00 68 41 5d 72 5f 02 00 00 75 68 2f 6a 47 02 00 00 68 29 5d r]...h?]r^...hA]r_...uh/jG...h)]
2960 72 60 02 00 00 68 52 58 19 00 00 00 61 73 73 65 72 74 5f 63 61 6c 6c 65 64 5f 6f 6e 63 65 5f 77 r`...hRX....assert_called_once_w
2980 69 74 68 28 29 72 61 02 00 00 85 81 72 62 02 00 00 7d 72 63 02 00 00 28 68 2e 55 00 68 2f 6a 57 ith()ra.....rb...}rc...(h.U.h/jW
29a0 02 00 00 75 62 61 68 35 68 f7 75 62 61 75 62 68 52 58 3f 00 00 00 20 6d 65 74 68 6f 64 20 74 6f ...ubah5h.ubaubhRX?....method.to
29c0 20 63 68 65 63 6b 20 74 68 61 74 20 69 74 20 77 61 73 20 63 61 6c 6c 65 64 20 77 69 74 68 0a 74 .check.that.it.was.called.with.t
29e0 68 65 20 63 6f 72 72 65 63 74 20 61 72 67 75 6d 65 6e 74 73 2e 72 64 02 00 00 85 81 72 65 02 00 he.correct.arguments.rd.....re..
2a00 00 7d 72 66 02 00 00 28 68 2e 58 3f 00 00 00 20 6d 65 74 68 6f 64 20 74 6f 20 63 68 65 63 6b 20 .}rf...(h.X?....method.to.check.
2a20 74 68 61 74 20 69 74 20 77 61 73 20 63 61 6c 6c 65 64 20 77 69 74 68 0a 74 68 65 20 63 6f 72 72 that.it.was.called.with.the.corr
2a40 65 63 74 20 61 72 67 75 6d 65 6e 74 73 2e 72 67 02 00 00 68 2f 6a e6 01 00 00 75 62 65 75 62 68 ect.arguments.rg...h/j....ubeubh
2a60 c0 29 81 72 68 02 00 00 7d 72 69 02 00 00 28 68 2e 58 67 00 00 00 54 68 69 73 20 65 78 61 6d 70 .).rh...}ri...(h.Xg...This.examp
2a80 6c 65 20 74 65 73 74 73 20 74 68 61 74 20 63 61 6c 6c 69 6e 67 20 60 50 72 6f 64 75 63 74 69 6f le.tests.that.calling.`Productio
2aa0 6e 43 6c 61 73 73 28 29 2e 6d 65 74 68 6f 64 60 20 72 65 73 75 6c 74 73 20 69 6e 20 61 20 63 61 nClass().method`.results.in.a.ca
2ac0 6c 6c 20 74 6f 0a 74 68 65 20 60 73 6f 6d 65 74 68 69 6e 67 60 20 6d 65 74 68 6f 64 3a 72 6a 02 ll.to.the.`something`.method:rj.
2ae0 00 00 68 2f 68 aa 68 30 68 33 68 35 68 c4 68 37 7d 72 6b 02 00 00 28 68 39 5d 72 6c 02 00 00 68 ..h/h.h0h3h5h.h7}rk...(h9]rl...h
2b00 3b 5d 72 6d 02 00 00 68 3d 5d 72 6e 02 00 00 68 3f 5d 72 6f 02 00 00 68 41 5d 72 70 02 00 00 75 ;]rm...h=]rn...h?]ro...hA]rp...u
2b20 68 43 4b 38 68 44 68 02 68 29 5d 72 71 02 00 00 28 68 52 58 20 00 00 00 54 68 69 73 20 65 78 61 hCK8hDh.h)]rq...(hRX....This.exa
2b40 6d 70 6c 65 20 74 65 73 74 73 20 74 68 61 74 20 63 61 6c 6c 69 6e 67 20 72 72 02 00 00 85 81 72 mple.tests.that.calling.rr.....r
2b60 73 02 00 00 7d 72 74 02 00 00 28 68 2e 58 20 00 00 00 54 68 69 73 20 65 78 61 6d 70 6c 65 20 74 s...}rt...(h.X....This.example.t
2b80 65 73 74 73 20 74 68 61 74 20 63 61 6c 6c 69 6e 67 20 72 75 02 00 00 68 2f 6a 68 02 00 00 75 62 ests.that.calling.ru...h/jh...ub
2ba0 6a 66 01 00 00 29 81 72 76 02 00 00 7d 72 77 02 00 00 28 68 2e 58 1a 00 00 00 60 50 72 6f 64 75 jf...).rv...}rw...(h.X....`Produ
2bc0 63 74 69 6f 6e 43 6c 61 73 73 28 29 2e 6d 65 74 68 6f 64 60 72 78 02 00 00 68 37 7d 72 79 02 00 ctionClass().method`rx...h7}ry..
2be0 00 28 68 39 5d 72 7a 02 00 00 68 3b 5d 72 7b 02 00 00 68 3d 5d 72 7c 02 00 00 68 3f 5d 72 7d 02 .(h9]rz...h;]r{...h=]r|...h?]r}.
2c00 00 00 68 41 5d 72 7e 02 00 00 75 68 2f 6a 68 02 00 00 68 29 5d 72 7f 02 00 00 68 52 58 18 00 00 ..hA]r~...uh/jh...h)]r....hRX...
2c20 00 50 72 6f 64 75 63 74 69 6f 6e 43 6c 61 73 73 28 29 2e 6d 65 74 68 6f 64 72 80 02 00 00 85 81 .ProductionClass().methodr......
2c40 72 81 02 00 00 7d 72 82 02 00 00 28 68 2e 55 00 68 2f 6a 76 02 00 00 75 62 61 68 35 6a 74 01 00 r....}r....(h.U.h/jv...ubah5jt..
2c60 00 75 62 68 52 58 1a 00 00 00 20 72 65 73 75 6c 74 73 20 69 6e 20 61 20 63 61 6c 6c 20 74 6f 0a .ubhRX.....results.in.a.call.to.
2c80 74 68 65 20 72 83 02 00 00 85 81 72 84 02 00 00 7d 72 85 02 00 00 28 68 2e 58 1a 00 00 00 20 72 the.r......r....}r....(h.X.....r
2ca0 65 73 75 6c 74 73 20 69 6e 20 61 20 63 61 6c 6c 20 74 6f 0a 74 68 65 20 72 86 02 00 00 68 2f 6a esults.in.a.call.to.the.r....h/j
2cc0 68 02 00 00 75 62 6a 66 01 00 00 29 81 72 87 02 00 00 7d 72 88 02 00 00 28 68 2e 58 0b 00 00 00 h...ubjf...).r....}r....(h.X....
2ce0 60 73 6f 6d 65 74 68 69 6e 67 60 72 89 02 00 00 68 37 7d 72 8a 02 00 00 28 68 39 5d 72 8b 02 00 `something`r....h7}r....(h9]r...
2d00 00 68 3b 5d 72 8c 02 00 00 68 3d 5d 72 8d 02 00 00 68 3f 5d 72 8e 02 00 00 68 41 5d 72 8f 02 00 .h;]r....h=]r....h?]r....hA]r...
2d20 00 75 68 2f 6a 68 02 00 00 68 29 5d 72 90 02 00 00 68 52 58 09 00 00 00 73 6f 6d 65 74 68 69 6e .uh/jh...h)]r....hRX....somethin
2d40 67 72 91 02 00 00 85 81 72 92 02 00 00 7d 72 93 02 00 00 28 68 2e 55 00 68 2f 6a 87 02 00 00 75 gr......r....}r....(h.U.h/j....u
2d60 62 61 68 35 6a 74 01 00 00 75 62 68 52 58 08 00 00 00 20 6d 65 74 68 6f 64 3a 72 94 02 00 00 85 bah5jt...ubhRX.....method:r.....
2d80 81 72 95 02 00 00 7d 72 96 02 00 00 28 68 2e 58 08 00 00 00 20 6d 65 74 68 6f 64 3a 72 97 02 00 .r....}r....(h.X.....method:r...
2da0 00 68 2f 6a 68 02 00 00 75 62 65 75 62 6a 44 01 00 00 29 81 72 98 02 00 00 7d 72 99 02 00 00 28 .h/jh...ubeubjD...).r....}r....(
2dc0 68 2e 58 3e 01 00 00 3e 3e 3e 20 66 72 6f 6d 20 6d 6f 63 6b 20 69 6d 70 6f 72 74 20 4d 61 67 69 h.X>...>>>.from.mock.import.Magi
2de0 63 4d 6f 63 6b 0a 3e 3e 3e 20 63 6c 61 73 73 20 50 72 6f 64 75 63 74 69 6f 6e 43 6c 61 73 73 28 cMock.>>>.class.ProductionClass(
2e00 6f 62 6a 65 63 74 29 3a 0a 2e 2e 2e 20 20 20 20 20 64 65 66 20 6d 65 74 68 6f 64 28 73 65 6c 66 object):.........def.method(self
2e20 29 3a 0a 2e 2e 2e 20 20 20 20 20 20 20 20 20 73 65 6c 66 2e 73 6f 6d 65 74 68 69 6e 67 28 31 2c ):.............self.something(1,
2e40 20 32 2c 20 33 29 0a 2e 2e 2e 20 20 20 20 20 64 65 66 20 73 6f 6d 65 74 68 69 6e 67 28 73 65 6c .2,.3).........def.something(sel
2e60 66 2c 20 61 2c 20 62 2c 20 63 29 3a 0a 2e 2e 2e 20 20 20 20 20 20 20 20 20 70 61 73 73 0a 2e 2e f,.a,.b,.c):.............pass...
2e80 2e 0a 3e 3e 3e 20 72 65 61 6c 20 3d 20 50 72 6f 64 75 63 74 69 6f 6e 43 6c 61 73 73 28 29 0a 3e ..>>>.real.=.ProductionClass().>
2ea0 3e 3e 20 72 65 61 6c 2e 73 6f 6d 65 74 68 69 6e 67 20 3d 20 4d 61 67 69 63 4d 6f 63 6b 28 29 0a >>.real.something.=.MagicMock().
2ec0 3e 3e 3e 20 72 65 61 6c 2e 6d 65 74 68 6f 64 28 29 0a 3e 3e 3e 20 72 65 61 6c 2e 73 6f 6d 65 74 >>>.real.method().>>>.real.somet
2ee0 68 69 6e 67 2e 61 73 73 65 72 74 5f 63 61 6c 6c 65 64 5f 6f 6e 63 65 5f 77 69 74 68 28 31 2c 20 hing.assert_called_once_with(1,.
2f00 32 2c 20 33 29 72 9a 02 00 00 68 2f 68 aa 68 30 68 33 68 35 6a 48 01 00 00 68 37 7d 72 9b 02 00 2,.3)r....h/h.h0h3h5jH...h7}r...
2f20 00 28 55 0c 74 65 73 74 6e 6f 64 65 74 79 70 65 72 9c 02 00 00 58 07 00 00 00 64 6f 63 74 65 73 .(U.testnodetyper....X....doctes
2f40 74 72 9d 02 00 00 68 84 68 85 68 3f 5d 72 9e 02 00 00 68 3d 5d 72 9f 02 00 00 68 39 5d 72 a0 02 tr....h.h.h?]r....h=]r....h9]r..
2f60 00 00 68 3b 5d 72 a1 02 00 00 68 41 5d 72 a2 02 00 00 55 06 67 72 6f 75 70 73 72 a3 02 00 00 5d ..h;]r....hA]r....U.groupsr....]
2f80 72 a4 02 00 00 68 8d 61 68 8e 7d 72 a5 02 00 00 75 68 43 4b 3b 68 44 68 02 68 29 5d 72 a6 02 00 r....h.ah.}r....uhCK;hDh.h)]r...
2fa0 00 68 52 58 3e 01 00 00 3e 3e 3e 20 66 72 6f 6d 20 6d 6f 63 6b 20 69 6d 70 6f 72 74 20 4d 61 67 .hRX>...>>>.from.mock.import.Mag
2fc0 69 63 4d 6f 63 6b 0a 3e 3e 3e 20 63 6c 61 73 73 20 50 72 6f 64 75 63 74 69 6f 6e 43 6c 61 73 73 icMock.>>>.class.ProductionClass
2fe0 28 6f 62 6a 65 63 74 29 3a 0a 2e 2e 2e 20 20 20 20 20 64 65 66 20 6d 65 74 68 6f 64 28 73 65 6c (object):.........def.method(sel
3000 66 29 3a 0a 2e 2e 2e 20 20 20 20 20 20 20 20 20 73 65 6c 66 2e 73 6f 6d 65 74 68 69 6e 67 28 31 f):.............self.something(1
3020 2c 20 32 2c 20 33 29 0a 2e 2e 2e 20 20 20 20 20 64 65 66 20 73 6f 6d 65 74 68 69 6e 67 28 73 65 ,.2,.3).........def.something(se
3040 6c 66 2c 20 61 2c 20 62 2c 20 63 29 3a 0a 2e 2e 2e 20 20 20 20 20 20 20 20 20 70 61 73 73 0a 2e lf,.a,.b,.c):.............pass..
3060 2e 2e 0a 3e 3e 3e 20 72 65 61 6c 20 3d 20 50 72 6f 64 75 63 74 69 6f 6e 43 6c 61 73 73 28 29 0a ...>>>.real.=.ProductionClass().
3080 3e 3e 3e 20 72 65 61 6c 2e 73 6f 6d 65 74 68 69 6e 67 20 3d 20 4d 61 67 69 63 4d 6f 63 6b 28 29 >>>.real.something.=.MagicMock()
30a0 0a 3e 3e 3e 20 72 65 61 6c 2e 6d 65 74 68 6f 64 28 29 0a 3e 3e 3e 20 72 65 61 6c 2e 73 6f 6d 65 .>>>.real.method().>>>.real.some
30c0 74 68 69 6e 67 2e 61 73 73 65 72 74 5f 63 61 6c 6c 65 64 5f 6f 6e 63 65 5f 77 69 74 68 28 31 2c thing.assert_called_once_with(1,
30e0 20 32 2c 20 33 29 72 a7 02 00 00 85 81 72 a8 02 00 00 7d 72 a9 02 00 00 28 68 2e 55 00 68 2f 6a .2,.3)r......r....}r....(h.U.h/j
3100 98 02 00 00 75 62 61 75 62 65 75 62 68 2b 29 81 72 aa 02 00 00 7d 72 ab 02 00 00 28 68 2e 55 00 ....ubaubeubh+).r....}r....(h.U.
3120 68 2f 68 94 68 30 68 33 68 35 68 36 68 37 7d 72 ac 02 00 00 28 68 39 5d 72 ad 02 00 00 68 3b 5d h/h.h0h3h5h6h7}r....(h9]r....h;]
3140 72 ae 02 00 00 68 3d 5d 72 af 02 00 00 68 3f 5d 72 b0 02 00 00 68 23 61 68 41 5d 72 b1 02 00 00 r....h=]r....h?]r....h#ahA]r....
3160 68 0d 61 75 68 43 4b 4c 68 44 68 02 68 29 5d 72 b2 02 00 00 28 68 46 29 81 72 b3 02 00 00 7d 72 h.auhCKLhDh.h)]r....(hF).r....}r
3180 b4 02 00 00 28 68 2e 58 22 00 00 00 4d 6f 63 6b 20 66 6f 72 20 4d 65 74 68 6f 64 20 43 61 6c 6c ....(h.X"...Mock.for.Method.Call
31a0 73 20 6f 6e 20 61 6e 20 4f 62 6a 65 63 74 72 b5 02 00 00 68 2f 6a aa 02 00 00 68 30 68 33 68 35 s.on.an.Objectr....h/j....h0h3h5
31c0 68 4a 68 37 7d 72 b6 02 00 00 28 68 39 5d 72 b7 02 00 00 68 3b 5d 72 b8 02 00 00 68 3d 5d 72 b9 hJh7}r....(h9]r....h;]r....h=]r.
31e0 02 00 00 68 3f 5d 72 ba 02 00 00 68 41 5d 72 bb 02 00 00 75 68 43 4b 4c 68 44 68 02 68 29 5d 72 ...h?]r....hA]r....uhCKLhDh.h)]r
3200 bc 02 00 00 68 52 58 22 00 00 00 4d 6f 63 6b 20 66 6f 72 20 4d 65 74 68 6f 64 20 43 61 6c 6c 73 ....hRX"...Mock.for.Method.Calls
3220 20 6f 6e 20 61 6e 20 4f 62 6a 65 63 74 72 bd 02 00 00 85 81 72 be 02 00 00 7d 72 bf 02 00 00 28 .on.an.Objectr......r....}r....(
3240 68 2e 6a b5 02 00 00 68 2f 6a b3 02 00 00 75 62 61 75 62 68 c0 29 81 72 c0 02 00 00 7d 72 c1 02 h.j....h/j....ubaubh.).r....}r..
3260 00 00 28 68 2e 58 fa 00 00 00 49 6e 20 74 68 65 20 6c 61 73 74 20 65 78 61 6d 70 6c 65 20 77 65 ..(h.X....In.the.last.example.we
3280 20 70 61 74 63 68 65 64 20 61 20 6d 65 74 68 6f 64 20 64 69 72 65 63 74 6c 79 20 6f 6e 20 61 6e .patched.a.method.directly.on.an
32a0 20 6f 62 6a 65 63 74 20 74 6f 20 63 68 65 63 6b 20 74 68 61 74 20 69 74 0a 77 61 73 20 63 61 6c .object.to.check.that.it.was.cal
32c0 6c 65 64 20 63 6f 72 72 65 63 74 6c 79 2e 20 41 6e 6f 74 68 65 72 20 63 6f 6d 6d 6f 6e 20 75 73 led.correctly..Another.common.us
32e0 65 20 63 61 73 65 20 69 73 20 74 6f 20 70 61 73 73 20 61 6e 20 6f 62 6a 65 63 74 20 69 6e 74 6f e.case.is.to.pass.an.object.into
3300 20 61 0a 6d 65 74 68 6f 64 20 28 6f 72 20 73 6f 6d 65 20 70 61 72 74 20 6f 66 20 74 68 65 20 73 .a.method.(or.some.part.of.the.s
3320 79 73 74 65 6d 20 75 6e 64 65 72 20 74 65 73 74 29 20 61 6e 64 20 74 68 65 6e 20 63 68 65 63 6b ystem.under.test).and.then.check
3340 20 74 68 61 74 20 69 74 20 69 73 20 75 73 65 64 0a 69 6e 20 74 68 65 20 63 6f 72 72 65 63 74 20 .that.it.is.used.in.the.correct.
3360 77 61 79 2e 72 c2 02 00 00 68 2f 6a aa 02 00 00 68 30 68 33 68 35 68 c4 68 37 7d 72 c3 02 00 00 way.r....h/j....h0h3h5h.h7}r....
3380 28 68 39 5d 72 c4 02 00 00 68 3b 5d 72 c5 02 00 00 68 3d 5d 72 c6 02 00 00 68 3f 5d 72 c7 02 00 (h9]r....h;]r....h=]r....h?]r...
33a0 00 68 41 5d 72 c8 02 00 00 75 68 43 4b 4e 68 44 68 02 68 29 5d 72 c9 02 00 00 68 52 58 fa 00 00 .hA]r....uhCKNhDh.h)]r....hRX...
33c0 00 49 6e 20 74 68 65 20 6c 61 73 74 20 65 78 61 6d 70 6c 65 20 77 65 20 70 61 74 63 68 65 64 20 .In.the.last.example.we.patched.
33e0 61 20 6d 65 74 68 6f 64 20 64 69 72 65 63 74 6c 79 20 6f 6e 20 61 6e 20 6f 62 6a 65 63 74 20 74 a.method.directly.on.an.object.t
3400 6f 20 63 68 65 63 6b 20 74 68 61 74 20 69 74 0a 77 61 73 20 63 61 6c 6c 65 64 20 63 6f 72 72 65 o.check.that.it.was.called.corre
3420 63 74 6c 79 2e 20 41 6e 6f 74 68 65 72 20 63 6f 6d 6d 6f 6e 20 75 73 65 20 63 61 73 65 20 69 73 ctly..Another.common.use.case.is
3440 20 74 6f 20 70 61 73 73 20 61 6e 20 6f 62 6a 65 63 74 20 69 6e 74 6f 20 61 0a 6d 65 74 68 6f 64 .to.pass.an.object.into.a.method
3460 20 28 6f 72 20 73 6f 6d 65 20 70 61 72 74 20 6f 66 20 74 68 65 20 73 79 73 74 65 6d 20 75 6e 64 .(or.some.part.of.the.system.und
3480 65 72 20 74 65 73 74 29 20 61 6e 64 20 74 68 65 6e 20 63 68 65 63 6b 20 74 68 61 74 20 69 74 20 er.test).and.then.check.that.it.
34a0 69 73 20 75 73 65 64 0a 69 6e 20 74 68 65 20 63 6f 72 72 65 63 74 20 77 61 79 2e 72 ca 02 00 00 is.used.in.the.correct.way.r....
34c0 85 81 72 cb 02 00 00 7d 72 cc 02 00 00 28 68 2e 6a c2 02 00 00 68 2f 6a c0 02 00 00 75 62 61 75 ..r....}r....(h.j....h/j....ubau
34e0 62 68 c0 29 81 72 cd 02 00 00 7d 72 ce 02 00 00 28 68 2e 58 75 00 00 00 54 68 65 20 73 69 6d 70 bh.).r....}r....(h.Xu...The.simp
3500 6c 65 20 60 50 72 6f 64 75 63 74 69 6f 6e 43 6c 61 73 73 60 20 62 65 6c 6f 77 20 68 61 73 20 61 le.`ProductionClass`.below.has.a
3520 20 60 63 6c 6f 73 65 72 60 20 6d 65 74 68 6f 64 2e 20 49 66 20 69 74 20 69 73 20 63 61 6c 6c 65 .`closer`.method..If.it.is.calle
3540 64 20 77 69 74 68 0a 61 6e 20 6f 62 6a 65 63 74 20 74 68 65 6e 20 69 74 20 63 61 6c 6c 73 20 60 d.with.an.object.then.it.calls.`
3560 63 6c 6f 73 65 60 20 6f 6e 20 69 74 2e 72 cf 02 00 00 68 2f 6a aa 02 00 00 68 30 68 33 68 35 68 close`.on.it.r....h/j....h0h3h5h
3580 c4 68 37 7d 72 d0 02 00 00 28 68 39 5d 72 d1 02 00 00 68 3b 5d 72 d2 02 00 00 68 3d 5d 72 d3 02 .h7}r....(h9]r....h;]r....h=]r..
35a0 00 00 68 3f 5d 72 d4 02 00 00 68 41 5d 72 d5 02 00 00 75 68 43 4b 53 68 44 68 02 68 29 5d 72 d6 ..h?]r....hA]r....uhCKShDh.h)]r.
35c0 02 00 00 28 68 52 58 0b 00 00 00 54 68 65 20 73 69 6d 70 6c 65 20 72 d7 02 00 00 85 81 72 d8 02 ...(hRX....The.simple.r......r..
35e0 00 00 7d 72 d9 02 00 00 28 68 2e 58 0b 00 00 00 54 68 65 20 73 69 6d 70 6c 65 20 72 da 02 00 00 ..}r....(h.X....The.simple.r....
3600 68 2f 6a cd 02 00 00 75 62 6a 66 01 00 00 29 81 72 db 02 00 00 7d 72 dc 02 00 00 28 68 2e 58 11 h/j....ubjf...).r....}r....(h.X.
3620 00 00 00 60 50 72 6f 64 75 63 74 69 6f 6e 43 6c 61 73 73 60 72 dd 02 00 00 68 37 7d 72 de 02 00 ...`ProductionClass`r....h7}r...
3640 00 28 68 39 5d 72 df 02 00 00 68 3b 5d 72 e0 02 00 00 68 3d 5d 72 e1 02 00 00 68 3f 5d 72 e2 02 .(h9]r....h;]r....h=]r....h?]r..
3660 00 00 68 41 5d 72 e3 02 00 00 75 68 2f 6a cd 02 00 00 68 29 5d 72 e4 02 00 00 68 52 58 0f 00 00 ..hA]r....uh/j....h)]r....hRX...
3680 00 50 72 6f 64 75 63 74 69 6f 6e 43 6c 61 73 73 72 e5 02 00 00 85 81 72 e6 02 00 00 7d 72 e7 02 .ProductionClassr......r....}r..
36a0 00 00 28 68 2e 55 00 68 2f 6a db 02 00 00 75 62 61 68 35 6a 74 01 00 00 75 62 68 52 58 0d 00 00 ..(h.U.h/j....ubah5jt...ubhRX...
36c0 00 20 62 65 6c 6f 77 20 68 61 73 20 61 20 72 e8 02 00 00 85 81 72 e9 02 00 00 7d 72 ea 02 00 00 ..below.has.a.r......r....}r....
36e0 28 68 2e 58 0d 00 00 00 20 62 65 6c 6f 77 20 68 61 73 20 61 20 72 eb 02 00 00 68 2f 6a cd 02 00 (h.X.....below.has.a.r....h/j...
3700 00 75 62 6a 66 01 00 00 29 81 72 ec 02 00 00 7d 72 ed 02 00 00 28 68 2e 58 08 00 00 00 60 63 6c .ubjf...).r....}r....(h.X....`cl
3720 6f 73 65 72 60 72 ee 02 00 00 68 37 7d 72 ef 02 00 00 28 68 39 5d 72 f0 02 00 00 68 3b 5d 72 f1 oser`r....h7}r....(h9]r....h;]r.
3740 02 00 00 68 3d 5d 72 f2 02 00 00 68 3f 5d 72 f3 02 00 00 68 41 5d 72 f4 02 00 00 75 68 2f 6a cd ...h=]r....h?]r....hA]r....uh/j.
3760 02 00 00 68 29 5d 72 f5 02 00 00 68 52 58 06 00 00 00 63 6c 6f 73 65 72 72 f6 02 00 00 85 81 72 ...h)]r....hRX....closerr......r
3780 f7 02 00 00 7d 72 f8 02 00 00 28 68 2e 55 00 68 2f 6a ec 02 00 00 75 62 61 68 35 6a 74 01 00 00 ....}r....(h.U.h/j....ubah5jt...
37a0 75 62 68 52 58 36 00 00 00 20 6d 65 74 68 6f 64 2e 20 49 66 20 69 74 20 69 73 20 63 61 6c 6c 65 ubhRX6....method..If.it.is.calle
37c0 64 20 77 69 74 68 0a 61 6e 20 6f 62 6a 65 63 74 20 74 68 65 6e 20 69 74 20 63 61 6c 6c 73 20 72 d.with.an.object.then.it.calls.r
37e0 f9 02 00 00 85 81 72 fa 02 00 00 7d 72 fb 02 00 00 28 68 2e 58 36 00 00 00 20 6d 65 74 68 6f 64 ......r....}r....(h.X6....method
3800 2e 20 49 66 20 69 74 20 69 73 20 63 61 6c 6c 65 64 20 77 69 74 68 0a 61 6e 20 6f 62 6a 65 63 74 ..If.it.is.called.with.an.object
3820 20 74 68 65 6e 20 69 74 20 63 61 6c 6c 73 20 72 fc 02 00 00 68 2f 6a cd 02 00 00 75 62 6a 66 01 .then.it.calls.r....h/j....ubjf.
3840 00 00 29 81 72 fd 02 00 00 7d 72 fe 02 00 00 28 68 2e 58 07 00 00 00 60 63 6c 6f 73 65 60 72 ff ..).r....}r....(h.X....`close`r.
3860 02 00 00 68 37 7d 72 00 03 00 00 28 68 39 5d 72 01 03 00 00 68 3b 5d 72 02 03 00 00 68 3d 5d 72 ...h7}r....(h9]r....h;]r....h=]r
3880 03 03 00 00 68 3f 5d 72 04 03 00 00 68 41 5d 72 05 03 00 00 75 68 2f 6a cd 02 00 00 68 29 5d 72 ....h?]r....hA]r....uh/j....h)]r
38a0 06 03 00 00 68 52 58 05 00 00 00 63 6c 6f 73 65 72 07 03 00 00 85 81 72 08 03 00 00 7d 72 09 03 ....hRX....closer......r....}r..
38c0 00 00 28 68 2e 55 00 68 2f 6a fd 02 00 00 75 62 61 68 35 6a 74 01 00 00 75 62 68 52 58 07 00 00 ..(h.U.h/j....ubah5jt...ubhRX...
38e0 00 20 6f 6e 20 69 74 2e 72 0a 03 00 00 85 81 72 0b 03 00 00 7d 72 0c 03 00 00 28 68 2e 58 07 00 ..on.it.r......r....}r....(h.X..
3900 00 00 20 6f 6e 20 69 74 2e 72 0d 03 00 00 68 2f 6a cd 02 00 00 75 62 65 75 62 6a 44 01 00 00 29 ...on.it.r....h/j....ubeubjD...)
3920 81 72 0e 03 00 00 7d 72 0f 03 00 00 28 68 2e 58 69 00 00 00 3e 3e 3e 20 63 6c 61 73 73 20 50 72 .r....}r....(h.Xi...>>>.class.Pr
3940 6f 64 75 63 74 69 6f 6e 43 6c 61 73 73 28 6f 62 6a 65 63 74 29 3a 0a 2e 2e 2e 20 20 20 20 20 64 oductionClass(object):.........d
3960 65 66 20 63 6c 6f 73 65 72 28 73 65 6c 66 2c 20 73 6f 6d 65 74 68 69 6e 67 29 3a 0a 2e 2e 2e 20 ef.closer(self,.something):.....
3980 20 20 20 20 20 20 20 20 73 6f 6d 65 74 68 69 6e 67 2e 63 6c 6f 73 65 28 29 0a 2e 2e 2e 72 10 03 ........something.close()....r..
39a0 00 00 68 2f 6a aa 02 00 00 68 30 68 33 68 35 6a 48 01 00 00 68 37 7d 72 11 03 00 00 28 55 0c 74 ..h/j....h0h3h5jH...h7}r....(U.t
39c0 65 73 74 6e 6f 64 65 74 79 70 65 72 12 03 00 00 58 07 00 00 00 64 6f 63 74 65 73 74 72 13 03 00 estnodetyper....X....doctestr...
39e0 00 68 84 68 85 68 3f 5d 72 14 03 00 00 68 3d 5d 72 15 03 00 00 68 39 5d 72 16 03 00 00 68 3b 5d .h.h.h?]r....h=]r....h9]r....h;]
3a00 72 17 03 00 00 68 41 5d 72 18 03 00 00 55 06 67 72 6f 75 70 73 72 19 03 00 00 5d 72 1a 03 00 00 r....hA]r....U.groupsr....]r....
3a20 68 8d 61 68 8e 7d 72 1b 03 00 00 75 68 43 4b 56 68 44 68 02 68 29 5d 72 1c 03 00 00 68 52 58 69 h.ah.}r....uhCKVhDh.h)]r....hRXi
3a40 00 00 00 3e 3e 3e 20 63 6c 61 73 73 20 50 72 6f 64 75 63 74 69 6f 6e 43 6c 61 73 73 28 6f 62 6a ...>>>.class.ProductionClass(obj
3a60 65 63 74 29 3a 0a 2e 2e 2e 20 20 20 20 20 64 65 66 20 63 6c 6f 73 65 72 28 73 65 6c 66 2c 20 73 ect):.........def.closer(self,.s
3a80 6f 6d 65 74 68 69 6e 67 29 3a 0a 2e 2e 2e 20 20 20 20 20 20 20 20 20 73 6f 6d 65 74 68 69 6e 67 omething):.............something
3aa0 2e 63 6c 6f 73 65 28 29 0a 2e 2e 2e 72 1d 03 00 00 85 81 72 1e 03 00 00 7d 72 1f 03 00 00 28 68 .close()....r......r....}r....(h
3ac0 2e 55 00 68 2f 6a 0e 03 00 00 75 62 61 75 62 68 c0 29 81 72 20 03 00 00 7d 72 21 03 00 00 28 68 .U.h/j....ubaubh.).r....}r!...(h
3ae0 2e 58 68 00 00 00 53 6f 20 74 6f 20 74 65 73 74 20 69 74 20 77 65 20 6e 65 65 64 20 74 6f 20 70 .Xh...So.to.test.it.we.need.to.p
3b00 61 73 73 20 69 6e 20 61 6e 20 6f 62 6a 65 63 74 20 77 69 74 68 20 61 20 60 63 6c 6f 73 65 60 20 ass.in.an.object.with.a.`close`.
3b20 6d 65 74 68 6f 64 20 61 6e 64 20 63 68 65 63 6b 0a 74 68 61 74 20 69 74 20 77 61 73 20 63 61 6c method.and.check.that.it.was.cal
3b40 6c 65 64 20 63 6f 72 72 65 63 74 6c 79 2e 72 22 03 00 00 68 2f 6a aa 02 00 00 68 30 68 33 68 35 led.correctly.r"...h/j....h0h3h5
3b60 68 c4 68 37 7d 72 23 03 00 00 28 68 39 5d 72 24 03 00 00 68 3b 5d 72 25 03 00 00 68 3d 5d 72 26 h.h7}r#...(h9]r$...h;]r%...h=]r&
3b80 03 00 00 68 3f 5d 72 27 03 00 00 68 41 5d 72 28 03 00 00 75 68 43 4b 5d 68 44 68 02 68 29 5d 72 ...h?]r'...hA]r(...uhCK]hDh.h)]r
3ba0 29 03 00 00 28 68 52 58 32 00 00 00 53 6f 20 74 6f 20 74 65 73 74 20 69 74 20 77 65 20 6e 65 65 )...(hRX2...So.to.test.it.we.nee
3bc0 64 20 74 6f 20 70 61 73 73 20 69 6e 20 61 6e 20 6f 62 6a 65 63 74 20 77 69 74 68 20 61 20 72 2a d.to.pass.in.an.object.with.a.r*
3be0 03 00 00 85 81 72 2b 03 00 00 7d 72 2c 03 00 00 28 68 2e 58 32 00 00 00 53 6f 20 74 6f 20 74 65 .....r+...}r,...(h.X2...So.to.te
3c00 73 74 20 69 74 20 77 65 20 6e 65 65 64 20 74 6f 20 70 61 73 73 20 69 6e 20 61 6e 20 6f 62 6a 65 st.it.we.need.to.pass.in.an.obje
3c20 63 74 20 77 69 74 68 20 61 20 72 2d 03 00 00 68 2f 6a 20 03 00 00 75 62 6a 66 01 00 00 29 81 72 ct.with.a.r-...h/j....ubjf...).r
3c40 2e 03 00 00 7d 72 2f 03 00 00 28 68 2e 58 07 00 00 00 60 63 6c 6f 73 65 60 72 30 03 00 00 68 37 ....}r/...(h.X....`close`r0...h7
3c60 7d 72 31 03 00 00 28 68 39 5d 72 32 03 00 00 68 3b 5d 72 33 03 00 00 68 3d 5d 72 34 03 00 00 68 }r1...(h9]r2...h;]r3...h=]r4...h
3c80 3f 5d 72 35 03 00 00 68 41 5d 72 36 03 00 00 75 68 2f 6a 20 03 00 00 68 29 5d 72 37 03 00 00 68 ?]r5...hA]r6...uh/j....h)]r7...h
3ca0 52 58 05 00 00 00 63 6c 6f 73 65 72 38 03 00 00 85 81 72 39 03 00 00 7d 72 3a 03 00 00 28 68 2e RX....closer8.....r9...}r:...(h.
3cc0 55 00 68 2f 6a 2e 03 00 00 75 62 61 68 35 6a 74 01 00 00 75 62 68 52 58 2f 00 00 00 20 6d 65 74 U.h/j....ubah5jt...ubhRX/....met
3ce0 68 6f 64 20 61 6e 64 20 63 68 65 63 6b 0a 74 68 61 74 20 69 74 20 77 61 73 20 63 61 6c 6c 65 64 hod.and.check.that.it.was.called
3d00 20 63 6f 72 72 65 63 74 6c 79 2e 72 3b 03 00 00 85 81 72 3c 03 00 00 7d 72 3d 03 00 00 28 68 2e .correctly.r;.....r<...}r=...(h.
3d20 58 2f 00 00 00 20 6d 65 74 68 6f 64 20 61 6e 64 20 63 68 65 63 6b 0a 74 68 61 74 20 69 74 20 77 X/....method.and.check.that.it.w
3d40 61 73 20 63 61 6c 6c 65 64 20 63 6f 72 72 65 63 74 6c 79 2e 72 3e 03 00 00 68 2f 6a 20 03 00 00 as.called.correctly.r>...h/j....
3d60 75 62 65 75 62 6a 44 01 00 00 29 81 72 3f 03 00 00 7d 72 40 03 00 00 28 68 2e 58 68 00 00 00 3e ubeubjD...).r?...}r@...(h.Xh...>
3d80 3e 3e 20 72 65 61 6c 20 3d 20 50 72 6f 64 75 63 74 69 6f 6e 43 6c 61 73 73 28 29 0a 3e 3e 3e 20 >>.real.=.ProductionClass().>>>.
3da0 6d 6f 63 6b 20 3d 20 4d 6f 63 6b 28 29 0a 3e 3e 3e 20 72 65 61 6c 2e 63 6c 6f 73 65 72 28 6d 6f mock.=.Mock().>>>.real.closer(mo
3dc0 63 6b 29 0a 3e 3e 3e 20 6d 6f 63 6b 2e 63 6c 6f 73 65 2e 61 73 73 65 72 74 5f 63 61 6c 6c 65 64 ck).>>>.mock.close.assert_called
3de0 5f 77 69 74 68 28 29 72 41 03 00 00 68 2f 6a aa 02 00 00 68 30 68 33 68 35 6a 48 01 00 00 68 37 _with()rA...h/j....h0h3h5jH...h7
3e00 7d 72 42 03 00 00 28 55 0c 74 65 73 74 6e 6f 64 65 74 79 70 65 72 43 03 00 00 58 07 00 00 00 64 }rB...(U.testnodetyperC...X....d
3e20 6f 63 74 65 73 74 72 44 03 00 00 68 84 68 85 68 3f 5d 72 45 03 00 00 68 3d 5d 72 46 03 00 00 68 octestrD...h.h.h?]rE...h=]rF...h
3e40 39 5d 72 47 03 00 00 68 3b 5d 72 48 03 00 00 68 41 5d 72 49 03 00 00 55 06 67 72 6f 75 70 73 72 9]rG...h;]rH...hA]rI...U.groupsr
3e60 4a 03 00 00 5d 72 4b 03 00 00 68 8d 61 68 8e 7d 72 4c 03 00 00 75 68 43 4b 60 68 44 68 02 68 29 J...]rK...h.ah.}rL...uhCK`hDh.h)
3e80 5d 72 4d 03 00 00 68 52 58 68 00 00 00 3e 3e 3e 20 72 65 61 6c 20 3d 20 50 72 6f 64 75 63 74 69 ]rM...hRXh...>>>.real.=.Producti
3ea0 6f 6e 43 6c 61 73 73 28 29 0a 3e 3e 3e 20 6d 6f 63 6b 20 3d 20 4d 6f 63 6b 28 29 0a 3e 3e 3e 20 onClass().>>>.mock.=.Mock().>>>.
3ec0 72 65 61 6c 2e 63 6c 6f 73 65 72 28 6d 6f 63 6b 29 0a 3e 3e 3e 20 6d 6f 63 6b 2e 63 6c 6f 73 65 real.closer(mock).>>>.mock.close
3ee0 2e 61 73 73 65 72 74 5f 63 61 6c 6c 65 64 5f 77 69 74 68 28 29 72 4e 03 00 00 85 81 72 4f 03 00 .assert_called_with()rN.....rO..
3f00 00 7d 72 50 03 00 00 28 68 2e 55 00 68 2f 6a 3f 03 00 00 75 62 61 75 62 68 c0 29 81 72 51 03 00 .}rP...(h.U.h/j?...ubaubh.).rQ..
3f20 00 7d 72 52 03 00 00 28 68 2e 58 00 01 00 00 57 65 20 64 6f 6e 27 74 20 68 61 76 65 20 74 6f 20 .}rR...(h.X....We.don't.have.to.
3f40 64 6f 20 61 6e 79 20 77 6f 72 6b 20 74 6f 20 70 72 6f 76 69 64 65 20 74 68 65 20 27 63 6c 6f 73 do.any.work.to.provide.the.'clos
3f60 65 27 20 6d 65 74 68 6f 64 20 6f 6e 20 6f 75 72 20 6d 6f 63 6b 2e 0a 41 63 63 65 73 73 69 6e 67 e'.method.on.our.mock..Accessing
3f80 20 63 6c 6f 73 65 20 63 72 65 61 74 65 73 20 69 74 2e 20 53 6f 2c 20 69 66 20 27 63 6c 6f 73 65 .close.creates.it..So,.if.'close
3fa0 27 20 68 61 73 6e 27 74 20 61 6c 72 65 61 64 79 20 62 65 65 6e 20 63 61 6c 6c 65 64 20 74 68 65 '.hasn't.already.been.called.the
3fc0 6e 0a 61 63 63 65 73 73 69 6e 67 20 69 74 20 69 6e 20 74 68 65 20 74 65 73 74 20 77 69 6c 6c 20 n.accessing.it.in.the.test.will.
3fe0 63 72 65 61 74 65 20 69 74 2c 20 62 75 74 20 3a 6d 65 74 68 3a 60 7e 4d 6f 63 6b 2e 61 73 73 65 create.it,.but.:meth:`~Mock.asse
4000 72 74 5f 63 61 6c 6c 65 64 5f 77 69 74 68 60 0a 77 69 6c 6c 20 72 61 69 73 65 20 61 20 66 61 69 rt_called_with`.will.raise.a.fai
4020 6c 75 72 65 20 65 78 63 65 70 74 69 6f 6e 2e 72 53 03 00 00 68 2f 6a aa 02 00 00 68 30 68 33 68 lure.exception.rS...h/j....h0h3h
4040 35 68 c4 68 37 7d 72 54 03 00 00 28 68 39 5d 72 55 03 00 00 68 3b 5d 72 56 03 00 00 68 3d 5d 72 5h.h7}rT...(h9]rU...h;]rV...h=]r
4060 57 03 00 00 68 3f 5d 72 58 03 00 00 68 41 5d 72 59 03 00 00 75 68 43 4b 67 68 44 68 02 68 29 5d W...h?]rX...hA]rY...uhCKghDh.h)]
4080 72 5a 03 00 00 28 68 52 58 c0 00 00 00 57 65 20 64 6f 6e 27 74 20 68 61 76 65 20 74 6f 20 64 6f rZ...(hRX....We.don't.have.to.do
40a0 20 61 6e 79 20 77 6f 72 6b 20 74 6f 20 70 72 6f 76 69 64 65 20 74 68 65 20 27 63 6c 6f 73 65 27 .any.work.to.provide.the.'close'
40c0 20 6d 65 74 68 6f 64 20 6f 6e 20 6f 75 72 20 6d 6f 63 6b 2e 0a 41 63 63 65 73 73 69 6e 67 20 63 .method.on.our.mock..Accessing.c
40e0 6c 6f 73 65 20 63 72 65 61 74 65 73 20 69 74 2e 20 53 6f 2c 20 69 66 20 27 63 6c 6f 73 65 27 20 lose.creates.it..So,.if.'close'.
4100 68 61 73 6e 27 74 20 61 6c 72 65 61 64 79 20 62 65 65 6e 20 63 61 6c 6c 65 64 20 74 68 65 6e 0a hasn't.already.been.called.then.
4120 61 63 63 65 73 73 69 6e 67 20 69 74 20 69 6e 20 74 68 65 20 74 65 73 74 20 77 69 6c 6c 20 63 72 accessing.it.in.the.test.will.cr
4140 65 61 74 65 20 69 74 2c 20 62 75 74 20 72 5b 03 00 00 85 81 72 5c 03 00 00 7d 72 5d 03 00 00 28 eate.it,.but.r[.....r\...}r]...(
4160 68 2e 58 c0 00 00 00 57 65 20 64 6f 6e 27 74 20 68 61 76 65 20 74 6f 20 64 6f 20 61 6e 79 20 77 h.X....We.don't.have.to.do.any.w
4180 6f 72 6b 20 74 6f 20 70 72 6f 76 69 64 65 20 74 68 65 20 27 63 6c 6f 73 65 27 20 6d 65 74 68 6f ork.to.provide.the.'close'.metho
41a0 64 20 6f 6e 20 6f 75 72 20 6d 6f 63 6b 2e 0a 41 63 63 65 73 73 69 6e 67 20 63 6c 6f 73 65 20 63 d.on.our.mock..Accessing.close.c
41c0 72 65 61 74 65 73 20 69 74 2e 20 53 6f 2c 20 69 66 20 27 63 6c 6f 73 65 27 20 68 61 73 6e 27 74 reates.it..So,.if.'close'.hasn't
41e0 20 61 6c 72 65 61 64 79 20 62 65 65 6e 20 63 61 6c 6c 65 64 20 74 68 65 6e 0a 61 63 63 65 73 73 .already.been.called.then.access
4200 69 6e 67 20 69 74 20 69 6e 20 74 68 65 20 74 65 73 74 20 77 69 6c 6c 20 63 72 65 61 74 65 20 69 ing.it.in.the.test.will.create.i
4220 74 2c 20 62 75 74 20 72 5e 03 00 00 68 2f 6a 51 03 00 00 75 62 68 d0 29 81 72 5f 03 00 00 7d 72 t,.but.r^...h/jQ...ubh.).r_...}r
4240 60 03 00 00 28 68 2e 58 20 00 00 00 3a 6d 65 74 68 3a 60 7e 4d 6f 63 6b 2e 61 73 73 65 72 74 5f `...(h.X....:meth:`~Mock.assert_
4260 63 61 6c 6c 65 64 5f 77 69 74 68 60 72 61 03 00 00 68 2f 6a 51 03 00 00 68 30 68 33 68 35 68 d4 called_with`ra...h/jQ...h0h3h5h.
4280 68 37 7d 72 62 03 00 00 28 55 07 72 65 66 74 79 70 65 72 63 03 00 00 58 04 00 00 00 6d 65 74 68 h7}rb...(U.reftyperc...X....meth
42a0 72 64 03 00 00 68 d8 89 68 d9 58 17 00 00 00 4d 6f 63 6b 2e 61 73 73 65 72 74 5f 63 61 6c 6c 65 rd...h..h.X....Mock.assert_calle
42c0 64 5f 77 69 74 68 72 65 03 00 00 55 09 72 65 66 64 6f 6d 61 69 6e 72 66 03 00 00 58 02 00 00 00 d_withre...U.refdomainrf...X....
42e0 70 79 72 67 03 00 00 68 3f 5d 72 68 03 00 00 68 3d 5d 72 69 03 00 00 55 0b 72 65 66 65 78 70 6c pyrg...h?]rh...h=]ri...U.refexpl
4300 69 63 69 74 72 6a 03 00 00 89 68 39 5d 72 6b 03 00 00 68 3b 5d 72 6c 03 00 00 68 41 5d 72 6d 03 icitrj....h9]rk...h;]rl...hA]rm.
4320 00 00 68 e3 68 e4 68 e5 4e 68 e6 4e 75 68 43 4b 67 68 29 5d 72 6e 03 00 00 68 e8 29 81 72 6f 03 ..h.h.h.Nh.NuhCKgh)]rn...h.).ro.
4340 00 00 7d 72 70 03 00 00 28 68 2e 6a 61 03 00 00 68 37 7d 72 71 03 00 00 28 68 39 5d 72 72 03 00 ..}rp...(h.ja...h7}rq...(h9]rr..
4360 00 68 3b 5d 72 73 03 00 00 28 68 ee 6a 67 03 00 00 58 07 00 00 00 70 79 2d 6d 65 74 68 72 74 03 .h;]rs...(h.jg...X....py-methrt.
4380 00 00 65 68 3d 5d 72 75 03 00 00 68 3f 5d 72 76 03 00 00 68 41 5d 72 77 03 00 00 75 68 2f 6a 5f ..eh=]ru...h?]rv...hA]rw...uh/j_
43a0 03 00 00 68 29 5d 72 78 03 00 00 68 52 58 14 00 00 00 61 73 73 65 72 74 5f 63 61 6c 6c 65 64 5f ...h)]rx...hRX....assert_called_
43c0 77 69 74 68 28 29 72 79 03 00 00 85 81 72 7a 03 00 00 7d 72 7b 03 00 00 28 68 2e 55 00 68 2f 6a with()ry.....rz...}r{...(h.U.h/j
43e0 6f 03 00 00 75 62 61 68 35 68 f7 75 62 61 75 62 68 52 58 20 00 00 00 0a 77 69 6c 6c 20 72 61 69 o...ubah5h.ubaubhRX.....will.rai
4400 73 65 20 61 20 66 61 69 6c 75 72 65 20 65 78 63 65 70 74 69 6f 6e 2e 72 7c 03 00 00 85 81 72 7d se.a.failure.exception.r|.....r}
4420 03 00 00 7d 72 7e 03 00 00 28 68 2e 58 20 00 00 00 0a 77 69 6c 6c 20 72 61 69 73 65 20 61 20 66 ...}r~...(h.X.....will.raise.a.f
4440 61 69 6c 75 72 65 20 65 78 63 65 70 74 69 6f 6e 2e 72 7f 03 00 00 68 2f 6a 51 03 00 00 75 62 65 ailure.exception.r....h/jQ...ube
4460 75 62 65 75 62 68 2b 29 81 72 80 03 00 00 7d 72 81 03 00 00 28 68 2e 55 00 68 2f 68 94 68 30 68 ubeubh+).r....}r....(h.U.h/h.h0h
4480 33 68 35 68 36 68 37 7d 72 82 03 00 00 28 68 39 5d 72 83 03 00 00 68 3b 5d 72 84 03 00 00 68 3d 3h5h6h7}r....(h9]r....h;]r....h=
44a0 5d 72 85 03 00 00 68 3f 5d 72 86 03 00 00 68 1e 61 68 41 5d 72 87 03 00 00 68 08 61 75 68 43 4b ]r....h?]r....h.ahA]r....h.auhCK
44c0 6e 68 44 68 02 68 29 5d 72 88 03 00 00 28 68 46 29 81 72 89 03 00 00 7d 72 8a 03 00 00 28 68 2e nhDh.h)]r....(hF).r....}r....(h.
44e0 58 0f 00 00 00 4d 6f 63 6b 69 6e 67 20 43 6c 61 73 73 65 73 72 8b 03 00 00 68 2f 6a 80 03 00 00 X....Mocking.Classesr....h/j....
4500 68 30 68 33 68 35 68 4a 68 37 7d 72 8c 03 00 00 28 68 39 5d 72 8d 03 00 00 68 3b 5d 72 8e 03 00 h0h3h5hJh7}r....(h9]r....h;]r...
4520 00 68 3d 5d 72 8f 03 00 00 68 3f 5d 72 90 03 00 00 68 41 5d 72 91 03 00 00 75 68 43 4b 6e 68 44 .h=]r....h?]r....hA]r....uhCKnhD
4540 68 02 68 29 5d 72 92 03 00 00 68 52 58 0f 00 00 00 4d 6f 63 6b 69 6e 67 20 43 6c 61 73 73 65 73 h.h)]r....hRX....Mocking.Classes
4560 72 93 03 00 00 85 81 72 94 03 00 00 7d 72 95 03 00 00 28 68 2e 6a 8b 03 00 00 68 2f 6a 89 03 00 r......r....}r....(h.j....h/j...
4580 00 75 62 61 75 62 68 c0 29 81 72 96 03 00 00 7d 72 97 03 00 00 28 68 2e 58 1b 01 00 00 41 20 63 .ubaubh.).r....}r....(h.X....A.c
45a0 6f 6d 6d 6f 6e 20 75 73 65 20 63 61 73 65 20 69 73 20 74 6f 20 6d 6f 63 6b 20 6f 75 74 20 63 6c ommon.use.case.is.to.mock.out.cl
45c0 61 73 73 65 73 20 69 6e 73 74 61 6e 74 69 61 74 65 64 20 62 79 20 79 6f 75 72 20 63 6f 64 65 20 asses.instantiated.by.your.code.
45e0 75 6e 64 65 72 20 74 65 73 74 2e 0a 57 68 65 6e 20 79 6f 75 20 70 61 74 63 68 20 61 20 63 6c 61 under.test..When.you.patch.a.cla
4600 73 73 2c 20 74 68 65 6e 20 74 68 61 74 20 63 6c 61 73 73 20 69 73 20 72 65 70 6c 61 63 65 64 20 ss,.then.that.class.is.replaced.
4620 77 69 74 68 20 61 20 6d 6f 63 6b 2e 20 49 6e 73 74 61 6e 63 65 73 0a 61 72 65 20 63 72 65 61 74 with.a.mock..Instances.are.creat
4640 65 64 20 62 79 20 2a 63 61 6c 6c 69 6e 67 20 74 68 65 20 63 6c 61 73 73 2a 2e 20 54 68 69 73 20 ed.by.*calling.the.class*..This.
4660 6d 65 61 6e 73 20 79 6f 75 20 61 63 63 65 73 73 20 74 68 65 20 22 6d 6f 63 6b 20 69 6e 73 74 61 means.you.access.the."mock.insta
4680 6e 63 65 22 0a 62 79 20 6c 6f 6f 6b 69 6e 67 20 61 74 20 74 68 65 20 72 65 74 75 72 6e 20 76 61 nce".by.looking.at.the.return.va
46a0 6c 75 65 20 6f 66 20 74 68 65 20 6d 6f 63 6b 65 64 20 63 6c 61 73 73 2e 72 98 03 00 00 68 2f 6a lue.of.the.mocked.class.r....h/j
46c0 80 03 00 00 68 30 68 33 68 35 68 c4 68 37 7d 72 99 03 00 00 28 68 39 5d 72 9a 03 00 00 68 3b 5d ....h0h3h5h.h7}r....(h9]r....h;]
46e0 72 9b 03 00 00 68 3d 5d 72 9c 03 00 00 68 3f 5d 72 9d 03 00 00 68 41 5d 72 9e 03 00 00 75 68 43 r....h=]r....h?]r....hA]r....uhC
4700 4b 70 68 44 68 02 68 29 5d 72 9f 03 00 00 28 68 52 58 a9 00 00 00 41 20 63 6f 6d 6d 6f 6e 20 75 KphDh.h)]r....(hRX....A.common.u
4720 73 65 20 63 61 73 65 20 69 73 20 74 6f 20 6d 6f 63 6b 20 6f 75 74 20 63 6c 61 73 73 65 73 20 69 se.case.is.to.mock.out.classes.i
4740 6e 73 74 61 6e 74 69 61 74 65 64 20 62 79 20 79 6f 75 72 20 63 6f 64 65 20 75 6e 64 65 72 20 74 nstantiated.by.your.code.under.t
4760 65 73 74 2e 0a 57 68 65 6e 20 79 6f 75 20 70 61 74 63 68 20 61 20 63 6c 61 73 73 2c 20 74 68 65 est..When.you.patch.a.class,.the
4780 6e 20 74 68 61 74 20 63 6c 61 73 73 20 69 73 20 72 65 70 6c 61 63 65 64 20 77 69 74 68 20 61 20 n.that.class.is.replaced.with.a.
47a0 6d 6f 63 6b 2e 20 49 6e 73 74 61 6e 63 65 73 0a 61 72 65 20 63 72 65 61 74 65 64 20 62 79 20 72 mock..Instances.are.created.by.r
47c0 a0 03 00 00 85 81 72 a1 03 00 00 7d 72 a2 03 00 00 28 68 2e 58 a9 00 00 00 41 20 63 6f 6d 6d 6f ......r....}r....(h.X....A.commo
47e0 6e 20 75 73 65 20 63 61 73 65 20 69 73 20 74 6f 20 6d 6f 63 6b 20 6f 75 74 20 63 6c 61 73 73 65 n.use.case.is.to.mock.out.classe
4800 73 20 69 6e 73 74 61 6e 74 69 61 74 65 64 20 62 79 20 79 6f 75 72 20 63 6f 64 65 20 75 6e 64 65 s.instantiated.by.your.code.unde
4820 72 20 74 65 73 74 2e 0a 57 68 65 6e 20 79 6f 75 20 70 61 74 63 68 20 61 20 63 6c 61 73 73 2c 20 r.test..When.you.patch.a.class,.
4840 74 68 65 6e 20 74 68 61 74 20 63 6c 61 73 73 20 69 73 20 72 65 70 6c 61 63 65 64 20 77 69 74 68 then.that.class.is.replaced.with
4860 20 61 20 6d 6f 63 6b 2e 20 49 6e 73 74 61 6e 63 65 73 0a 61 72 65 20 63 72 65 61 74 65 64 20 62 .a.mock..Instances.are.created.b
4880 79 20 72 a3 03 00 00 68 2f 6a 96 03 00 00 75 62 63 64 6f 63 75 74 69 6c 73 2e 6e 6f 64 65 73 0a y.r....h/j....ubcdocutils.nodes.
48a0 65 6d 70 68 61 73 69 73 0a 72 a4 03 00 00 29 81 72 a5 03 00 00 7d 72 a6 03 00 00 28 68 2e 58 13 emphasis.r....).r....}r....(h.X.
48c0 00 00 00 2a 63 61 6c 6c 69 6e 67 20 74 68 65 20 63 6c 61 73 73 2a 72 a7 03 00 00 68 37 7d 72 a8 ...*calling.the.class*r....h7}r.
48e0 03 00 00 28 68 39 5d 72 a9 03 00 00 68 3b 5d 72 aa 03 00 00 68 3d 5d 72 ab 03 00 00 68 3f 5d 72 ...(h9]r....h;]r....h=]r....h?]r
4900 ac 03 00 00 68 41 5d 72 ad 03 00 00 75 68 2f 6a 96 03 00 00 68 29 5d 72 ae 03 00 00 68 52 58 11 ....hA]r....uh/j....h)]r....hRX.
4920 00 00 00 63 61 6c 6c 69 6e 67 20 74 68 65 20 63 6c 61 73 73 72 af 03 00 00 85 81 72 b0 03 00 00 ...calling.the.classr......r....
4940 7d 72 b1 03 00 00 28 68 2e 55 00 68 2f 6a a5 03 00 00 75 62 61 68 35 55 08 65 6d 70 68 61 73 69 }r....(h.U.h/j....ubah5U.emphasi
4960 73 72 b2 03 00 00 75 62 68 52 58 5f 00 00 00 2e 20 54 68 69 73 20 6d 65 61 6e 73 20 79 6f 75 20 sr....ubhRX_.....This.means.you.
4980 61 63 63 65 73 73 20 74 68 65 20 22 6d 6f 63 6b 20 69 6e 73 74 61 6e 63 65 22 0a 62 79 20 6c 6f access.the."mock.instance".by.lo
49a0 6f 6b 69 6e 67 20 61 74 20 74 68 65 20 72 65 74 75 72 6e 20 76 61 6c 75 65 20 6f 66 20 74 68 65 oking.at.the.return.value.of.the
49c0 20 6d 6f 63 6b 65 64 20 63 6c 61 73 73 2e 72 b3 03 00 00 85 81 72 b4 03 00 00 7d 72 b5 03 00 00 .mocked.class.r......r....}r....
49e0 28 68 2e 58 5f 00 00 00 2e 20 54 68 69 73 20 6d 65 61 6e 73 20 79 6f 75 20 61 63 63 65 73 73 20 (h.X_.....This.means.you.access.
4a00 74 68 65 20 22 6d 6f 63 6b 20 69 6e 73 74 61 6e 63 65 22 0a 62 79 20 6c 6f 6f 6b 69 6e 67 20 61 the."mock.instance".by.looking.a
4a20 74 20 74 68 65 20 72 65 74 75 72 6e 20 76 61 6c 75 65 20 6f 66 20 74 68 65 20 6d 6f 63 6b 65 64 t.the.return.value.of.the.mocked
4a40 20 63 6c 61 73 73 2e 72 b6 03 00 00 68 2f 6a 96 03 00 00 75 62 65 75 62 68 c0 29 81 72 b7 03 00 .class.r....h/j....ubeubh.).r...
4a60 00 7d 72 b8 03 00 00 28 68 2e 58 1f 01 00 00 49 6e 20 74 68 65 20 65 78 61 6d 70 6c 65 20 62 65 .}r....(h.X....In.the.example.be
4a80 6c 6f 77 20 77 65 20 68 61 76 65 20 61 20 66 75 6e 63 74 69 6f 6e 20 60 73 6f 6d 65 5f 66 75 6e low.we.have.a.function.`some_fun
4aa0 63 74 69 6f 6e 60 20 74 68 61 74 20 69 6e 73 74 61 6e 74 69 61 74 65 73 20 60 46 6f 6f 60 0a 61 ction`.that.instantiates.`Foo`.a
4ac0 6e 64 20 63 61 6c 6c 73 20 61 20 6d 65 74 68 6f 64 20 6f 6e 20 69 74 2e 20 54 68 65 20 63 61 6c nd.calls.a.method.on.it..The.cal
4ae0 6c 20 74 6f 20 60 70 61 74 63 68 60 20 72 65 70 6c 61 63 65 73 20 74 68 65 20 63 6c 61 73 73 20 l.to.`patch`.replaces.the.class.
4b00 60 46 6f 6f 60 20 77 69 74 68 20 61 0a 6d 6f 63 6b 2e 20 54 68 65 20 60 46 6f 6f 60 20 69 6e 73 `Foo`.with.a.mock..The.`Foo`.ins
4b20 74 61 6e 63 65 20 69 73 20 74 68 65 20 72 65 73 75 6c 74 20 6f 66 20 63 61 6c 6c 69 6e 67 20 74 tance.is.the.result.of.calling.t
4b40 68 65 20 6d 6f 63 6b 2c 20 73 6f 20 69 74 20 69 73 20 63 6f 6e 66 69 67 75 72 65 64 0a 62 79 20 he.mock,.so.it.is.configured.by.
4b60 6d 6f 64 69 66 79 69 6e 67 20 74 68 65 20 6d 6f 63 6b 20 3a 61 74 74 72 3a 60 7e 4d 6f 63 6b 2e modifying.the.mock.:attr:`~Mock.
4b80 72 65 74 75 72 6e 5f 76 61 6c 75 65 60 2e 72 b9 03 00 00 68 2f 6a 80 03 00 00 68 30 68 33 68 35 return_value`.r....h/j....h0h3h5
4ba0 68 c4 68 37 7d 72 ba 03 00 00 28 68 39 5d 72 bb 03 00 00 68 3b 5d 72 bc 03 00 00 68 3d 5d 72 bd h.h7}r....(h9]r....h;]r....h=]r.
4bc0 03 00 00 68 3f 5d 72 be 03 00 00 68 41 5d 72 bf 03 00 00 75 68 43 4b 75 68 44 68 02 68 29 5d 72 ...h?]r....hA]r....uhCKuhDh.h)]r
4be0 c0 03 00 00 28 68 52 58 28 00 00 00 49 6e 20 74 68 65 20 65 78 61 6d 70 6c 65 20 62 65 6c 6f 77 ....(hRX(...In.the.example.below
4c00 20 77 65 20 68 61 76 65 20 61 20 66 75 6e 63 74 69 6f 6e 20 72 c1 03 00 00 85 81 72 c2 03 00 00 .we.have.a.function.r......r....
4c20 7d 72 c3 03 00 00 28 68 2e 58 28 00 00 00 49 6e 20 74 68 65 20 65 78 61 6d 70 6c 65 20 62 65 6c }r....(h.X(...In.the.example.bel
4c40 6f 77 20 77 65 20 68 61 76 65 20 61 20 66 75 6e 63 74 69 6f 6e 20 72 c4 03 00 00 68 2f 6a b7 03 ow.we.have.a.function.r....h/j..
4c60 00 00 75 62 6a 66 01 00 00 29 81 72 c5 03 00 00 7d 72 c6 03 00 00 28 68 2e 58 0f 00 00 00 60 73 ..ubjf...).r....}r....(h.X....`s
4c80 6f 6d 65 5f 66 75 6e 63 74 69 6f 6e 60 72 c7 03 00 00 68 37 7d 72 c8 03 00 00 28 68 39 5d 72 c9 ome_function`r....h7}r....(h9]r.
4ca0 03 00 00 68 3b 5d 72 ca 03 00 00 68 3d 5d 72 cb 03 00 00 68 3f 5d 72 cc 03 00 00 68 41 5d 72 cd ...h;]r....h=]r....h?]r....hA]r.
4cc0 03 00 00 75 68 2f 6a b7 03 00 00 68 29 5d 72 ce 03 00 00 68 52 58 0d 00 00 00 73 6f 6d 65 5f 66 ...uh/j....h)]r....hRX....some_f
4ce0 75 6e 63 74 69 6f 6e 72 cf 03 00 00 85 81 72 d0 03 00 00 7d 72 d1 03 00 00 28 68 2e 55 00 68 2f unctionr......r....}r....(h.U.h/
4d00 6a c5 03 00 00 75 62 61 68 35 6a 74 01 00 00 75 62 68 52 58 13 00 00 00 20 74 68 61 74 20 69 6e j....ubah5jt...ubhRX.....that.in
4d20 73 74 61 6e 74 69 61 74 65 73 20 72 d2 03 00 00 85 81 72 d3 03 00 00 7d 72 d4 03 00 00 28 68 2e stantiates.r......r....}r....(h.
4d40 58 13 00 00 00 20 74 68 61 74 20 69 6e 73 74 61 6e 74 69 61 74 65 73 20 72 d5 03 00 00 68 2f 6a X.....that.instantiates.r....h/j
4d60 b7 03 00 00 75 62 6a 66 01 00 00 29 81 72 d6 03 00 00 7d 72 d7 03 00 00 28 68 2e 58 05 00 00 00 ....ubjf...).r....}r....(h.X....
4d80 60 46 6f 6f 60 72 d8 03 00 00 68 37 7d 72 d9 03 00 00 28 68 39 5d 72 da 03 00 00 68 3b 5d 72 db `Foo`r....h7}r....(h9]r....h;]r.
4da0 03 00 00 68 3d 5d 72 dc 03 00 00 68 3f 5d 72 dd 03 00 00 68 41 5d 72 de 03 00 00 75 68 2f 6a b7 ...h=]r....h?]r....hA]r....uh/j.
4dc0 03 00 00 68 29 5d 72 df 03 00 00 68 52 58 03 00 00 00 46 6f 6f 72 e0 03 00 00 85 81 72 e1 03 00 ...h)]r....hRX....Foor......r...
4de0 00 7d 72 e2 03 00 00 28 68 2e 55 00 68 2f 6a d6 03 00 00 75 62 61 68 35 6a 74 01 00 00 75 62 68 .}r....(h.U.h/j....ubah5jt...ubh
4e00 52 58 27 00 00 00 0a 61 6e 64 20 63 61 6c 6c 73 20 61 20 6d 65 74 68 6f 64 20 6f 6e 20 69 74 2e RX'....and.calls.a.method.on.it.
4e20 20 54 68 65 20 63 61 6c 6c 20 74 6f 20 72 e3 03 00 00 85 81 72 e4 03 00 00 7d 72 e5 03 00 00 28 .The.call.to.r......r....}r....(
4e40 68 2e 58 27 00 00 00 0a 61 6e 64 20 63 61 6c 6c 73 20 61 20 6d 65 74 68 6f 64 20 6f 6e 20 69 74 h.X'....and.calls.a.method.on.it
4e60 2e 20 54 68 65 20 63 61 6c 6c 20 74 6f 20 72 e6 03 00 00 68 2f 6a b7 03 00 00 75 62 6a 66 01 00 ..The.call.to.r....h/j....ubjf..
4e80 00 29 81 72 e7 03 00 00 7d 72 e8 03 00 00 28 68 2e 58 07 00 00 00 60 70 61 74 63 68 60 72 e9 03 .).r....}r....(h.X....`patch`r..
4ea0 00 00 68 37 7d 72 ea 03 00 00 28 68 39 5d 72 eb 03 00 00 68 3b 5d 72 ec 03 00 00 68 3d 5d 72 ed ..h7}r....(h9]r....h;]r....h=]r.
4ec0 03 00 00 68 3f 5d 72 ee 03 00 00 68 41 5d 72 ef 03 00 00 75 68 2f 6a b7 03 00 00 68 29 5d 72 f0 ...h?]r....hA]r....uh/j....h)]r.
4ee0 03 00 00 68 52 58 05 00 00 00 70 61 74 63 68 72 f1 03 00 00 85 81 72 f2 03 00 00 7d 72 f3 03 00 ...hRX....patchr......r....}r...
4f00 00 28 68 2e 55 00 68 2f 6a e7 03 00 00 75 62 61 68 35 6a 74 01 00 00 75 62 68 52 58 14 00 00 00 .(h.U.h/j....ubah5jt...ubhRX....
4f20 20 72 65 70 6c 61 63 65 73 20 74 68 65 20 63 6c 61 73 73 20 72 f4 03 00 00 85 81 72 f5 03 00 00 .replaces.the.class.r......r....
4f40 7d 72 f6 03 00 00 28 68 2e 58 14 00 00 00 20 72 65 70 6c 61 63 65 73 20 74 68 65 20 63 6c 61 73 }r....(h.X.....replaces.the.clas
4f60 73 20 72 f7 03 00 00 68 2f 6a b7 03 00 00 75 62 6a 66 01 00 00 29 81 72 f8 03 00 00 7d 72 f9 03 s.r....h/j....ubjf...).r....}r..
4f80 00 00 28 68 2e 58 05 00 00 00 60 46 6f 6f 60 72 fa 03 00 00 68 37 7d 72 fb 03 00 00 28 68 39 5d ..(h.X....`Foo`r....h7}r....(h9]
4fa0 72 fc 03 00 00 68 3b 5d 72 fd 03 00 00 68 3d 5d 72 fe 03 00 00 68 3f 5d 72 ff 03 00 00 68 41 5d r....h;]r....h=]r....h?]r....hA]
4fc0 72 00 04 00 00 75 68 2f 6a b7 03 00 00 68 29 5d 72 01 04 00 00 68 52 58 03 00 00 00 46 6f 6f 72 r....uh/j....h)]r....hRX....Foor
4fe0 02 04 00 00 85 81 72 03 04 00 00 7d 72 04 04 00 00 28 68 2e 55 00 68 2f 6a f8 03 00 00 75 62 61 ......r....}r....(h.U.h/j....uba
5000 68 35 6a 74 01 00 00 75 62 68 52 58 12 00 00 00 20 77 69 74 68 20 61 0a 6d 6f 63 6b 2e 20 54 68 h5jt...ubhRX.....with.a.mock..Th
5020 65 20 72 05 04 00 00 85 81 72 06 04 00 00 7d 72 07 04 00 00 28 68 2e 58 12 00 00 00 20 77 69 74 e.r......r....}r....(h.X.....wit
5040 68 20 61 0a 6d 6f 63 6b 2e 20 54 68 65 20 72 08 04 00 00 68 2f 6a b7 03 00 00 75 62 6a 66 01 00 h.a.mock..The.r....h/j....ubjf..
5060 00 29 81 72 09 04 00 00 7d 72 0a 04 00 00 28 68 2e 58 05 00 00 00 60 46 6f 6f 60 72 0b 04 00 00 .).r....}r....(h.X....`Foo`r....
5080 68 37 7d 72 0c 04 00 00 28 68 39 5d 72 0d 04 00 00 68 3b 5d 72 0e 04 00 00 68 3d 5d 72 0f 04 00 h7}r....(h9]r....h;]r....h=]r...
50a0 00 68 3f 5d 72 10 04 00 00 68 41 5d 72 11 04 00 00 75 68 2f 6a b7 03 00 00 68 29 5d 72 12 04 00 .h?]r....hA]r....uh/j....h)]r...
50c0 00 68 52 58 03 00 00 00 46 6f 6f 72 13 04 00 00 85 81 72 14 04 00 00 7d 72 15 04 00 00 28 68 2e .hRX....Foor......r....}r....(h.
50e0 55 00 68 2f 6a 09 04 00 00 75 62 61 68 35 6a 74 01 00 00 75 62 68 52 58 57 00 00 00 20 69 6e 73 U.h/j....ubah5jt...ubhRXW....ins
5100 74 61 6e 63 65 20 69 73 20 74 68 65 20 72 65 73 75 6c 74 20 6f 66 20 63 61 6c 6c 69 6e 67 20 74 tance.is.the.result.of.calling.t
5120 68 65 20 6d 6f 63 6b 2c 20 73 6f 20 69 74 20 69 73 20 63 6f 6e 66 69 67 75 72 65 64 0a 62 79 20 he.mock,.so.it.is.configured.by.
5140 6d 6f 64 69 66 79 69 6e 67 20 74 68 65 20 6d 6f 63 6b 20 72 16 04 00 00 85 81 72 17 04 00 00 7d modifying.the.mock.r......r....}
5160 72 18 04 00 00 28 68 2e 58 57 00 00 00 20 69 6e 73 74 61 6e 63 65 20 69 73 20 74 68 65 20 72 65 r....(h.XW....instance.is.the.re
5180 73 75 6c 74 20 6f 66 20 63 61 6c 6c 69 6e 67 20 74 68 65 20 6d 6f 63 6b 2c 20 73 6f 20 69 74 20 sult.of.calling.the.mock,.so.it.
51a0 69 73 20 63 6f 6e 66 69 67 75 72 65 64 0a 62 79 20 6d 6f 64 69 66 79 69 6e 67 20 74 68 65 20 6d is.configured.by.modifying.the.m
51c0 6f 63 6b 20 72 19 04 00 00 68 2f 6a b7 03 00 00 75 62 68 d0 29 81 72 1a 04 00 00 7d 72 1b 04 00 ock.r....h/j....ubh.).r....}r...
51e0 00 28 68 2e 58 1a 00 00 00 3a 61 74 74 72 3a 60 7e 4d 6f 63 6b 2e 72 65 74 75 72 6e 5f 76 61 6c .(h.X....:attr:`~Mock.return_val
5200 75 65 60 72 1c 04 00 00 68 2f 6a b7 03 00 00 68 30 68 33 68 35 68 d4 68 37 7d 72 1d 04 00 00 28 ue`r....h/j....h0h3h5h.h7}r....(
5220 55 07 72 65 66 74 79 70 65 72 1e 04 00 00 58 04 00 00 00 61 74 74 72 72 1f 04 00 00 68 d8 89 68 U.reftyper....X....attrr....h..h
5240 d9 58 11 00 00 00 4d 6f 63 6b 2e 72 65 74 75 72 6e 5f 76 61 6c 75 65 72 20 04 00 00 55 09 72 65 .X....Mock.return_valuer....U.re
5260 66 64 6f 6d 61 69 6e 72 21 04 00 00 58 02 00 00 00 70 79 72 22 04 00 00 68 3f 5d 72 23 04 00 00 fdomainr!...X....pyr"...h?]r#...
5280 68 3d 5d 72 24 04 00 00 55 0b 72 65 66 65 78 70 6c 69 63 69 74 72 25 04 00 00 89 68 39 5d 72 26 h=]r$...U.refexplicitr%....h9]r&
52a0 04 00 00 68 3b 5d 72 27 04 00 00 68 41 5d 72 28 04 00 00 68 e3 68 e4 68 e5 4e 68 e6 4e 75 68 43 ...h;]r'...hA]r(...h.h.h.Nh.NuhC
52c0 4b 75 68 29 5d 72 29 04 00 00 68 e8 29 81 72 2a 04 00 00 7d 72 2b 04 00 00 28 68 2e 6a 1c 04 00 Kuh)]r)...h.).r*...}r+...(h.j...
52e0 00 68 37 7d 72 2c 04 00 00 28 68 39 5d 72 2d 04 00 00 68 3b 5d 72 2e 04 00 00 28 68 ee 6a 22 04 .h7}r,...(h9]r-...h;]r....(h.j".
5300 00 00 58 07 00 00 00 70 79 2d 61 74 74 72 72 2f 04 00 00 65 68 3d 5d 72 30 04 00 00 68 3f 5d 72 ..X....py-attrr/...eh=]r0...h?]r
5320 31 04 00 00 68 41 5d 72 32 04 00 00 75 68 2f 6a 1a 04 00 00 68 29 5d 72 33 04 00 00 68 52 58 0c 1...hA]r2...uh/j....h)]r3...hRX.
5340 00 00 00 72 65 74 75 72 6e 5f 76 61 6c 75 65 72 34 04 00 00 85 81 72 35 04 00 00 7d 72 36 04 00 ...return_valuer4.....r5...}r6..
5360 00 28 68 2e 55 00 68 2f 6a 2a 04 00 00 75 62 61 68 35 68 f7 75 62 61 75 62 68 52 58 01 00 00 00 .(h.U.h/j*...ubah5h.ubaubhRX....
5380 2e 85 81 72 37 04 00 00 7d 72 38 04 00 00 28 68 2e 58 01 00 00 00 2e 68 2f 6a b7 03 00 00 75 62 ...r7...}r8...(h.X.....h/j....ub
53a0 65 75 62 6a 44 01 00 00 29 81 72 39 04 00 00 7d 72 3a 04 00 00 28 68 2e 58 23 01 00 00 3e 3e 3e eubjD...).r9...}r:...(h.X#...>>>
53c0 20 64 65 66 20 73 6f 6d 65 5f 66 75 6e 63 74 69 6f 6e 28 29 3a 0a 2e 2e 2e 20 20 20 20 20 69 6e .def.some_function():.........in
53e0 73 74 61 6e 63 65 20 3d 20 6d 6f 64 75 6c 65 2e 46 6f 6f 28 29 0a 2e 2e 2e 20 20 20 20 20 72 65 stance.=.module.Foo().........re
5400 74 75 72 6e 20 69 6e 73 74 61 6e 63 65 2e 6d 65 74 68 6f 64 28 29 0a 2e 2e 2e 0a 3e 3e 3e 20 77 turn.instance.method().....>>>.w
5420 69 74 68 20 70 61 74 63 68 28 27 6d 6f 64 75 6c 65 2e 46 6f 6f 27 29 20 61 73 20 6d 6f 63 6b 3a ith.patch('module.Foo').as.mock:
5440 0a 2e 2e 2e 20 20 20 20 20 69 6e 73 74 61 6e 63 65 20 3d 20 6d 6f 63 6b 2e 72 65 74 75 72 6e 5f .........instance.=.mock.return_
5460 76 61 6c 75 65 0a 2e 2e 2e 20 20 20 20 20 69 6e 73 74 61 6e 63 65 2e 6d 65 74 68 6f 64 2e 72 65 value.........instance.method.re
5480 74 75 72 6e 5f 76 61 6c 75 65 20 3d 20 27 74 68 65 20 72 65 73 75 6c 74 27 0a 2e 2e 2e 20 20 20 turn_value.=.'the.result'.......
54a0 20 20 72 65 73 75 6c 74 20 3d 20 73 6f 6d 65 5f 66 75 6e 63 74 69 6f 6e 28 29 0a 2e 2e 2e 20 20 ..result.=.some_function()......
54c0 20 20 20 61 73 73 65 72 74 20 72 65 73 75 6c 74 20 3d 3d 20 27 74 68 65 20 72 65 73 75 6c 74 27 ...assert.result.==.'the.result'
54e0 72 3b 04 00 00 68 2f 6a 80 03 00 00 68 30 68 33 68 35 6a 48 01 00 00 68 37 7d 72 3c 04 00 00 28 r;...h/j....h0h3h5jH...h7}r<...(
5500 55 0c 74 65 73 74 6e 6f 64 65 74 79 70 65 72 3d 04 00 00 58 07 00 00 00 64 6f 63 74 65 73 74 72 U.testnodetyper=...X....doctestr
5520 3e 04 00 00 68 84 68 85 68 3f 5d 72 3f 04 00 00 68 3d 5d 72 40 04 00 00 68 39 5d 72 41 04 00 00 >...h.h.h?]r?...h=]r@...h9]rA...
5540 68 3b 5d 72 42 04 00 00 68 41 5d 72 43 04 00 00 55 06 67 72 6f 75 70 73 72 44 04 00 00 5d 72 45 h;]rB...hA]rC...U.groupsrD...]rE
5560 04 00 00 68 8d 61 68 8e 7d 72 46 04 00 00 75 68 43 4b 7a 68 44 68 02 68 29 5d 72 47 04 00 00 68 ...h.ah.}rF...uhCKzhDh.h)]rG...h
5580 52 58 23 01 00 00 3e 3e 3e 20 64 65 66 20 73 6f 6d 65 5f 66 75 6e 63 74 69 6f 6e 28 29 3a 0a 2e RX#...>>>.def.some_function():..
55a0 2e 2e 20 20 20 20 20 69 6e 73 74 61 6e 63 65 20 3d 20 6d 6f 64 75 6c 65 2e 46 6f 6f 28 29 0a 2e .......instance.=.module.Foo()..
55c0 2e 2e 20 20 20 20 20 72 65 74 75 72 6e 20 69 6e 73 74 61 6e 63 65 2e 6d 65 74 68 6f 64 28 29 0a .......return.instance.method().
55e0 2e 2e 2e 0a 3e 3e 3e 20 77 69 74 68 20 70 61 74 63 68 28 27 6d 6f 64 75 6c 65 2e 46 6f 6f 27 29 ....>>>.with.patch('module.Foo')
5600 20 61 73 20 6d 6f 63 6b 3a 0a 2e 2e 2e 20 20 20 20 20 69 6e 73 74 61 6e 63 65 20 3d 20 6d 6f 63 .as.mock:.........instance.=.moc
5620 6b 2e 72 65 74 75 72 6e 5f 76 61 6c 75 65 0a 2e 2e 2e 20 20 20 20 20 69 6e 73 74 61 6e 63 65 2e k.return_value.........instance.
5640 6d 65 74 68 6f 64 2e 72 65 74 75 72 6e 5f 76 61 6c 75 65 20 3d 20 27 74 68 65 20 72 65 73 75 6c method.return_value.=.'the.resul
5660 74 27 0a 2e 2e 2e 20 20 20 20 20 72 65 73 75 6c 74 20 3d 20 73 6f 6d 65 5f 66 75 6e 63 74 69 6f t'.........result.=.some_functio
5680 6e 28 29 0a 2e 2e 2e 20 20 20 20 20 61 73 73 65 72 74 20 72 65 73 75 6c 74 20 3d 3d 20 27 74 68 n().........assert.result.==.'th
56a0 65 20 72 65 73 75 6c 74 27 72 48 04 00 00 85 81 72 49 04 00 00 7d 72 4a 04 00 00 28 68 2e 55 00 e.result'rH.....rI...}rJ...(h.U.
56c0 68 2f 6a 39 04 00 00 75 62 61 75 62 65 75 62 68 2b 29 81 72 4b 04 00 00 7d 72 4c 04 00 00 28 68 h/j9...ubaubeubh+).rK...}rL...(h
56e0 2e 55 00 68 2f 68 94 68 30 68 33 68 35 68 36 68 37 7d 72 4d 04 00 00 28 68 39 5d 72 4e 04 00 00 .U.h/h.h0h3h5h6h7}rM...(h9]rN...
5700 68 3b 5d 72 4f 04 00 00 68 3d 5d 72 50 04 00 00 68 3f 5d 72 51 04 00 00 68 25 61 68 41 5d 72 52 h;]rO...h=]rP...h?]rQ...h%ahA]rR
5720 04 00 00 68 0f 61 75 68 43 4b 88 68 44 68 02 68 29 5d 72 53 04 00 00 28 68 46 29 81 72 54 04 00 ...h.auhCK.hDh.h)]rS...(hF).rT..
5740 00 7d 72 55 04 00 00 28 68 2e 58 11 00 00 00 4e 61 6d 69 6e 67 20 79 6f 75 72 20 6d 6f 63 6b 73 .}rU...(h.X....Naming.your.mocks
5760 72 56 04 00 00 68 2f 6a 4b 04 00 00 68 30 68 33 68 35 68 4a 68 37 7d 72 57 04 00 00 28 68 39 5d rV...h/jK...h0h3h5hJh7}rW...(h9]
5780 72 58 04 00 00 68 3b 5d 72 59 04 00 00 68 3d 5d 72 5a 04 00 00 68 3f 5d 72 5b 04 00 00 68 41 5d rX...h;]rY...h=]rZ...h?]r[...hA]
57a0 72 5c 04 00 00 75 68 43 4b 88 68 44 68 02 68 29 5d 72 5d 04 00 00 68 52 58 11 00 00 00 4e 61 6d r\...uhCK.hDh.h)]r]...hRX....Nam
57c0 69 6e 67 20 79 6f 75 72 20 6d 6f 63 6b 73 72 5e 04 00 00 85 81 72 5f 04 00 00 7d 72 60 04 00 00 ing.your.mocksr^.....r_...}r`...
57e0 28 68 2e 6a 56 04 00 00 68 2f 6a 54 04 00 00 75 62 61 75 62 68 c0 29 81 72 61 04 00 00 7d 72 62 (h.jV...h/jT...ubaubh.).ra...}rb
5800 04 00 00 28 68 2e 58 da 00 00 00 49 74 20 63 61 6e 20 62 65 20 75 73 65 66 75 6c 20 74 6f 20 67 ...(h.X....It.can.be.useful.to.g
5820 69 76 65 20 79 6f 75 72 20 6d 6f 63 6b 73 20 61 20 6e 61 6d 65 2e 20 54 68 65 20 6e 61 6d 65 20 ive.your.mocks.a.name..The.name.
5840 69 73 20 73 68 6f 77 6e 20 69 6e 20 74 68 65 20 72 65 70 72 20 6f 66 0a 74 68 65 20 6d 6f 63 6b is.shown.in.the.repr.of.the.mock
5860 20 61 6e 64 20 63 61 6e 20 62 65 20 68 65 6c 70 66 75 6c 20 77 68 65 6e 20 74 68 65 20 6d 6f 63 .and.can.be.helpful.when.the.moc
5880 6b 20 61 70 70 65 61 72 73 20 69 6e 20 74 65 73 74 20 66 61 69 6c 75 72 65 20 6d 65 73 73 61 67 k.appears.in.test.failure.messag
58a0 65 73 2e 20 54 68 65 0a 6e 61 6d 65 20 69 73 20 61 6c 73 6f 20 70 72 6f 70 61 67 61 74 65 64 20 es..The.name.is.also.propagated.
58c0 74 6f 20 61 74 74 72 69 62 75 74 65 73 20 6f 72 20 6d 65 74 68 6f 64 73 20 6f 66 20 74 68 65 20 to.attributes.or.methods.of.the.
58e0 6d 6f 63 6b 3a 72 63 04 00 00 68 2f 6a 4b 04 00 00 68 30 68 33 68 35 68 c4 68 37 7d 72 64 04 00 mock:rc...h/jK...h0h3h5h.h7}rd..
5900 00 28 68 39 5d 72 65 04 00 00 68 3b 5d 72 66 04 00 00 68 3d 5d 72 67 04 00 00 68 3f 5d 72 68 04 .(h9]re...h;]rf...h=]rg...h?]rh.
5920 00 00 68 41 5d 72 69 04 00 00 75 68 43 4b 8a 68 44 68 02 68 29 5d 72 6a 04 00 00 68 52 58 da 00 ..hA]ri...uhCK.hDh.h)]rj...hRX..
5940 00 00 49 74 20 63 61 6e 20 62 65 20 75 73 65 66 75 6c 20 74 6f 20 67 69 76 65 20 79 6f 75 72 20 ..It.can.be.useful.to.give.your.
5960 6d 6f 63 6b 73 20 61 20 6e 61 6d 65 2e 20 54 68 65 20 6e 61 6d 65 20 69 73 20 73 68 6f 77 6e 20 mocks.a.name..The.name.is.shown.
5980 69 6e 20 74 68 65 20 72 65 70 72 20 6f 66 0a 74 68 65 20 6d 6f 63 6b 20 61 6e 64 20 63 61 6e 20 in.the.repr.of.the.mock.and.can.
59a0 62 65 20 68 65 6c 70 66 75 6c 20 77 68 65 6e 20 74 68 65 20 6d 6f 63 6b 20 61 70 70 65 61 72 73 be.helpful.when.the.mock.appears
59c0 20 69 6e 20 74 65 73 74 20 66 61 69 6c 75 72 65 20 6d 65 73 73 61 67 65 73 2e 20 54 68 65 0a 6e .in.test.failure.messages..The.n
59e0 61 6d 65 20 69 73 20 61 6c 73 6f 20 70 72 6f 70 61 67 61 74 65 64 20 74 6f 20 61 74 74 72 69 62 ame.is.also.propagated.to.attrib
5a00 75 74 65 73 20 6f 72 20 6d 65 74 68 6f 64 73 20 6f 66 20 74 68 65 20 6d 6f 63 6b 3a 72 6b 04 00 utes.or.methods.of.the.mock:rk..
5a20 00 85 81 72 6c 04 00 00 7d 72 6d 04 00 00 28 68 2e 6a 63 04 00 00 68 2f 6a 61 04 00 00 75 62 61 ...rl...}rm...(h.jc...h/ja...uba
5a40 75 62 6a 44 01 00 00 29 81 72 6e 04 00 00 7d 72 6f 04 00 00 28 68 2e 58 80 00 00 00 3e 3e 3e 20 ubjD...).rn...}ro...(h.X....>>>.
5a60 6d 6f 63 6b 20 3d 20 4d 61 67 69 63 4d 6f 63 6b 28 6e 61 6d 65 3d 27 66 6f 6f 27 29 0a 3e 3e 3e mock.=.MagicMock(name='foo').>>>
5a80 20 6d 6f 63 6b 0a 3c 4d 61 67 69 63 4d 6f 63 6b 20 6e 61 6d 65 3d 27 66 6f 6f 27 20 69 64 3d 27 .mock.<MagicMock.name='foo'.id='
5aa0 2e 2e 2e 27 3e 0a 3e 3e 3e 20 6d 6f 63 6b 2e 6d 65 74 68 6f 64 0a 3c 4d 61 67 69 63 4d 6f 63 6b ...'>.>>>.mock.method.<MagicMock
5ac0 20 6e 61 6d 65 3d 27 66 6f 6f 2e 6d 65 74 68 6f 64 27 20 69 64 3d 27 2e 2e 2e 27 3e 72 70 04 00 .name='foo.method'.id='...'>rp..
5ae0 00 68 2f 6a 4b 04 00 00 68 30 68 33 68 35 6a 48 01 00 00 68 37 7d 72 71 04 00 00 28 55 0c 74 65 .h/jK...h0h3h5jH...h7}rq...(U.te
5b00 73 74 6e 6f 64 65 74 79 70 65 72 72 04 00 00 58 07 00 00 00 64 6f 63 74 65 73 74 72 73 04 00 00 stnodetyperr...X....doctestrs...
5b20 68 84 68 85 68 3f 5d 72 74 04 00 00 68 3d 5d 72 75 04 00 00 68 39 5d 72 76 04 00 00 68 3b 5d 72 h.h.h?]rt...h=]ru...h9]rv...h;]r
5b40 77 04 00 00 68 41 5d 72 78 04 00 00 55 06 67 72 6f 75 70 73 72 79 04 00 00 5d 72 7a 04 00 00 68 w...hA]rx...U.groupsry...]rz...h
5b60 8d 61 68 8e 7d 72 7b 04 00 00 75 68 43 4b 8e 68 44 68 02 68 29 5d 72 7c 04 00 00 68 52 58 80 00 .ah.}r{...uhCK.hDh.h)]r|...hRX..
5b80 00 00 3e 3e 3e 20 6d 6f 63 6b 20 3d 20 4d 61 67 69 63 4d 6f 63 6b 28 6e 61 6d 65 3d 27 66 6f 6f ..>>>.mock.=.MagicMock(name='foo
5ba0 27 29 0a 3e 3e 3e 20 6d 6f 63 6b 0a 3c 4d 61 67 69 63 4d 6f 63 6b 20 6e 61 6d 65 3d 27 66 6f 6f ').>>>.mock.<MagicMock.name='foo
5bc0 27 20 69 64 3d 27 2e 2e 2e 27 3e 0a 3e 3e 3e 20 6d 6f 63 6b 2e 6d 65 74 68 6f 64 0a 3c 4d 61 67 '.id='...'>.>>>.mock.method.<Mag
5be0 69 63 4d 6f 63 6b 20 6e 61 6d 65 3d 27 66 6f 6f 2e 6d 65 74 68 6f 64 27 20 69 64 3d 27 2e 2e 2e icMock.name='foo.method'.id='...
5c00 27 3e 72 7d 04 00 00 85 81 72 7e 04 00 00 7d 72 7f 04 00 00 28 68 2e 55 00 68 2f 6a 6e 04 00 00 '>r}.....r~...}r....(h.U.h/jn...
5c20 75 62 61 75 62 65 75 62 68 2b 29 81 72 80 04 00 00 7d 72 81 04 00 00 28 68 2e 55 00 68 2f 68 94 ubaubeubh+).r....}r....(h.U.h/h.
5c40 68 30 68 33 68 35 68 36 68 37 7d 72 82 04 00 00 28 68 39 5d 72 83 04 00 00 68 3b 5d 72 84 04 00 h0h3h5h6h7}r....(h9]r....h;]r...
5c60 00 68 3d 5d 72 85 04 00 00 68 3f 5d 72 86 04 00 00 68 24 61 68 41 5d 72 87 04 00 00 68 0e 61 75 .h=]r....h?]r....h$ahA]r....h.au
5c80 68 43 4b 98 68 44 68 02 68 29 5d 72 88 04 00 00 28 68 46 29 81 72 89 04 00 00 7d 72 8a 04 00 00 hCK.hDh.h)]r....(hF).r....}r....
5ca0 28 68 2e 58 12 00 00 00 54 72 61 63 6b 69 6e 67 20 61 6c 6c 20 43 61 6c 6c 73 72 8b 04 00 00 68 (h.X....Tracking.all.Callsr....h
5cc0 2f 6a 80 04 00 00 68 30 68 33 68 35 68 4a 68 37 7d 72 8c 04 00 00 28 68 39 5d 72 8d 04 00 00 68 /j....h0h3h5hJh7}r....(h9]r....h
5ce0 3b 5d 72 8e 04 00 00 68 3d 5d 72 8f 04 00 00 68 3f 5d 72 90 04 00 00 68 41 5d 72 91 04 00 00 75 ;]r....h=]r....h?]r....hA]r....u
5d00 68 43 4b 98 68 44 68 02 68 29 5d 72 92 04 00 00 68 52 58 12 00 00 00 54 72 61 63 6b 69 6e 67 20 hCK.hDh.h)]r....hRX....Tracking.
5d20 61 6c 6c 20 43 61 6c 6c 73 72 93 04 00 00 85 81 72 94 04 00 00 7d 72 95 04 00 00 28 68 2e 6a 8b all.Callsr......r....}r....(h.j.
5d40 04 00 00 68 2f 6a 89 04 00 00 75 62 61 75 62 68 c0 29 81 72 96 04 00 00 7d 72 97 04 00 00 28 68 ...h/j....ubaubh.).r....}r....(h
5d60 2e 58 b3 00 00 00 4f 66 74 65 6e 20 79 6f 75 20 77 61 6e 74 20 74 6f 20 74 72 61 63 6b 20 6d 6f .X....Often.you.want.to.track.mo
5d80 72 65 20 74 68 61 6e 20 61 20 73 69 6e 67 6c 65 20 63 61 6c 6c 20 74 6f 20 61 20 6d 65 74 68 6f re.than.a.single.call.to.a.metho
5da0 64 2e 20 54 68 65 0a 3a 61 74 74 72 3a 60 7e 4d 6f 63 6b 2e 6d 6f 63 6b 5f 63 61 6c 6c 73 60 20 d..The.:attr:`~Mock.mock_calls`.
5dc0 61 74 74 72 69 62 75 74 65 20 72 65 63 6f 72 64 73 20 61 6c 6c 20 63 61 6c 6c 73 0a 74 6f 20 63 attribute.records.all.calls.to.c
5de0 68 69 6c 64 20 61 74 74 72 69 62 75 74 65 73 20 6f 66 20 74 68 65 20 6d 6f 63 6b 20 2d 20 61 6e hild.attributes.of.the.mock.-.an
5e00 64 20 61 6c 73 6f 20 74 6f 20 74 68 65 69 72 20 63 68 69 6c 64 72 65 6e 2e 72 98 04 00 00 68 2f d.also.to.their.children.r....h/
5e20 6a 80 04 00 00 68 30 68 33 68 35 68 c4 68 37 7d 72 99 04 00 00 28 68 39 5d 72 9a 04 00 00 68 3b j....h0h3h5h.h7}r....(h9]r....h;
5e40 5d 72 9b 04 00 00 68 3d 5d 72 9c 04 00 00 68 3f 5d 72 9d 04 00 00 68 41 5d 72 9e 04 00 00 75 68 ]r....h=]r....h?]r....hA]r....uh
5e60 43 4b 9a 68 44 68 02 68 29 5d 72 9f 04 00 00 28 68 52 58 41 00 00 00 4f 66 74 65 6e 20 79 6f 75 CK.hDh.h)]r....(hRXA...Often.you
5e80 20 77 61 6e 74 20 74 6f 20 74 72 61 63 6b 20 6d 6f 72 65 20 74 68 61 6e 20 61 20 73 69 6e 67 6c .want.to.track.more.than.a.singl
5ea0 65 20 63 61 6c 6c 20 74 6f 20 61 20 6d 65 74 68 6f 64 2e 20 54 68 65 0a 72 a0 04 00 00 85 81 72 e.call.to.a.method..The.r......r
5ec0 a1 04 00 00 7d 72 a2 04 00 00 28 68 2e 58 41 00 00 00 4f 66 74 65 6e 20 79 6f 75 20 77 61 6e 74 ....}r....(h.XA...Often.you.want
5ee0 20 74 6f 20 74 72 61 63 6b 20 6d 6f 72 65 20 74 68 61 6e 20 61 20 73 69 6e 67 6c 65 20 63 61 6c .to.track.more.than.a.single.cal
5f00 6c 20 74 6f 20 61 20 6d 65 74 68 6f 64 2e 20 54 68 65 0a 72 a3 04 00 00 68 2f 6a 96 04 00 00 75 l.to.a.method..The.r....h/j....u
5f20 62 68 d0 29 81 72 a4 04 00 00 7d 72 a5 04 00 00 28 68 2e 58 18 00 00 00 3a 61 74 74 72 3a 60 7e bh.).r....}r....(h.X....:attr:`~
5f40 4d 6f 63 6b 2e 6d 6f 63 6b 5f 63 61 6c 6c 73 60 72 a6 04 00 00 68 2f 6a 96 04 00 00 68 30 68 33 Mock.mock_calls`r....h/j....h0h3
5f60 68 35 68 d4 68 37 7d 72 a7 04 00 00 28 55 07 72 65 66 74 79 70 65 72 a8 04 00 00 58 04 00 00 00 h5h.h7}r....(U.reftyper....X....
5f80 61 74 74 72 72 a9 04 00 00 68 d8 89 68 d9 58 0f 00 00 00 4d 6f 63 6b 2e 6d 6f 63 6b 5f 63 61 6c attrr....h..h.X....Mock.mock_cal
5fa0 6c 73 72 aa 04 00 00 55 09 72 65 66 64 6f 6d 61 69 6e 72 ab 04 00 00 58 02 00 00 00 70 79 72 ac lsr....U.refdomainr....X....pyr.
5fc0 04 00 00 68 3f 5d 72 ad 04 00 00 68 3d 5d 72 ae 04 00 00 55 0b 72 65 66 65 78 70 6c 69 63 69 74 ...h?]r....h=]r....U.refexplicit
5fe0 72 af 04 00 00 89 68 39 5d 72 b0 04 00 00 68 3b 5d 72 b1 04 00 00 68 41 5d 72 b2 04 00 00 68 e3 r.....h9]r....h;]r....hA]r....h.
6000 68 e4 68 e5 4e 68 e6 4e 75 68 43 4b 9a 68 29 5d 72 b3 04 00 00 68 e8 29 81 72 b4 04 00 00 7d 72 h.h.Nh.NuhCK.h)]r....h.).r....}r
6020 b5 04 00 00 28 68 2e 6a a6 04 00 00 68 37 7d 72 b6 04 00 00 28 68 39 5d 72 b7 04 00 00 68 3b 5d ....(h.j....h7}r....(h9]r....h;]
6040 72 b8 04 00 00 28 68 ee 6a ac 04 00 00 58 07 00 00 00 70 79 2d 61 74 74 72 72 b9 04 00 00 65 68 r....(h.j....X....py-attrr....eh
6060 3d 5d 72 ba 04 00 00 68 3f 5d 72 bb 04 00 00 68 41 5d 72 bc 04 00 00 75 68 2f 6a a4 04 00 00 68 =]r....h?]r....hA]r....uh/j....h
6080 29 5d 72 bd 04 00 00 68 52 58 0a 00 00 00 6d 6f 63 6b 5f 63 61 6c 6c 73 72 be 04 00 00 85 81 72 )]r....hRX....mock_callsr......r
60a0 bf 04 00 00 7d 72 c0 04 00 00 28 68 2e 55 00 68 2f 6a b4 04 00 00 75 62 61 68 35 68 f7 75 62 61 ....}r....(h.U.h/j....ubah5h.uba
60c0 75 62 68 52 58 5a 00 00 00 20 61 74 74 72 69 62 75 74 65 20 72 65 63 6f 72 64 73 20 61 6c 6c 20 ubhRXZ....attribute.records.all.
60e0 63 61 6c 6c 73 0a 74 6f 20 63 68 69 6c 64 20 61 74 74 72 69 62 75 74 65 73 20 6f 66 20 74 68 65 calls.to.child.attributes.of.the
6100 20 6d 6f 63 6b 20 2d 20 61 6e 64 20 61 6c 73 6f 20 74 6f 20 74 68 65 69 72 20 63 68 69 6c 64 72 .mock.-.and.also.to.their.childr
6120 65 6e 2e 72 c1 04 00 00 85 81 72 c2 04 00 00 7d 72 c3 04 00 00 28 68 2e 58 5a 00 00 00 20 61 74 en.r......r....}r....(h.XZ....at
6140 74 72 69 62 75 74 65 20 72 65 63 6f 72 64 73 20 61 6c 6c 20 63 61 6c 6c 73 0a 74 6f 20 63 68 69 tribute.records.all.calls.to.chi
6160 6c 64 20 61 74 74 72 69 62 75 74 65 73 20 6f 66 20 74 68 65 20 6d 6f 63 6b 20 2d 20 61 6e 64 20 ld.attributes.of.the.mock.-.and.
6180 61 6c 73 6f 20 74 6f 20 74 68 65 69 72 20 63 68 69 6c 64 72 65 6e 2e 72 c4 04 00 00 68 2f 6a 96 also.to.their.children.r....h/j.
61a0 04 00 00 75 62 65 75 62 6a 44 01 00 00 29 81 72 c5 04 00 00 7d 72 c6 04 00 00 28 68 2e 58 ef 00 ...ubeubjD...).r....}r....(h.X..
61c0 00 00 3e 3e 3e 20 6d 6f 63 6b 20 3d 20 4d 61 67 69 63 4d 6f 63 6b 28 29 0a 3e 3e 3e 20 6d 6f 63 ..>>>.mock.=.MagicMock().>>>.moc
61e0 6b 2e 6d 65 74 68 6f 64 28 29 0a 3c 4d 61 67 69 63 4d 6f 63 6b 20 6e 61 6d 65 3d 27 6d 6f 63 6b k.method().<MagicMock.name='mock
6200 2e 6d 65 74 68 6f 64 28 29 27 20 69 64 3d 27 2e 2e 2e 27 3e 0a 3e 3e 3e 20 6d 6f 63 6b 2e 61 74 .method()'.id='...'>.>>>.mock.at
6220 74 72 69 62 75 74 65 2e 6d 65 74 68 6f 64 28 31 30 2c 20 78 3d 35 33 29 0a 3c 4d 61 67 69 63 4d tribute.method(10,.x=53).<MagicM
6240 6f 63 6b 20 6e 61 6d 65 3d 27 6d 6f 63 6b 2e 61 74 74 72 69 62 75 74 65 2e 6d 65 74 68 6f 64 28 ock.name='mock.attribute.method(
6260 29 27 20 69 64 3d 27 2e 2e 2e 27 3e 0a 3e 3e 3e 20 6d 6f 63 6b 2e 6d 6f 63 6b 5f 63 61 6c 6c 73 )'.id='...'>.>>>.mock.mock_calls
6280 0a 5b 63 61 6c 6c 2e 6d 65 74 68 6f 64 28 29 2c 20 63 61 6c 6c 2e 61 74 74 72 69 62 75 74 65 2e .[call.method(),.call.attribute.
62a0 6d 65 74 68 6f 64 28 31 30 2c 20 78 3d 35 33 29 5d 72 c7 04 00 00 68 2f 6a 80 04 00 00 68 30 68 method(10,.x=53)]r....h/j....h0h
62c0 33 68 35 6a 48 01 00 00 68 37 7d 72 c8 04 00 00 28 55 0c 74 65 73 74 6e 6f 64 65 74 79 70 65 72 3h5jH...h7}r....(U.testnodetyper
62e0 c9 04 00 00 58 07 00 00 00 64 6f 63 74 65 73 74 72 ca 04 00 00 68 84 68 85 68 3f 5d 72 cb 04 00 ....X....doctestr....h.h.h?]r...
6300 00 68 3d 5d 72 cc 04 00 00 68 39 5d 72 cd 04 00 00 68 3b 5d 72 ce 04 00 00 68 41 5d 72 cf 04 00 .h=]r....h9]r....h;]r....hA]r...
6320 00 55 06 67 72 6f 75 70 73 72 d0 04 00 00 5d 72 d1 04 00 00 68 8d 61 68 8e 7d 72 d2 04 00 00 75 .U.groupsr....]r....h.ah.}r....u
6340 68 43 4b 9e 68 44 68 02 68 29 5d 72 d3 04 00 00 68 52 58 ef 00 00 00 3e 3e 3e 20 6d 6f 63 6b 20 hCK.hDh.h)]r....hRX....>>>.mock.
6360 3d 20 4d 61 67 69 63 4d 6f 63 6b 28 29 0a 3e 3e 3e 20 6d 6f 63 6b 2e 6d 65 74 68 6f 64 28 29 0a =.MagicMock().>>>.mock.method().
6380 3c 4d 61 67 69 63 4d 6f 63 6b 20 6e 61 6d 65 3d 27 6d 6f 63 6b 2e 6d 65 74 68 6f 64 28 29 27 20 <MagicMock.name='mock.method()'.
63a0 69 64 3d 27 2e 2e 2e 27 3e 0a 3e 3e 3e 20 6d 6f 63 6b 2e 61 74 74 72 69 62 75 74 65 2e 6d 65 74 id='...'>.>>>.mock.attribute.met
63c0 68 6f 64 28 31 30 2c 20 78 3d 35 33 29 0a 3c 4d 61 67 69 63 4d 6f 63 6b 20 6e 61 6d 65 3d 27 6d hod(10,.x=53).<MagicMock.name='m
63e0 6f 63 6b 2e 61 74 74 72 69 62 75 74 65 2e 6d 65 74 68 6f 64 28 29 27 20 69 64 3d 27 2e 2e 2e 27 ock.attribute.method()'.id='...'
6400 3e 0a 3e 3e 3e 20 6d 6f 63 6b 2e 6d 6f 63 6b 5f 63 61 6c 6c 73 0a 5b 63 61 6c 6c 2e 6d 65 74 68 >.>>>.mock.mock_calls.[call.meth
6420 6f 64 28 29 2c 20 63 61 6c 6c 2e 61 74 74 72 69 62 75 74 65 2e 6d 65 74 68 6f 64 28 31 30 2c 20 od(),.call.attribute.method(10,.
6440 78 3d 35 33 29 5d 72 d4 04 00 00 85 81 72 d5 04 00 00 7d 72 d6 04 00 00 28 68 2e 55 00 68 2f 6a x=53)]r......r....}r....(h.U.h/j
6460 c5 04 00 00 75 62 61 75 62 68 c0 29 81 72 d7 04 00 00 7d 72 d8 04 00 00 28 68 2e 58 29 01 00 00 ....ubaubh.).r....}r....(h.X)...
6480 49 66 20 79 6f 75 20 6d 61 6b 65 20 61 6e 20 61 73 73 65 72 74 69 6f 6e 20 61 62 6f 75 74 20 60 If.you.make.an.assertion.about.`
64a0 6d 6f 63 6b 5f 63 61 6c 6c 73 60 20 61 6e 64 20 61 6e 79 20 75 6e 65 78 70 65 63 74 65 64 20 6d mock_calls`.and.any.unexpected.m
64c0 65 74 68 6f 64 73 0a 68 61 76 65 20 62 65 65 6e 20 63 61 6c 6c 65 64 2c 20 74 68 65 6e 20 74 68 ethods.have.been.called,.then.th
64e0 65 20 61 73 73 65 72 74 69 6f 6e 20 77 69 6c 6c 20 66 61 69 6c 2e 20 54 68 69 73 20 69 73 20 75 e.assertion.will.fail..This.is.u
6500 73 65 66 75 6c 20 62 65 63 61 75 73 65 20 61 73 20 77 65 6c 6c 0a 61 73 20 61 73 73 65 72 74 69 seful.because.as.well.as.asserti
6520 6e 67 20 74 68 61 74 20 74 68 65 20 63 61 6c 6c 73 20 79 6f 75 20 65 78 70 65 63 74 65 64 20 68 ng.that.the.calls.you.expected.h
6540 61 76 65 20 62 65 65 6e 20 6d 61 64 65 2c 20 79 6f 75 20 61 72 65 20 61 6c 73 6f 20 63 68 65 63 ave.been.made,.you.are.also.chec
6560 6b 69 6e 67 0a 74 68 61 74 20 74 68 65 79 20 77 65 72 65 20 6d 61 64 65 20 69 6e 20 74 68 65 20 king.that.they.were.made.in.the.
6580 72 69 67 68 74 20 6f 72 64 65 72 20 61 6e 64 20 77 69 74 68 20 6e 6f 20 61 64 64 69 74 69 6f 6e right.order.and.with.no.addition
65a0 61 6c 20 63 61 6c 6c 73 3a 72 d9 04 00 00 68 2f 6a 80 04 00 00 68 30 68 33 68 35 68 c4 68 37 7d al.calls:r....h/j....h0h3h5h.h7}
65c0 72 da 04 00 00 28 68 39 5d 72 db 04 00 00 68 3b 5d 72 dc 04 00 00 68 3d 5d 72 dd 04 00 00 68 3f r....(h9]r....h;]r....h=]r....h?
65e0 5d 72 de 04 00 00 68 41 5d 72 df 04 00 00 75 68 43 4b a8 68 44 68 02 68 29 5d 72 e0 04 00 00 28 ]r....hA]r....uhCK.hDh.h)]r....(
6600 68 52 58 1f 00 00 00 49 66 20 79 6f 75 20 6d 61 6b 65 20 61 6e 20 61 73 73 65 72 74 69 6f 6e 20 hRX....If.you.make.an.assertion.
6620 61 62 6f 75 74 20 72 e1 04 00 00 85 81 72 e2 04 00 00 7d 72 e3 04 00 00 28 68 2e 58 1f 00 00 00 about.r......r....}r....(h.X....
6640 49 66 20 79 6f 75 20 6d 61 6b 65 20 61 6e 20 61 73 73 65 72 74 69 6f 6e 20 61 62 6f 75 74 20 72 If.you.make.an.assertion.about.r
6660 e4 04 00 00 68 2f 6a d7 04 00 00 75 62 6a 66 01 00 00 29 81 72 e5 04 00 00 7d 72 e6 04 00 00 28 ....h/j....ubjf...).r....}r....(
6680 68 2e 58 0c 00 00 00 60 6d 6f 63 6b 5f 63 61 6c 6c 73 60 72 e7 04 00 00 68 37 7d 72 e8 04 00 00 h.X....`mock_calls`r....h7}r....
66a0 28 68 39 5d 72 e9 04 00 00 68 3b 5d 72 ea 04 00 00 68 3d 5d 72 eb 04 00 00 68 3f 5d 72 ec 04 00 (h9]r....h;]r....h=]r....h?]r...
66c0 00 68 41 5d 72 ed 04 00 00 75 68 2f 6a d7 04 00 00 68 29 5d 72 ee 04 00 00 68 52 58 0a 00 00 00 .hA]r....uh/j....h)]r....hRX....
66e0 6d 6f 63 6b 5f 63 61 6c 6c 73 72 ef 04 00 00 85 81 72 f0 04 00 00 7d 72 f1 04 00 00 28 68 2e 55 mock_callsr......r....}r....(h.U
6700 00 68 2f 6a e5 04 00 00 75 62 61 68 35 6a 74 01 00 00 75 62 68 52 58 fe 00 00 00 20 61 6e 64 20 .h/j....ubah5jt...ubhRX.....and.
6720 61 6e 79 20 75 6e 65 78 70 65 63 74 65 64 20 6d 65 74 68 6f 64 73 0a 68 61 76 65 20 62 65 65 6e any.unexpected.methods.have.been
6740 20 63 61 6c 6c 65 64 2c 20 74 68 65 6e 20 74 68 65 20 61 73 73 65 72 74 69 6f 6e 20 77 69 6c 6c .called,.then.the.assertion.will
6760 20 66 61 69 6c 2e 20 54 68 69 73 20 69 73 20 75 73 65 66 75 6c 20 62 65 63 61 75 73 65 20 61 73 .fail..This.is.useful.because.as
6780 20 77 65 6c 6c 0a 61 73 20 61 73 73 65 72 74 69 6e 67 20 74 68 61 74 20 74 68 65 20 63 61 6c 6c .well.as.asserting.that.the.call
67a0 73 20 79 6f 75 20 65 78 70 65 63 74 65 64 20 68 61 76 65 20 62 65 65 6e 20 6d 61 64 65 2c 20 79 s.you.expected.have.been.made,.y
67c0 6f 75 20 61 72 65 20 61 6c 73 6f 20 63 68 65 63 6b 69 6e 67 0a 74 68 61 74 20 74 68 65 79 20 77 ou.are.also.checking.that.they.w
67e0 65 72 65 20 6d 61 64 65 20 69 6e 20 74 68 65 20 72 69 67 68 74 20 6f 72 64 65 72 20 61 6e 64 20 ere.made.in.the.right.order.and.
6800 77 69 74 68 20 6e 6f 20 61 64 64 69 74 69 6f 6e 61 6c 20 63 61 6c 6c 73 3a 72 f2 04 00 00 85 81 with.no.additional.calls:r......
6820 72 f3 04 00 00 7d 72 f4 04 00 00 28 68 2e 58 fe 00 00 00 20 61 6e 64 20 61 6e 79 20 75 6e 65 78 r....}r....(h.X.....and.any.unex
6840 70 65 63 74 65 64 20 6d 65 74 68 6f 64 73 0a 68 61 76 65 20 62 65 65 6e 20 63 61 6c 6c 65 64 2c pected.methods.have.been.called,
6860 20 74 68 65 6e 20 74 68 65 20 61 73 73 65 72 74 69 6f 6e 20 77 69 6c 6c 20 66 61 69 6c 2e 20 54 .then.the.assertion.will.fail..T
6880 68 69 73 20 69 73 20 75 73 65 66 75 6c 20 62 65 63 61 75 73 65 20 61 73 20 77 65 6c 6c 0a 61 73 his.is.useful.because.as.well.as
68a0 20 61 73 73 65 72 74 69 6e 67 20 74 68 61 74 20 74 68 65 20 63 61 6c 6c 73 20 79 6f 75 20 65 78 .asserting.that.the.calls.you.ex
68c0 70 65 63 74 65 64 20 68 61 76 65 20 62 65 65 6e 20 6d 61 64 65 2c 20 79 6f 75 20 61 72 65 20 61 pected.have.been.made,.you.are.a
68e0 6c 73 6f 20 63 68 65 63 6b 69 6e 67 0a 74 68 61 74 20 74 68 65 79 20 77 65 72 65 20 6d 61 64 65 lso.checking.that.they.were.made
6900 20 69 6e 20 74 68 65 20 72 69 67 68 74 20 6f 72 64 65 72 20 61 6e 64 20 77 69 74 68 20 6e 6f 20 .in.the.right.order.and.with.no.
6920 61 64 64 69 74 69 6f 6e 61 6c 20 63 61 6c 6c 73 3a 72 f5 04 00 00 68 2f 6a d7 04 00 00 75 62 65 additional.calls:r....h/j....ube
6940 75 62 68 c0 29 81 72 f6 04 00 00 7d 72 f7 04 00 00 28 68 2e 58 53 00 00 00 59 6f 75 20 75 73 65 ubh.).r....}r....(h.XS...You.use
6960 20 74 68 65 20 3a 64 61 74 61 3a 60 63 61 6c 6c 60 20 6f 62 6a 65 63 74 20 74 6f 20 63 6f 6e 73 .the.:data:`call`.object.to.cons
6980 74 72 75 63 74 20 6c 69 73 74 73 20 66 6f 72 20 63 6f 6d 70 61 72 69 6e 67 20 77 69 74 68 0a 60 truct.lists.for.comparing.with.`
69a0 6d 6f 63 6b 5f 63 61 6c 6c 73 60 3a 72 f8 04 00 00 68 2f 6a 80 04 00 00 68 30 68 33 68 35 68 c4 mock_calls`:r....h/j....h0h3h5h.
69c0 68 37 7d 72 f9 04 00 00 28 68 39 5d 72 fa 04 00 00 68 3b 5d 72 fb 04 00 00 68 3d 5d 72 fc 04 00 h7}r....(h9]r....h;]r....h=]r...
69e0 00 68 3f 5d 72 fd 04 00 00 68 41 5d 72 fe 04 00 00 75 68 43 4b ad 68 44 68 02 68 29 5d 72 ff 04 .h?]r....hA]r....uhCK.hDh.h)]r..
6a00 00 00 28 68 52 58 0c 00 00 00 59 6f 75 20 75 73 65 20 74 68 65 20 72 00 05 00 00 85 81 72 01 05 ..(hRX....You.use.the.r......r..
6a20 00 00 7d 72 02 05 00 00 28 68 2e 58 0c 00 00 00 59 6f 75 20 75 73 65 20 74 68 65 20 72 03 05 00 ..}r....(h.X....You.use.the.r...
6a40 00 68 2f 6a f6 04 00 00 75 62 68 d0 29 81 72 04 05 00 00 7d 72 05 05 00 00 28 68 2e 58 0c 00 00 .h/j....ubh.).r....}r....(h.X...
6a60 00 3a 64 61 74 61 3a 60 63 61 6c 6c 60 72 06 05 00 00 68 2f 6a f6 04 00 00 68 30 68 33 68 35 68 .:data:`call`r....h/j....h0h3h5h
6a80 d4 68 37 7d 72 07 05 00 00 28 55 07 72 65 66 74 79 70 65 72 08 05 00 00 58 04 00 00 00 64 61 74 .h7}r....(U.reftyper....X....dat
6aa0 61 72 09 05 00 00 68 d8 89 68 d9 58 04 00 00 00 63 61 6c 6c 72 0a 05 00 00 55 09 72 65 66 64 6f ar....h..h.X....callr....U.refdo
6ac0 6d 61 69 6e 72 0b 05 00 00 58 02 00 00 00 70 79 72 0c 05 00 00 68 3f 5d 72 0d 05 00 00 68 3d 5d mainr....X....pyr....h?]r....h=]
6ae0 72 0e 05 00 00 55 0b 72 65 66 65 78 70 6c 69 63 69 74 72 0f 05 00 00 89 68 39 5d 72 10 05 00 00 r....U.refexplicitr.....h9]r....
6b00 68 3b 5d 72 11 05 00 00 68 41 5d 72 12 05 00 00 68 e3 68 e4 68 e5 4e 68 e6 4e 75 68 43 4b ad 68 h;]r....hA]r....h.h.h.Nh.NuhCK.h
6b20 29 5d 72 13 05 00 00 68 e8 29 81 72 14 05 00 00 7d 72 15 05 00 00 28 68 2e 6a 06 05 00 00 68 37 )]r....h.).r....}r....(h.j....h7
6b40 7d 72 16 05 00 00 28 68 39 5d 72 17 05 00 00 68 3b 5d 72 18 05 00 00 28 68 ee 6a 0c 05 00 00 58 }r....(h9]r....h;]r....(h.j....X
6b60 07 00 00 00 70 79 2d 64 61 74 61 72 19 05 00 00 65 68 3d 5d 72 1a 05 00 00 68 3f 5d 72 1b 05 00 ....py-datar....eh=]r....h?]r...
6b80 00 68 41 5d 72 1c 05 00 00 75 68 2f 6a 04 05 00 00 68 29 5d 72 1d 05 00 00 68 52 58 04 00 00 00 .hA]r....uh/j....h)]r....hRX....
6ba0 63 61 6c 6c 72 1e 05 00 00 85 81 72 1f 05 00 00 7d 72 20 05 00 00 28 68 2e 55 00 68 2f 6a 14 05 callr......r....}r....(h.U.h/j..
6bc0 00 00 75 62 61 68 35 68 f7 75 62 61 75 62 68 52 58 2e 00 00 00 20 6f 62 6a 65 63 74 20 74 6f 20 ..ubah5h.ubaubhRX.....object.to.
6be0 63 6f 6e 73 74 72 75 63 74 20 6c 69 73 74 73 20 66 6f 72 20 63 6f 6d 70 61 72 69 6e 67 20 77 69 construct.lists.for.comparing.wi
6c00 74 68 0a 72 21 05 00 00 85 81 72 22 05 00 00 7d 72 23 05 00 00 28 68 2e 58 2e 00 00 00 20 6f 62 th.r!.....r"...}r#...(h.X.....ob
6c20 6a 65 63 74 20 74 6f 20 63 6f 6e 73 74 72 75 63 74 20 6c 69 73 74 73 20 66 6f 72 20 63 6f 6d 70 ject.to.construct.lists.for.comp
6c40 61 72 69 6e 67 20 77 69 74 68 0a 72 24 05 00 00 68 2f 6a f6 04 00 00 75 62 6a 66 01 00 00 29 81 aring.with.r$...h/j....ubjf...).
6c60 72 25 05 00 00 7d 72 26 05 00 00 28 68 2e 58 0c 00 00 00 60 6d 6f 63 6b 5f 63 61 6c 6c 73 60 72 r%...}r&...(h.X....`mock_calls`r
6c80 27 05 00 00 68 37 7d 72 28 05 00 00 28 68 39 5d 72 29 05 00 00 68 3b 5d 72 2a 05 00 00 68 3d 5d '...h7}r(...(h9]r)...h;]r*...h=]
6ca0 72 2b 05 00 00 68 3f 5d 72 2c 05 00 00 68 41 5d 72 2d 05 00 00 75 68 2f 6a f6 04 00 00 68 29 5d r+...h?]r,...hA]r-...uh/j....h)]
6cc0 72 2e 05 00 00 68 52 58 0a 00 00 00 6d 6f 63 6b 5f 63 61 6c 6c 73 72 2f 05 00 00 85 81 72 30 05 r....hRX....mock_callsr/.....r0.
6ce0 00 00 7d 72 31 05 00 00 28 68 2e 55 00 68 2f 6a 25 05 00 00 75 62 61 68 35 6a 74 01 00 00 75 62 ..}r1...(h.U.h/j%...ubah5jt...ub
6d00 68 52 58 01 00 00 00 3a 85 81 72 32 05 00 00 7d 72 33 05 00 00 28 68 2e 58 01 00 00 00 3a 68 2f hRX....:..r2...}r3...(h.X....:h/
6d20 6a f6 04 00 00 75 62 65 75 62 6a 44 01 00 00 29 81 72 34 05 00 00 7d 72 35 05 00 00 28 68 2e 58 j....ubeubjD...).r4...}r5...(h.X
6d40 64 00 00 00 3e 3e 3e 20 65 78 70 65 63 74 65 64 20 3d 20 5b 63 61 6c 6c 2e 6d 65 74 68 6f 64 28 d...>>>.expected.=.[call.method(
6d60 29 2c 20 63 61 6c 6c 2e 61 74 74 72 69 62 75 74 65 2e 6d 65 74 68 6f 64 28 31 30 2c 20 78 3d 35 ),.call.attribute.method(10,.x=5
6d80 33 29 5d 0a 3e 3e 3e 20 6d 6f 63 6b 2e 6d 6f 63 6b 5f 63 61 6c 6c 73 20 3d 3d 20 65 78 70 65 63 3)].>>>.mock.mock_calls.==.expec
6da0 74 65 64 0a 54 72 75 65 72 36 05 00 00 68 2f 6a 80 04 00 00 68 30 68 33 68 35 6a 48 01 00 00 68 ted.Truer6...h/j....h0h3h5jH...h
6dc0 37 7d 72 37 05 00 00 28 55 0c 74 65 73 74 6e 6f 64 65 74 79 70 65 72 38 05 00 00 58 07 00 00 00 7}r7...(U.testnodetyper8...X....
6de0 64 6f 63 74 65 73 74 72 39 05 00 00 68 84 68 85 68 3f 5d 72 3a 05 00 00 68 3d 5d 72 3b 05 00 00 doctestr9...h.h.h?]r:...h=]r;...
6e00 68 39 5d 72 3c 05 00 00 68 3b 5d 72 3d 05 00 00 68 41 5d 72 3e 05 00 00 55 06 67 72 6f 75 70 73 h9]r<...h;]r=...hA]r>...U.groups
6e20 72 3f 05 00 00 5d 72 40 05 00 00 68 8d 61 68 8e 7d 72 41 05 00 00 75 68 43 4b b0 68 44 68 02 68 r?...]r@...h.ah.}rA...uhCK.hDh.h
6e40 29 5d 72 42 05 00 00 68 52 58 64 00 00 00 3e 3e 3e 20 65 78 70 65 63 74 65 64 20 3d 20 5b 63 61 )]rB...hRXd...>>>.expected.=.[ca
6e60 6c 6c 2e 6d 65 74 68 6f 64 28 29 2c 20 63 61 6c 6c 2e 61 74 74 72 69 62 75 74 65 2e 6d 65 74 68 ll.method(),.call.attribute.meth
6e80 6f 64 28 31 30 2c 20 78 3d 35 33 29 5d 0a 3e 3e 3e 20 6d 6f 63 6b 2e 6d 6f 63 6b 5f 63 61 6c 6c od(10,.x=53)].>>>.mock.mock_call
6ea0 73 20 3d 3d 20 65 78 70 65 63 74 65 64 0a 54 72 75 65 72 43 05 00 00 85 81 72 44 05 00 00 7d 72 s.==.expected.TruerC.....rD...}r
6ec0 45 05 00 00 28 68 2e 55 00 68 2f 6a 34 05 00 00 75 62 61 75 62 65 75 62 68 2b 29 81 72 46 05 00 E...(h.U.h/j4...ubaubeubh+).rF..
6ee0 00 7d 72 47 05 00 00 28 68 2e 55 00 68 2f 68 94 68 30 68 33 68 35 68 36 68 37 7d 72 48 05 00 00 .}rG...(h.U.h/h.h0h3h5h6h7}rH...
6f00 28 68 39 5d 72 49 05 00 00 68 3b 5d 72 4a 05 00 00 68 3d 5d 72 4b 05 00 00 68 3f 5d 72 4c 05 00 (h9]rI...h;]rJ...h=]rK...h?]rL..
6f20 00 68 26 61 68 41 5d 72 4d 05 00 00 68 10 61 75 68 43 4b b8 68 44 68 02 68 29 5d 72 4e 05 00 00 .h&ahA]rM...h.auhCK.hDh.h)]rN...
6f40 28 68 46 29 81 72 4f 05 00 00 7d 72 50 05 00 00 28 68 2e 58 24 00 00 00 53 65 74 74 69 6e 67 20 (hF).rO...}rP...(h.X$...Setting.
6f60 52 65 74 75 72 6e 20 56 61 6c 75 65 73 20 61 6e 64 20 41 74 74 72 69 62 75 74 65 73 72 51 05 00 Return.Values.and.AttributesrQ..
6f80 00 68 2f 6a 46 05 00 00 68 30 68 33 68 35 68 4a 68 37 7d 72 52 05 00 00 28 68 39 5d 72 53 05 00 .h/jF...h0h3h5hJh7}rR...(h9]rS..
6fa0 00 68 3b 5d 72 54 05 00 00 68 3d 5d 72 55 05 00 00 68 3f 5d 72 56 05 00 00 68 41 5d 72 57 05 00 .h;]rT...h=]rU...h?]rV...hA]rW..
6fc0 00 75 68 43 4b b8 68 44 68 02 68 29 5d 72 58 05 00 00 68 52 58 24 00 00 00 53 65 74 74 69 6e 67 .uhCK.hDh.h)]rX...hRX$...Setting
6fe0 20 52 65 74 75 72 6e 20 56 61 6c 75 65 73 20 61 6e 64 20 41 74 74 72 69 62 75 74 65 73 72 59 05 .Return.Values.and.AttributesrY.
7000 00 00 85 81 72 5a 05 00 00 7d 72 5b 05 00 00 28 68 2e 6a 51 05 00 00 68 2f 6a 4f 05 00 00 75 62 ....rZ...}r[...(h.jQ...h/jO...ub
7020 61 75 62 68 c0 29 81 72 5c 05 00 00 7d 72 5d 05 00 00 28 68 2e 58 3d 00 00 00 53 65 74 74 69 6e aubh.).r\...}r]...(h.X=...Settin
7040 67 20 74 68 65 20 72 65 74 75 72 6e 20 76 61 6c 75 65 73 20 6f 6e 20 61 20 6d 6f 63 6b 20 6f 62 g.the.return.values.on.a.mock.ob
7060 6a 65 63 74 20 69 73 20 74 72 69 76 69 61 6c 6c 79 20 65 61 73 79 3a 72 5e 05 00 00 68 2f 6a 46 ject.is.trivially.easy:r^...h/jF
7080 05 00 00 68 30 68 33 68 35 68 c4 68 37 7d 72 5f 05 00 00 28 68 39 5d 72 60 05 00 00 68 3b 5d 72 ...h0h3h5h.h7}r_...(h9]r`...h;]r
70a0 61 05 00 00 68 3d 5d 72 62 05 00 00 68 3f 5d 72 63 05 00 00 68 41 5d 72 64 05 00 00 75 68 43 4b a...h=]rb...h?]rc...hA]rd...uhCK
70c0 ba 68 44 68 02 68 29 5d 72 65 05 00 00 68 52 58 3d 00 00 00 53 65 74 74 69 6e 67 20 74 68 65 20 .hDh.h)]re...hRX=...Setting.the.
70e0 72 65 74 75 72 6e 20 76 61 6c 75 65 73 20 6f 6e 20 61 20 6d 6f 63 6b 20 6f 62 6a 65 63 74 20 69 return.values.on.a.mock.object.i
7100 73 20 74 72 69 76 69 61 6c 6c 79 20 65 61 73 79 3a 72 66 05 00 00 85 81 72 67 05 00 00 7d 72 68 s.trivially.easy:rf.....rg...}rh
7120 05 00 00 28 68 2e 6a 5e 05 00 00 68 2f 6a 5c 05 00 00 75 62 61 75 62 6a 44 01 00 00 29 81 72 69 ...(h.j^...h/j\...ubaubjD...).ri
7140 05 00 00 7d 72 6a 05 00 00 28 68 2e 58 38 00 00 00 3e 3e 3e 20 6d 6f 63 6b 20 3d 20 4d 6f 63 6b ...}rj...(h.X8...>>>.mock.=.Mock
7160 28 29 0a 3e 3e 3e 20 6d 6f 63 6b 2e 72 65 74 75 72 6e 5f 76 61 6c 75 65 20 3d 20 33 0a 3e 3e 3e ().>>>.mock.return_value.=.3.>>>
7180 20 6d 6f 63 6b 28 29 0a 33 72 6b 05 00 00 68 2f 6a 46 05 00 00 68 30 68 33 68 35 6a 48 01 00 00 .mock().3rk...h/jF...h0h3h5jH...
71a0 68 37 7d 72 6c 05 00 00 28 55 0c 74 65 73 74 6e 6f 64 65 74 79 70 65 72 6d 05 00 00 58 07 00 00 h7}rl...(U.testnodetyperm...X...
71c0 00 64 6f 63 74 65 73 74 72 6e 05 00 00 68 84 68 85 68 3f 5d 72 6f 05 00 00 68 3d 5d 72 70 05 00 .doctestrn...h.h.h?]ro...h=]rp..
71e0 00 68 39 5d 72 71 05 00 00 68 3b 5d 72 72 05 00 00 68 41 5d 72 73 05 00 00 55 06 67 72 6f 75 70 .h9]rq...h;]rr...hA]rs...U.group
7200 73 72 74 05 00 00 5d 72 75 05 00 00 68 8d 61 68 8e 7d 72 76 05 00 00 75 68 43 4b bc 68 44 68 02 srt...]ru...h.ah.}rv...uhCK.hDh.
7220 68 29 5d 72 77 05 00 00 68 52 58 38 00 00 00 3e 3e 3e 20 6d 6f 63 6b 20 3d 20 4d 6f 63 6b 28 29 h)]rw...hRX8...>>>.mock.=.Mock()
7240 0a 3e 3e 3e 20 6d 6f 63 6b 2e 72 65 74 75 72 6e 5f 76 61 6c 75 65 20 3d 20 33 0a 3e 3e 3e 20 6d .>>>.mock.return_value.=.3.>>>.m
7260 6f 63 6b 28 29 0a 33 72 78 05 00 00 85 81 72 79 05 00 00 7d 72 7a 05 00 00 28 68 2e 55 00 68 2f ock().3rx.....ry...}rz...(h.U.h/
7280 6a 69 05 00 00 75 62 61 75 62 68 c0 29 81 72 7b 05 00 00 7d 72 7c 05 00 00 28 68 2e 58 36 00 00 ji...ubaubh.).r{...}r|...(h.X6..
72a0 00 4f 66 20 63 6f 75 72 73 65 20 79 6f 75 20 63 61 6e 20 64 6f 20 74 68 65 20 73 61 6d 65 20 66 .Of.course.you.can.do.the.same.f
72c0 6f 72 20 6d 65 74 68 6f 64 73 20 6f 6e 20 74 68 65 20 6d 6f 63 6b 3a 72 7d 05 00 00 68 2f 6a 46 or.methods.on.the.mock:r}...h/jF
72e0 05 00 00 68 30 68 33 68 35 68 c4 68 37 7d 72 7e 05 00 00 28 68 39 5d 72 7f 05 00 00 68 3b 5d 72 ...h0h3h5h.h7}r~...(h9]r....h;]r
7300 80 05 00 00 68 3d 5d 72 81 05 00 00 68 3f 5d 72 82 05 00 00 68 41 5d 72 83 05 00 00 75 68 43 4b ....h=]r....h?]r....hA]r....uhCK
7320 c3 68 44 68 02 68 29 5d 72 84 05 00 00 68 52 58 36 00 00 00 4f 66 20 63 6f 75 72 73 65 20 79 6f .hDh.h)]r....hRX6...Of.course.yo
7340 75 20 63 61 6e 20 64 6f 20 74 68 65 20 73 61 6d 65 20 66 6f 72 20 6d 65 74 68 6f 64 73 20 6f 6e u.can.do.the.same.for.methods.on
7360 20 74 68 65 20 6d 6f 63 6b 3a 72 85 05 00 00 85 81 72 86 05 00 00 7d 72 87 05 00 00 28 68 2e 6a .the.mock:r......r....}r....(h.j
7380 7d 05 00 00 68 2f 6a 7b 05 00 00 75 62 61 75 62 6a 44 01 00 00 29 81 72 88 05 00 00 7d 72 89 05 }...h/j{...ubaubjD...).r....}r..
73a0 00 00 28 68 2e 58 46 00 00 00 3e 3e 3e 20 6d 6f 63 6b 20 3d 20 4d 6f 63 6b 28 29 0a 3e 3e 3e 20 ..(h.XF...>>>.mock.=.Mock().>>>.
73c0 6d 6f 63 6b 2e 6d 65 74 68 6f 64 2e 72 65 74 75 72 6e 5f 76 61 6c 75 65 20 3d 20 33 0a 3e 3e 3e mock.method.return_value.=.3.>>>
73e0 20 6d 6f 63 6b 2e 6d 65 74 68 6f 64 28 29 0a 33 72 8a 05 00 00 68 2f 6a 46 05 00 00 68 30 68 33 .mock.method().3r....h/jF...h0h3
7400 68 35 6a 48 01 00 00 68 37 7d 72 8b 05 00 00 28 55 0c 74 65 73 74 6e 6f 64 65 74 79 70 65 72 8c h5jH...h7}r....(U.testnodetyper.
7420 05 00 00 58 07 00 00 00 64 6f 63 74 65 73 74 72 8d 05 00 00 68 84 68 85 68 3f 5d 72 8e 05 00 00 ...X....doctestr....h.h.h?]r....
7440 68 3d 5d 72 8f 05 00 00 68 39 5d 72 90 05 00 00 68 3b 5d 72 91 05 00 00 68 41 5d 72 92 05 00 00 h=]r....h9]r....h;]r....hA]r....
7460 55 06 67 72 6f 75 70 73 72 93 05 00 00 5d 72 94 05 00 00 68 8d 61 68 8e 7d 72 95 05 00 00 75 68 U.groupsr....]r....h.ah.}r....uh
7480 43 4b c5 68 44 68 02 68 29 5d 72 96 05 00 00 68 52 58 46 00 00 00 3e 3e 3e 20 6d 6f 63 6b 20 3d CK.hDh.h)]r....hRXF...>>>.mock.=
74a0 20 4d 6f 63 6b 28 29 0a 3e 3e 3e 20 6d 6f 63 6b 2e 6d 65 74 68 6f 64 2e 72 65 74 75 72 6e 5f 76 .Mock().>>>.mock.method.return_v
74c0 61 6c 75 65 20 3d 20 33 0a 3e 3e 3e 20 6d 6f 63 6b 2e 6d 65 74 68 6f 64 28 29 0a 33 72 97 05 00 alue.=.3.>>>.mock.method().3r...
74e0 00 85 81 72 98 05 00 00 7d 72 99 05 00 00 28 68 2e 55 00 68 2f 6a 88 05 00 00 75 62 61 75 62 68 ...r....}r....(h.U.h/j....ubaubh
7500 c0 29 81 72 9a 05 00 00 7d 72 9b 05 00 00 28 68 2e 58 34 00 00 00 54 68 65 20 72 65 74 75 72 6e .).r....}r....(h.X4...The.return
7520 20 76 61 6c 75 65 20 63 61 6e 20 61 6c 73 6f 20 62 65 20 73 65 74 20 69 6e 20 74 68 65 20 63 6f .value.can.also.be.set.in.the.co
7540 6e 73 74 72 75 63 74 6f 72 3a 72 9c 05 00 00 68 2f 6a 46 05 00 00 68 30 68 33 68 35 68 c4 68 37 nstructor:r....h/jF...h0h3h5h.h7
7560 7d 72 9d 05 00 00 28 68 39 5d 72 9e 05 00 00 68 3b 5d 72 9f 05 00 00 68 3d 5d 72 a0 05 00 00 68 }r....(h9]r....h;]r....h=]r....h
7580 3f 5d 72 a1 05 00 00 68 41 5d 72 a2 05 00 00 75 68 43 4b cc 68 44 68 02 68 29 5d 72 a3 05 00 00 ?]r....hA]r....uhCK.hDh.h)]r....
75a0 68 52 58 34 00 00 00 54 68 65 20 72 65 74 75 72 6e 20 76 61 6c 75 65 20 63 61 6e 20 61 6c 73 6f hRX4...The.return.value.can.also
75c0 20 62 65 20 73 65 74 20 69 6e 20 74 68 65 20 63 6f 6e 73 74 72 75 63 74 6f 72 3a 72 a4 05 00 00 .be.set.in.the.constructor:r....
75e0 85 81 72 a5 05 00 00 7d 72 a6 05 00 00 28 68 2e 6a 9c 05 00 00 68 2f 6a 9a 05 00 00 75 62 61 75 ..r....}r....(h.j....h/j....ubau
7600 62 6a 44 01 00 00 29 81 72 a7 05 00 00 7d 72 a8 05 00 00 28 68 2e 58 2c 00 00 00 3e 3e 3e 20 6d bjD...).r....}r....(h.X,...>>>.m
7620 6f 63 6b 20 3d 20 4d 6f 63 6b 28 72 65 74 75 72 6e 5f 76 61 6c 75 65 3d 33 29 0a 3e 3e 3e 20 6d ock.=.Mock(return_value=3).>>>.m
7640 6f 63 6b 28 29 0a 33 72 a9 05 00 00 68 2f 6a 46 05 00 00 68 30 68 33 68 35 6a 48 01 00 00 68 37 ock().3r....h/jF...h0h3h5jH...h7
7660 7d 72 aa 05 00 00 28 55 0c 74 65 73 74 6e 6f 64 65 74 79 70 65 72 ab 05 00 00 58 07 00 00 00 64 }r....(U.testnodetyper....X....d
7680 6f 63 74 65 73 74 72 ac 05 00 00 68 84 68 85 68 3f 5d 72 ad 05 00 00 68 3d 5d 72 ae 05 00 00 68 octestr....h.h.h?]r....h=]r....h
76a0 39 5d 72 af 05 00 00 68 3b 5d 72 b0 05 00 00 68 41 5d 72 b1 05 00 00 55 06 67 72 6f 75 70 73 72 9]r....h;]r....hA]r....U.groupsr
76c0 b2 05 00 00 5d 72 b3 05 00 00 68 8d 61 68 8e 7d 72 b4 05 00 00 75 68 43 4b ce 68 44 68 02 68 29 ....]r....h.ah.}r....uhCK.hDh.h)
76e0 5d 72 b5 05 00 00 68 52 58 2c 00 00 00 3e 3e 3e 20 6d 6f 63 6b 20 3d 20 4d 6f 63 6b 28 72 65 74 ]r....hRX,...>>>.mock.=.Mock(ret
7700 75 72 6e 5f 76 61 6c 75 65 3d 33 29 0a 3e 3e 3e 20 6d 6f 63 6b 28 29 0a 33 72 b6 05 00 00 85 81 urn_value=3).>>>.mock().3r......
7720 72 b7 05 00 00 7d 72 b8 05 00 00 28 68 2e 55 00 68 2f 6a a7 05 00 00 75 62 61 75 62 68 c0 29 81 r....}r....(h.U.h/j....ubaubh.).
7740 72 b9 05 00 00 7d 72 ba 05 00 00 28 68 2e 58 3a 00 00 00 49 66 20 79 6f 75 20 6e 65 65 64 20 61 r....}r....(h.X:...If.you.need.a
7760 6e 20 61 74 74 72 69 62 75 74 65 20 73 65 74 74 69 6e 67 20 6f 6e 20 79 6f 75 72 20 6d 6f 63 6b n.attribute.setting.on.your.mock
7780 2c 20 6a 75 73 74 20 64 6f 20 69 74 3a 72 bb 05 00 00 68 2f 6a 46 05 00 00 68 30 68 33 68 35 68 ,.just.do.it:r....h/jF...h0h3h5h
77a0 c4 68 37 7d 72 bc 05 00 00 28 68 39 5d 72 bd 05 00 00 68 3b 5d 72 be 05 00 00 68 3d 5d 72 bf 05 .h7}r....(h9]r....h;]r....h=]r..
77c0 00 00 68 3f 5d 72 c0 05 00 00 68 41 5d 72 c1 05 00 00 75 68 43 4b d4 68 44 68 02 68 29 5d 72 c2 ..h?]r....hA]r....uhCK.hDh.h)]r.
77e0 05 00 00 68 52 58 3a 00 00 00 49 66 20 79 6f 75 20 6e 65 65 64 20 61 6e 20 61 74 74 72 69 62 75 ...hRX:...If.you.need.an.attribu
7800 74 65 20 73 65 74 74 69 6e 67 20 6f 6e 20 79 6f 75 72 20 6d 6f 63 6b 2c 20 6a 75 73 74 20 64 6f te.setting.on.your.mock,.just.do
7820 20 69 74 3a 72 c3 05 00 00 85 81 72 c4 05 00 00 7d 72 c5 05 00 00 28 68 2e 6a bb 05 00 00 68 2f .it:r......r....}r....(h.j....h/
7840 6a b9 05 00 00 75 62 61 75 62 6a 44 01 00 00 29 81 72 c6 05 00 00 7d 72 c7 05 00 00 28 68 2e 58 j....ubaubjD...).r....}r....(h.X
7860 2d 00 00 00 3e 3e 3e 20 6d 6f 63 6b 20 3d 20 4d 6f 63 6b 28 29 0a 3e 3e 3e 20 6d 6f 63 6b 2e 78 -...>>>.mock.=.Mock().>>>.mock.x
7880 20 3d 20 33 0a 3e 3e 3e 20 6d 6f 63 6b 2e 78 0a 33 72 c8 05 00 00 68 2f 6a 46 05 00 00 68 30 68 .=.3.>>>.mock.x.3r....h/jF...h0h
78a0 33 68 35 6a 48 01 00 00 68 37 7d 72 c9 05 00 00 28 55 0c 74 65 73 74 6e 6f 64 65 74 79 70 65 72 3h5jH...h7}r....(U.testnodetyper
78c0 ca 05 00 00 58 07 00 00 00 64 6f 63 74 65 73 74 72 cb 05 00 00 68 84 68 85 68 3f 5d 72 cc 05 00 ....X....doctestr....h.h.h?]r...
78e0 00 68 3d 5d 72 cd 05 00 00 68 39 5d 72 ce 05 00 00 68 3b 5d 72 cf 05 00 00 68 41 5d 72 d0 05 00 .h=]r....h9]r....h;]r....hA]r...
7900 00 55 06 67 72 6f 75 70 73 72 d1 05 00 00 5d 72 d2 05 00 00 68 8d 61 68 8e 7d 72 d3 05 00 00 75 .U.groupsr....]r....h.ah.}r....u
7920 68 43 4b d6 68 44 68 02 68 29 5d 72 d4 05 00 00 68 52 58 2d 00 00 00 3e 3e 3e 20 6d 6f 63 6b 20 hCK.hDh.h)]r....hRX-...>>>.mock.
7940 3d 20 4d 6f 63 6b 28 29 0a 3e 3e 3e 20 6d 6f 63 6b 2e 78 20 3d 20 33 0a 3e 3e 3e 20 6d 6f 63 6b =.Mock().>>>.mock.x.=.3.>>>.mock
7960 2e 78 0a 33 72 d5 05 00 00 85 81 72 d6 05 00 00 7d 72 d7 05 00 00 28 68 2e 55 00 68 2f 6a c6 05 .x.3r......r....}r....(h.U.h/j..
7980 00 00 75 62 61 75 62 68 c0 29 81 72 d8 05 00 00 7d 72 d9 05 00 00 28 68 2e 58 da 00 00 00 53 6f ..ubaubh.).r....}r....(h.X....So
79a0 6d 65 74 69 6d 65 73 20 79 6f 75 20 77 61 6e 74 20 74 6f 20 6d 6f 63 6b 20 75 70 20 61 20 6d 6f metimes.you.want.to.mock.up.a.mo
79c0 72 65 20 63 6f 6d 70 6c 65 78 20 73 69 74 75 61 74 69 6f 6e 2c 20 6c 69 6b 65 20 66 6f 72 20 65 re.complex.situation,.like.for.e
79e0 78 61 6d 70 6c 65 0a 60 6d 6f 63 6b 2e 63 6f 6e 6e 65 63 74 69 6f 6e 2e 63 75 72 73 6f 72 28 29 xample.`mock.connection.cursor()
7a00 2e 65 78 65 63 75 74 65 28 22 53 45 4c 45 43 54 20 31 22 29 60 2e 20 49 66 20 77 65 20 77 61 6e .execute("SELECT.1")`..If.we.wan
7a20 74 65 64 20 74 68 69 73 20 63 61 6c 6c 20 74 6f 0a 72 65 74 75 72 6e 20 61 20 6c 69 73 74 2c 20 ted.this.call.to.return.a.list,.
7a40 74 68 65 6e 20 77 65 20 68 61 76 65 20 74 6f 20 63 6f 6e 66 69 67 75 72 65 20 74 68 65 20 72 65 then.we.have.to.configure.the.re
7a60 73 75 6c 74 20 6f 66 20 74 68 65 20 6e 65 73 74 65 64 20 63 61 6c 6c 2e 72 da 05 00 00 68 2f 6a sult.of.the.nested.call.r....h/j
7a80 46 05 00 00 68 30 68 33 68 35 68 c4 68 37 7d 72 db 05 00 00 28 68 39 5d 72 dc 05 00 00 68 3b 5d F...h0h3h5h.h7}r....(h9]r....h;]
7aa0 72 dd 05 00 00 68 3d 5d 72 de 05 00 00 68 3f 5d 72 df 05 00 00 68 41 5d 72 e0 05 00 00 75 68 43 r....h=]r....h?]r....hA]r....uhC
7ac0 4b dd 68 44 68 02 68 29 5d 72 e1 05 00 00 28 68 52 58 49 00 00 00 53 6f 6d 65 74 69 6d 65 73 20 K.hDh.h)]r....(hRXI...Sometimes.
7ae0 79 6f 75 20 77 61 6e 74 20 74 6f 20 6d 6f 63 6b 20 75 70 20 61 20 6d 6f 72 65 20 63 6f 6d 70 6c you.want.to.mock.up.a.more.compl
7b00 65 78 20 73 69 74 75 61 74 69 6f 6e 2c 20 6c 69 6b 65 20 66 6f 72 20 65 78 61 6d 70 6c 65 0a 72 ex.situation,.like.for.example.r
7b20 e2 05 00 00 85 81 72 e3 05 00 00 7d 72 e4 05 00 00 28 68 2e 58 49 00 00 00 53 6f 6d 65 74 69 6d ......r....}r....(h.XI...Sometim
7b40 65 73 20 79 6f 75 20 77 61 6e 74 20 74 6f 20 6d 6f 63 6b 20 75 70 20 61 20 6d 6f 72 65 20 63 6f es.you.want.to.mock.up.a.more.co
7b60 6d 70 6c 65 78 20 73 69 74 75 61 74 69 6f 6e 2c 20 6c 69 6b 65 20 66 6f 72 20 65 78 61 6d 70 6c mplex.situation,.like.for.exampl
7b80 65 0a 72 e5 05 00 00 68 2f 6a d8 05 00 00 75 62 6a 66 01 00 00 29 81 72 e6 05 00 00 7d 72 e7 05 e.r....h/j....ubjf...).r....}r..
7ba0 00 00 28 68 2e 58 2e 00 00 00 60 6d 6f 63 6b 2e 63 6f 6e 6e 65 63 74 69 6f 6e 2e 63 75 72 73 6f ..(h.X....`mock.connection.curso
7bc0 72 28 29 2e 65 78 65 63 75 74 65 28 22 53 45 4c 45 43 54 20 31 22 29 60 72 e8 05 00 00 68 37 7d r().execute("SELECT.1")`r....h7}
7be0 72 e9 05 00 00 28 68 39 5d 72 ea 05 00 00 68 3b 5d 72 eb 05 00 00 68 3d 5d 72 ec 05 00 00 68 3f r....(h9]r....h;]r....h=]r....h?
7c00 5d 72 ed 05 00 00 68 41 5d 72 ee 05 00 00 75 68 2f 6a d8 05 00 00 68 29 5d 72 ef 05 00 00 68 52 ]r....hA]r....uh/j....h)]r....hR
7c20 58 2c 00 00 00 6d 6f 63 6b 2e 63 6f 6e 6e 65 63 74 69 6f 6e 2e 63 75 72 73 6f 72 28 29 2e 65 78 X,...mock.connection.cursor().ex
7c40 65 63 75 74 65 28 22 53 45 4c 45 43 54 20 31 22 29 72 f0 05 00 00 85 81 72 f1 05 00 00 7d 72 f2 ecute("SELECT.1")r......r....}r.
7c60 05 00 00 28 68 2e 55 00 68 2f 6a e6 05 00 00 75 62 61 68 35 6a 74 01 00 00 75 62 68 52 58 63 00 ...(h.U.h/j....ubah5jt...ubhRXc.
7c80 00 00 2e 20 49 66 20 77 65 20 77 61 6e 74 65 64 20 74 68 69 73 20 63 61 6c 6c 20 74 6f 0a 72 65 ....If.we.wanted.this.call.to.re
7ca0 74 75 72 6e 20 61 20 6c 69 73 74 2c 20 74 68 65 6e 20 77 65 20 68 61 76 65 20 74 6f 20 63 6f 6e turn.a.list,.then.we.have.to.con
7cc0 66 69 67 75 72 65 20 74 68 65 20 72 65 73 75 6c 74 20 6f 66 20 74 68 65 20 6e 65 73 74 65 64 20 figure.the.result.of.the.nested.
7ce0 63 61 6c 6c 2e 72 f3 05 00 00 85 81 72 f4 05 00 00 7d 72 f5 05 00 00 28 68 2e 58 63 00 00 00 2e call.r......r....}r....(h.Xc....
7d00 20 49 66 20 77 65 20 77 61 6e 74 65 64 20 74 68 69 73 20 63 61 6c 6c 20 74 6f 0a 72 65 74 75 72 .If.we.wanted.this.call.to.retur
7d20 6e 20 61 20 6c 69 73 74 2c 20 74 68 65 6e 20 77 65 20 68 61 76 65 20 74 6f 20 63 6f 6e 66 69 67 n.a.list,.then.we.have.to.config
7d40 75 72 65 20 74 68 65 20 72 65 73 75 6c 74 20 6f 66 20 74 68 65 20 6e 65 73 74 65 64 20 63 61 6c ure.the.result.of.the.nested.cal
7d60 6c 2e 72 f6 05 00 00 68 2f 6a d8 05 00 00 75 62 65 75 62 68 c0 29 81 72 f7 05 00 00 7d 72 f8 05 l.r....h/j....ubeubh.).r....}r..
7d80 00 00 28 68 2e 58 72 00 00 00 57 65 20 63 61 6e 20 75 73 65 20 3a 64 61 74 61 3a 60 63 61 6c 6c ..(h.Xr...We.can.use.:data:`call
7da0 60 20 74 6f 20 63 6f 6e 73 74 72 75 63 74 20 74 68 65 20 73 65 74 20 6f 66 20 63 61 6c 6c 73 20 `.to.construct.the.set.of.calls.
7dc0 69 6e 20 61 20 22 63 68 61 69 6e 65 64 20 63 61 6c 6c 22 20 6c 69 6b 65 0a 74 68 69 73 20 66 6f in.a."chained.call".like.this.fo
7de0 72 20 65 61 73 79 20 61 73 73 65 72 74 69 6f 6e 20 61 66 74 65 72 77 61 72 64 73 3a 72 f9 05 00 r.easy.assertion.afterwards:r...
7e00 00 68 2f 6a 46 05 00 00 68 30 68 33 68 35 68 c4 68 37 7d 72 fa 05 00 00 28 68 39 5d 72 fb 05 00 .h/jF...h0h3h5h.h7}r....(h9]r...
7e20 00 68 3b 5d 72 fc 05 00 00 68 3d 5d 72 fd 05 00 00 68 3f 5d 72 fe 05 00 00 68 41 5d 72 ff 05 00 .h;]r....h=]r....h?]r....hA]r...
7e40 00 75 68 43 4b e1 68 44 68 02 68 29 5d 72 00 06 00 00 28 68 52 58 0b 00 00 00 57 65 20 63 61 6e .uhCK.hDh.h)]r....(hRX....We.can
7e60 20 75 73 65 20 72 01 06 00 00 85 81 72 02 06 00 00 7d 72 03 06 00 00 28 68 2e 58 0b 00 00 00 57 .use.r......r....}r....(h.X....W
7e80 65 20 63 61 6e 20 75 73 65 20 72 04 06 00 00 68 2f 6a f7 05 00 00 75 62 68 d0 29 81 72 05 06 00 e.can.use.r....h/j....ubh.).r...
7ea0 00 7d 72 06 06 00 00 28 68 2e 58 0c 00 00 00 3a 64 61 74 61 3a 60 63 61 6c 6c 60 72 07 06 00 00 .}r....(h.X....:data:`call`r....
7ec0 68 2f 6a f7 05 00 00 68 30 68 33 68 35 68 d4 68 37 7d 72 08 06 00 00 28 55 07 72 65 66 74 79 70 h/j....h0h3h5h.h7}r....(U.reftyp
7ee0 65 72 09 06 00 00 58 04 00 00 00 64 61 74 61 72 0a 06 00 00 68 d8 89 68 d9 58 04 00 00 00 63 61 er....X....datar....h..h.X....ca
7f00 6c 6c 72 0b 06 00 00 55 09 72 65 66 64 6f 6d 61 69 6e 72 0c 06 00 00 58 02 00 00 00 70 79 72 0d llr....U.refdomainr....X....pyr.
7f20 06 00 00 68 3f 5d 72 0e 06 00 00 68 3d 5d 72 0f 06 00 00 55 0b 72 65 66 65 78 70 6c 69 63 69 74 ...h?]r....h=]r....U.refexplicit
7f40 72 10 06 00 00 89 68 39 5d 72 11 06 00 00 68 3b 5d 72 12 06 00 00 68 41 5d 72 13 06 00 00 68 e3 r.....h9]r....h;]r....hA]r....h.
7f60 68 e4 68 e5 4e 68 e6 4e 75 68 43 4b e1 68 29 5d 72 14 06 00 00 68 e8 29 81 72 15 06 00 00 7d 72 h.h.Nh.NuhCK.h)]r....h.).r....}r
7f80 16 06 00 00 28 68 2e 6a 07 06 00 00 68 37 7d 72 17 06 00 00 28 68 39 5d 72 18 06 00 00 68 3b 5d ....(h.j....h7}r....(h9]r....h;]
7fa0 72 19 06 00 00 28 68 ee 6a 0d 06 00 00 58 07 00 00 00 70 79 2d 64 61 74 61 72 1a 06 00 00 65 68 r....(h.j....X....py-datar....eh
7fc0 3d 5d 72 1b 06 00 00 68 3f 5d 72 1c 06 00 00 68 41 5d 72 1d 06 00 00 75 68 2f 6a 05 06 00 00 68 =]r....h?]r....hA]r....uh/j....h
7fe0 29 5d 72 1e 06 00 00 68 52 58 04 00 00 00 63 61 6c 6c 72 1f 06 00 00 85 81 72 20 06 00 00 7d 72 )]r....hRX....callr......r....}r
8000 21 06 00 00 28 68 2e 55 00 68 2f 6a 15 06 00 00 75 62 61 68 35 68 f7 75 62 61 75 62 68 52 58 5b !...(h.U.h/j....ubah5h.ubaubhRX[
8020 00 00 00 20 74 6f 20 63 6f 6e 73 74 72 75 63 74 20 74 68 65 20 73 65 74 20 6f 66 20 63 61 6c 6c ....to.construct.the.set.of.call
8040 73 20 69 6e 20 61 20 22 63 68 61 69 6e 65 64 20 63 61 6c 6c 22 20 6c 69 6b 65 0a 74 68 69 73 20 s.in.a."chained.call".like.this.
8060 66 6f 72 20 65 61 73 79 20 61 73 73 65 72 74 69 6f 6e 20 61 66 74 65 72 77 61 72 64 73 3a 72 22 for.easy.assertion.afterwards:r"
8080 06 00 00 85 81 72 23 06 00 00 7d 72 24 06 00 00 28 68 2e 58 5b 00 00 00 20 74 6f 20 63 6f 6e 73 .....r#...}r$...(h.X[....to.cons
80a0 74 72 75 63 74 20 74 68 65 20 73 65 74 20 6f 66 20 63 61 6c 6c 73 20 69 6e 20 61 20 22 63 68 61 truct.the.set.of.calls.in.a."cha
80c0 69 6e 65 64 20 63 61 6c 6c 22 20 6c 69 6b 65 0a 74 68 69 73 20 66 6f 72 20 65 61 73 79 20 61 73 ined.call".like.this.for.easy.as
80e0 73 65 72 74 69 6f 6e 20 61 66 74 65 72 77 61 72 64 73 3a 72 25 06 00 00 68 2f 6a f7 05 00 00 75 sertion.afterwards:r%...h/j....u
8100 62 65 75 62 6a 44 01 00 00 29 81 72 26 06 00 00 7d 72 27 06 00 00 28 68 2e 58 6f 01 00 00 3e 3e beubjD...).r&...}r'...(h.Xo...>>
8120 3e 20 6d 6f 63 6b 20 3d 20 4d 6f 63 6b 28 29 0a 3e 3e 3e 20 63 75 72 73 6f 72 20 3d 20 6d 6f 63 >.mock.=.Mock().>>>.cursor.=.moc
8140 6b 2e 63 6f 6e 6e 65 63 74 69 6f 6e 2e 63 75 72 73 6f 72 2e 72 65 74 75 72 6e 5f 76 61 6c 75 65 k.connection.cursor.return_value
8160 0a 3e 3e 3e 20 63 75 72 73 6f 72 2e 65 78 65 63 75 74 65 2e 72 65 74 75 72 6e 5f 76 61 6c 75 65 .>>>.cursor.execute.return_value
8180 20 3d 20 5b 27 66 6f 6f 27 5d 0a 3e 3e 3e 20 6d 6f 63 6b 2e 63 6f 6e 6e 65 63 74 69 6f 6e 2e 63 .=.['foo'].>>>.mock.connection.c
81a0 75 72 73 6f 72 28 29 2e 65 78 65 63 75 74 65 28 22 53 45 4c 45 43 54 20 31 22 29 0a 5b 27 66 6f ursor().execute("SELECT.1").['fo
81c0 6f 27 5d 0a 3e 3e 3e 20 65 78 70 65 63 74 65 64 20 3d 20 63 61 6c 6c 2e 63 6f 6e 6e 65 63 74 69 o'].>>>.expected.=.call.connecti
81e0 6f 6e 2e 63 75 72 73 6f 72 28 29 2e 65 78 65 63 75 74 65 28 22 53 45 4c 45 43 54 20 31 22 29 2e on.cursor().execute("SELECT.1").
8200 63 61 6c 6c 5f 6c 69 73 74 28 29 0a 3e 3e 3e 20 6d 6f 63 6b 2e 6d 6f 63 6b 5f 63 61 6c 6c 73 0a call_list().>>>.mock.mock_calls.
8220 5b 63 61 6c 6c 2e 63 6f 6e 6e 65 63 74 69 6f 6e 2e 63 75 72 73 6f 72 28 29 2c 20 63 61 6c 6c 2e [call.connection.cursor(),.call.
8240 63 6f 6e 6e 65 63 74 69 6f 6e 2e 63 75 72 73 6f 72 28 29 2e 65 78 65 63 75 74 65 28 27 53 45 4c connection.cursor().execute('SEL
8260 45 43 54 20 31 27 29 5d 0a 3e 3e 3e 20 6d 6f 63 6b 2e 6d 6f 63 6b 5f 63 61 6c 6c 73 20 3d 3d 20 ECT.1')].>>>.mock.mock_calls.==.
8280 65 78 70 65 63 74 65 64 0a 54 72 75 65 72 28 06 00 00 68 2f 6a 46 05 00 00 68 30 68 33 68 35 6a expected.Truer(...h/jF...h0h3h5j
82a0 48 01 00 00 68 37 7d 72 29 06 00 00 28 55 0c 74 65 73 74 6e 6f 64 65 74 79 70 65 72 2a 06 00 00 H...h7}r)...(U.testnodetyper*...
82c0 58 07 00 00 00 64 6f 63 74 65 73 74 72 2b 06 00 00 68 84 68 85 68 3f 5d 72 2c 06 00 00 68 3d 5d X....doctestr+...h.h.h?]r,...h=]
82e0 72 2d 06 00 00 68 39 5d 72 2e 06 00 00 68 3b 5d 72 2f 06 00 00 68 41 5d 72 30 06 00 00 55 06 67 r-...h9]r....h;]r/...hA]r0...U.g
8300 72 6f 75 70 73 72 31 06 00 00 5d 72 32 06 00 00 68 8d 61 68 8e 7d 72 33 06 00 00 75 68 43 4b e5 roupsr1...]r2...h.ah.}r3...uhCK.
8320 68 44 68 02 68 29 5d 72 34 06 00 00 68 52 58 6f 01 00 00 3e 3e 3e 20 6d 6f 63 6b 20 3d 20 4d 6f hDh.h)]r4...hRXo...>>>.mock.=.Mo
8340 63 6b 28 29 0a 3e 3e 3e 20 63 75 72 73 6f 72 20 3d 20 6d 6f 63 6b 2e 63 6f 6e 6e 65 63 74 69 6f ck().>>>.cursor.=.mock.connectio
8360 6e 2e 63 75 72 73 6f 72 2e 72 65 74 75 72 6e 5f 76 61 6c 75 65 0a 3e 3e 3e 20 63 75 72 73 6f 72 n.cursor.return_value.>>>.cursor
8380 2e 65 78 65 63 75 74 65 2e 72 65 74 75 72 6e 5f 76 61 6c 75 65 20 3d 20 5b 27 66 6f 6f 27 5d 0a .execute.return_value.=.['foo'].
83a0 3e 3e 3e 20 6d 6f 63 6b 2e 63 6f 6e 6e 65 63 74 69 6f 6e 2e 63 75 72 73 6f 72 28 29 2e 65 78 65 >>>.mock.connection.cursor().exe
83c0 63 75 74 65 28 22 53 45 4c 45 43 54 20 31 22 29 0a 5b 27 66 6f 6f 27 5d 0a 3e 3e 3e 20 65 78 70 cute("SELECT.1").['foo'].>>>.exp
83e0 65 63 74 65 64 20 3d 20 63 61 6c 6c 2e 63 6f 6e 6e 65 63 74 69 6f 6e 2e 63 75 72 73 6f 72 28 29 ected.=.call.connection.cursor()
8400 2e 65 78 65 63 75 74 65 28 22 53 45 4c 45 43 54 20 31 22 29 2e 63 61 6c 6c 5f 6c 69 73 74 28 29 .execute("SELECT.1").call_list()
8420 0a 3e 3e 3e 20 6d 6f 63 6b 2e 6d 6f 63 6b 5f 63 61 6c 6c 73 0a 5b 63 61 6c 6c 2e 63 6f 6e 6e 65 .>>>.mock.mock_calls.[call.conne
8440 63 74 69 6f 6e 2e 63 75 72 73 6f 72 28 29 2c 20 63 61 6c 6c 2e 63 6f 6e 6e 65 63 74 69 6f 6e 2e ction.cursor(),.call.connection.
8460 63 75 72 73 6f 72 28 29 2e 65 78 65 63 75 74 65 28 27 53 45 4c 45 43 54 20 31 27 29 5d 0a 3e 3e cursor().execute('SELECT.1')].>>
8480 3e 20 6d 6f 63 6b 2e 6d 6f 63 6b 5f 63 61 6c 6c 73 20 3d 3d 20 65 78 70 65 63 74 65 64 0a 54 72 >.mock.mock_calls.==.expected.Tr
84a0 75 65 72 35 06 00 00 85 81 72 36 06 00 00 7d 72 37 06 00 00 28 68 2e 55 00 68 2f 6a 26 06 00 00 uer5.....r6...}r7...(h.U.h/j&...
84c0 75 62 61 75 62 68 c0 29 81 72 38 06 00 00 7d 72 39 06 00 00 28 68 2e 58 70 00 00 00 49 74 20 69 ubaubh.).r8...}r9...(h.Xp...It.i
84e0 73 20 74 68 65 20 63 61 6c 6c 20 74 6f 20 60 2e 63 61 6c 6c 5f 6c 69 73 74 28 29 60 20 74 68 61 s.the.call.to.`.call_list()`.tha
8500 74 20 74 75 72 6e 73 20 6f 75 72 20 63 61 6c 6c 20 6f 62 6a 65 63 74 20 69 6e 74 6f 20 61 20 6c t.turns.our.call.object.into.a.l
8520 69 73 74 20 6f 66 0a 63 61 6c 6c 73 20 72 65 70 72 65 73 65 6e 74 69 6e 67 20 74 68 65 20 63 68 ist.of.calls.representing.the.ch
8540 61 69 6e 65 64 20 63 61 6c 6c 73 2e 72 3a 06 00 00 68 2f 6a 46 05 00 00 68 30 68 33 68 35 68 c4 ained.calls.r:...h/jF...h0h3h5h.
8560 68 37 7d 72 3b 06 00 00 28 68 39 5d 72 3c 06 00 00 68 3b 5d 72 3d 06 00 00 68 3d 5d 72 3e 06 00 h7}r;...(h9]r<...h;]r=...h=]r>..
8580 00 68 3f 5d 72 3f 06 00 00 68 41 5d 72 40 06 00 00 75 68 43 4b f2 68 44 68 02 68 29 5d 72 41 06 .h?]r?...hA]r@...uhCK.hDh.h)]rA.
85a0 00 00 28 68 52 58 12 00 00 00 49 74 20 69 73 20 74 68 65 20 63 61 6c 6c 20 74 6f 20 72 42 06 00 ..(hRX....It.is.the.call.to.rB..
85c0 00 85 81 72 43 06 00 00 7d 72 44 06 00 00 28 68 2e 58 12 00 00 00 49 74 20 69 73 20 74 68 65 20 ...rC...}rD...(h.X....It.is.the.
85e0 63 61 6c 6c 20 74 6f 20 72 45 06 00 00 68 2f 6a 38 06 00 00 75 62 6a 66 01 00 00 29 81 72 46 06 call.to.rE...h/j8...ubjf...).rF.
8600 00 00 7d 72 47 06 00 00 28 68 2e 58 0e 00 00 00 60 2e 63 61 6c 6c 5f 6c 69 73 74 28 29 60 72 48 ..}rG...(h.X....`.call_list()`rH
8620 06 00 00 68 37 7d 72 49 06 00 00 28 68 39 5d 72 4a 06 00 00 68 3b 5d 72 4b 06 00 00 68 3d 5d 72 ...h7}rI...(h9]rJ...h;]rK...h=]r
8640 4c 06 00 00 68 3f 5d 72 4d 06 00 00 68 41 5d 72 4e 06 00 00 75 68 2f 6a 38 06 00 00 68 29 5d 72 L...h?]rM...hA]rN...uh/j8...h)]r
8660 4f 06 00 00 68 52 58 0c 00 00 00 2e 63 61 6c 6c 5f 6c 69 73 74 28 29 72 50 06 00 00 85 81 72 51 O...hRX.....call_list()rP.....rQ
8680 06 00 00 7d 72 52 06 00 00 28 68 2e 55 00 68 2f 6a 46 06 00 00 75 62 61 68 35 6a 74 01 00 00 75 ...}rR...(h.U.h/jF...ubah5jt...u
86a0 62 68 52 58 50 00 00 00 20 74 68 61 74 20 74 75 72 6e 73 20 6f 75 72 20 63 61 6c 6c 20 6f 62 6a bhRXP....that.turns.our.call.obj
86c0 65 63 74 20 69 6e 74 6f 20 61 20 6c 69 73 74 20 6f 66 0a 63 61 6c 6c 73 20 72 65 70 72 65 73 65 ect.into.a.list.of.calls.represe
86e0 6e 74 69 6e 67 20 74 68 65 20 63 68 61 69 6e 65 64 20 63 61 6c 6c 73 2e 72 53 06 00 00 85 81 72 nting.the.chained.calls.rS.....r
8700 54 06 00 00 7d 72 55 06 00 00 28 68 2e 58 50 00 00 00 20 74 68 61 74 20 74 75 72 6e 73 20 6f 75 T...}rU...(h.XP....that.turns.ou
8720 72 20 63 61 6c 6c 20 6f 62 6a 65 63 74 20 69 6e 74 6f 20 61 20 6c 69 73 74 20 6f 66 0a 63 61 6c r.call.object.into.a.list.of.cal
8740 6c 73 20 72 65 70 72 65 73 65 6e 74 69 6e 67 20 74 68 65 20 63 68 61 69 6e 65 64 20 63 61 6c 6c ls.representing.the.chained.call
8760 73 2e 72 56 06 00 00 68 2f 6a 38 06 00 00 75 62 65 75 62 65 75 62 68 2b 29 81 72 57 06 00 00 7d s.rV...h/j8...ubeubeubh+).rW...}
8780 72 58 06 00 00 28 68 2e 55 00 68 2f 68 94 68 30 68 33 68 35 68 36 68 37 7d 72 59 06 00 00 28 68 rX...(h.U.h/h.h0h3h5h6h7}rY...(h
87a0 39 5d 72 5a 06 00 00 68 3b 5d 72 5b 06 00 00 68 3d 5d 72 5c 06 00 00 68 3f 5d 72 5d 06 00 00 68 9]rZ...h;]r[...h=]r\...h?]r]...h
87c0 28 61 68 41 5d 72 5e 06 00 00 68 12 61 75 68 43 4b f8 68 44 68 02 68 29 5d 72 5f 06 00 00 28 68 (ahA]r^...h.auhCK.hDh.h)]r_...(h
87e0 46 29 81 72 60 06 00 00 7d 72 61 06 00 00 28 68 2e 58 1d 00 00 00 52 61 69 73 69 6e 67 20 65 78 F).r`...}ra...(h.X....Raising.ex
8800 63 65 70 74 69 6f 6e 73 20 77 69 74 68 20 6d 6f 63 6b 73 72 62 06 00 00 68 2f 6a 57 06 00 00 68 ceptions.with.mocksrb...h/jW...h
8820 30 68 33 68 35 68 4a 68 37 7d 72 63 06 00 00 28 68 39 5d 72 64 06 00 00 68 3b 5d 72 65 06 00 00 0h3h5hJh7}rc...(h9]rd...h;]re...
8840 68 3d 5d 72 66 06 00 00 68 3f 5d 72 67 06 00 00 68 41 5d 72 68 06 00 00 75 68 43 4b f8 68 44 68 h=]rf...h?]rg...hA]rh...uhCK.hDh
8860 02 68 29 5d 72 69 06 00 00 68 52 58 1d 00 00 00 52 61 69 73 69 6e 67 20 65 78 63 65 70 74 69 6f .h)]ri...hRX....Raising.exceptio
8880 6e 73 20 77 69 74 68 20 6d 6f 63 6b 73 72 6a 06 00 00 85 81 72 6b 06 00 00 7d 72 6c 06 00 00 28 ns.with.mocksrj.....rk...}rl...(
88a0 68 2e 6a 62 06 00 00 68 2f 6a 60 06 00 00 75 62 61 75 62 68 c0 29 81 72 6d 06 00 00 7d 72 6e 06 h.jb...h/j`...ubaubh.).rm...}rn.
88c0 00 00 28 68 2e 58 9d 00 00 00 41 20 75 73 65 66 75 6c 20 61 74 74 72 69 62 75 74 65 20 69 73 20 ..(h.X....A.useful.attribute.is.
88e0 3a 61 74 74 72 3a 60 7e 4d 6f 63 6b 2e 73 69 64 65 5f 65 66 66 65 63 74 60 2e 20 49 66 20 79 6f :attr:`~Mock.side_effect`..If.yo
8900 75 20 73 65 74 20 74 68 69 73 20 74 6f 20 61 6e 0a 65 78 63 65 70 74 69 6f 6e 20 63 6c 61 73 73 u.set.this.to.an.exception.class
8920 20 6f 72 20 69 6e 73 74 61 6e 63 65 20 74 68 65 6e 20 74 68 65 20 65 78 63 65 70 74 69 6f 6e 20 .or.instance.then.the.exception.
8940 77 69 6c 6c 20 62 65 20 72 61 69 73 65 64 20 77 68 65 6e 20 74 68 65 20 6d 6f 63 6b 0a 69 73 20 will.be.raised.when.the.mock.is.
8960 63 61 6c 6c 65 64 2e 72 6f 06 00 00 68 2f 6a 57 06 00 00 68 30 68 33 68 35 68 c4 68 37 7d 72 70 called.ro...h/jW...h0h3h5h.h7}rp
8980 06 00 00 28 68 39 5d 72 71 06 00 00 68 3b 5d 72 72 06 00 00 68 3d 5d 72 73 06 00 00 68 3f 5d 72 ...(h9]rq...h;]rr...h=]rs...h?]r
89a0 74 06 00 00 68 41 5d 72 75 06 00 00 75 68 43 4b fa 68 44 68 02 68 29 5d 72 76 06 00 00 28 68 52 t...hA]ru...uhCK.hDh.h)]rv...(hR
89c0 58 16 00 00 00 41 20 75 73 65 66 75 6c 20 61 74 74 72 69 62 75 74 65 20 69 73 20 72 77 06 00 00 X....A.useful.attribute.is.rw...
89e0 85 81 72 78 06 00 00 7d 72 79 06 00 00 28 68 2e 58 16 00 00 00 41 20 75 73 65 66 75 6c 20 61 74 ..rx...}ry...(h.X....A.useful.at
8a00 74 72 69 62 75 74 65 20 69 73 20 72 7a 06 00 00 68 2f 6a 6d 06 00 00 75 62 68 d0 29 81 72 7b 06 tribute.is.rz...h/jm...ubh.).r{.
8a20 00 00 7d 72 7c 06 00 00 28 68 2e 58 19 00 00 00 3a 61 74 74 72 3a 60 7e 4d 6f 63 6b 2e 73 69 64 ..}r|...(h.X....:attr:`~Mock.sid
8a40 65 5f 65 66 66 65 63 74 60 72 7d 06 00 00 68 2f 6a 6d 06 00 00 68 30 68 33 68 35 68 d4 68 37 7d e_effect`r}...h/jm...h0h3h5h.h7}
8a60 72 7e 06 00 00 28 55 07 72 65 66 74 79 70 65 72 7f 06 00 00 58 04 00 00 00 61 74 74 72 72 80 06 r~...(U.reftyper....X....attrr..
8a80 00 00 68 d8 89 68 d9 58 10 00 00 00 4d 6f 63 6b 2e 73 69 64 65 5f 65 66 66 65 63 74 72 81 06 00 ..h..h.X....Mock.side_effectr...
8aa0 00 55 09 72 65 66 64 6f 6d 61 69 6e 72 82 06 00 00 58 02 00 00 00 70 79 72 83 06 00 00 68 3f 5d .U.refdomainr....X....pyr....h?]
8ac0 72 84 06 00 00 68 3d 5d 72 85 06 00 00 55 0b 72 65 66 65 78 70 6c 69 63 69 74 72 86 06 00 00 89 r....h=]r....U.refexplicitr.....
8ae0 68 39 5d 72 87 06 00 00 68 3b 5d 72 88 06 00 00 68 41 5d 72 89 06 00 00 68 e3 68 e4 68 e5 4e 68 h9]r....h;]r....hA]r....h.h.h.Nh
8b00 e6 4e 75 68 43 4b fa 68 29 5d 72 8a 06 00 00 68 e8 29 81 72 8b 06 00 00 7d 72 8c 06 00 00 28 68 .NuhCK.h)]r....h.).r....}r....(h
8b20 2e 6a 7d 06 00 00 68 37 7d 72 8d 06 00 00 28 68 39 5d 72 8e 06 00 00 68 3b 5d 72 8f 06 00 00 28 .j}...h7}r....(h9]r....h;]r....(
8b40 68 ee 6a 83 06 00 00 58 07 00 00 00 70 79 2d 61 74 74 72 72 90 06 00 00 65 68 3d 5d 72 91 06 00 h.j....X....py-attrr....eh=]r...
8b60 00 68 3f 5d 72 92 06 00 00 68 41 5d 72 93 06 00 00 75 68 2f 6a 7b 06 00 00 68 29 5d 72 94 06 00 .h?]r....hA]r....uh/j{...h)]r...
8b80 00 68 52 58 0b 00 00 00 73 69 64 65 5f 65 66 66 65 63 74 72 95 06 00 00 85 81 72 96 06 00 00 7d .hRX....side_effectr......r....}
8ba0 72 97 06 00 00 28 68 2e 55 00 68 2f 6a 8b 06 00 00 75 62 61 68 35 68 f7 75 62 61 75 62 68 52 58 r....(h.U.h/j....ubah5h.ubaubhRX
8bc0 6e 00 00 00 2e 20 49 66 20 79 6f 75 20 73 65 74 20 74 68 69 73 20 74 6f 20 61 6e 0a 65 78 63 65 n.....If.you.set.this.to.an.exce
8be0 70 74 69 6f 6e 20 63 6c 61 73 73 20 6f 72 20 69 6e 73 74 61 6e 63 65 20 74 68 65 6e 20 74 68 65 ption.class.or.instance.then.the
8c00 20 65 78 63 65 70 74 69 6f 6e 20 77 69 6c 6c 20 62 65 20 72 61 69 73 65 64 20 77 68 65 6e 20 74 .exception.will.be.raised.when.t
8c20 68 65 20 6d 6f 63 6b 0a 69 73 20 63 61 6c 6c 65 64 2e 72 98 06 00 00 85 81 72 99 06 00 00 7d 72 he.mock.is.called.r......r....}r
8c40 9a 06 00 00 28 68 2e 58 6e 00 00 00 2e 20 49 66 20 79 6f 75 20 73 65 74 20 74 68 69 73 20 74 6f ....(h.Xn.....If.you.set.this.to
8c60 20 61 6e 0a 65 78 63 65 70 74 69 6f 6e 20 63 6c 61 73 73 20 6f 72 20 69 6e 73 74 61 6e 63 65 20 .an.exception.class.or.instance.
8c80 74 68 65 6e 20 74 68 65 20 65 78 63 65 70 74 69 6f 6e 20 77 69 6c 6c 20 62 65 20 72 61 69 73 65 then.the.exception.will.be.raise
8ca0 64 20 77 68 65 6e 20 74 68 65 20 6d 6f 63 6b 0a 69 73 20 63 61 6c 6c 65 64 2e 72 9b 06 00 00 68 d.when.the.mock.is.called.r....h
8cc0 2f 6a 6d 06 00 00 75 62 65 75 62 6a 44 01 00 00 29 81 72 9c 06 00 00 7d 72 9d 06 00 00 28 68 2e /jm...ubeubjD...).r....}r....(h.
8ce0 58 74 00 00 00 3e 3e 3e 20 6d 6f 63 6b 20 3d 20 4d 6f 63 6b 28 73 69 64 65 5f 65 66 66 65 63 74 Xt...>>>.mock.=.Mock(side_effect
8d00 3d 45 78 63 65 70 74 69 6f 6e 28 27 42 6f 6f 6d 21 27 29 29 0a 3e 3e 3e 20 6d 6f 63 6b 28 29 0a =Exception('Boom!')).>>>.mock().
8d20 54 72 61 63 65 62 61 63 6b 20 28 6d 6f 73 74 20 72 65 63 65 6e 74 20 63 61 6c 6c 20 6c 61 73 74 Traceback.(most.recent.call.last
8d40 29 3a 0a 20 20 2e 2e 2e 0a 45 78 63 65 70 74 69 6f 6e 3a 20 42 6f 6f 6d 21 72 9e 06 00 00 68 2f ):.......Exception:.Boom!r....h/
8d60 6a 57 06 00 00 68 30 68 33 68 35 6a 48 01 00 00 68 37 7d 72 9f 06 00 00 28 55 0c 74 65 73 74 6e jW...h0h3h5jH...h7}r....(U.testn
8d80 6f 64 65 74 79 70 65 72 a0 06 00 00 58 07 00 00 00 64 6f 63 74 65 73 74 72 a1 06 00 00 68 84 68 odetyper....X....doctestr....h.h
8da0 85 68 3f 5d 72 a2 06 00 00 68 3d 5d 72 a3 06 00 00 68 39 5d 72 a4 06 00 00 68 3b 5d 72 a5 06 00 .h?]r....h=]r....h9]r....h;]r...
8dc0 00 68 41 5d 72 a6 06 00 00 55 06 67 72 6f 75 70 73 72 a7 06 00 00 5d 72 a8 06 00 00 68 8d 61 68 .hA]r....U.groupsr....]r....h.ah
8de0 8e 7d 72 a9 06 00 00 75 68 43 4b fe 68 44 68 02 68 29 5d 72 aa 06 00 00 68 52 58 74 00 00 00 3e .}r....uhCK.hDh.h)]r....hRXt...>
8e00 3e 3e 20 6d 6f 63 6b 20 3d 20 4d 6f 63 6b 28 73 69 64 65 5f 65 66 66 65 63 74 3d 45 78 63 65 70 >>.mock.=.Mock(side_effect=Excep
8e20 74 69 6f 6e 28 27 42 6f 6f 6d 21 27 29 29 0a 3e 3e 3e 20 6d 6f 63 6b 28 29 0a 54 72 61 63 65 62 tion('Boom!')).>>>.mock().Traceb
8e40 61 63 6b 20 28 6d 6f 73 74 20 72 65 63 65 6e 74 20 63 61 6c 6c 20 6c 61 73 74 29 3a 0a 20 20 2e ack.(most.recent.call.last):....
8e60 2e 2e 0a 45 78 63 65 70 74 69 6f 6e 3a 20 42 6f 6f 6d 21 72 ab 06 00 00 85 81 72 ac 06 00 00 7d ...Exception:.Boom!r......r....}
8e80 72 ad 06 00 00 28 68 2e 55 00 68 2f 6a 9c 06 00 00 75 62 61 75 62 65 75 62 68 2b 29 81 72 ae 06 r....(h.U.h/j....ubaubeubh+).r..
8ea0 00 00 7d 72 af 06 00 00 28 68 2e 55 00 68 2f 68 94 68 30 68 33 68 35 68 36 68 37 7d 72 b0 06 00 ..}r....(h.U.h/h.h0h3h5h6h7}r...
8ec0 00 28 68 39 5d 72 b1 06 00 00 68 3b 5d 72 b2 06 00 00 68 3d 5d 72 b3 06 00 00 68 3f 5d 72 b4 06 .(h9]r....h;]r....h=]r....h?]r..
8ee0 00 00 68 1f 61 68 41 5d 72 b5 06 00 00 68 09 61 75 68 43 4d 08 01 68 44 68 02 68 29 5d 72 b6 06 ..h.ahA]r....h.auhCM..hDh.h)]r..
8f00 00 00 28 68 46 29 81 72 b7 06 00 00 7d 72 b8 06 00 00 28 68 2e 58 23 00 00 00 53 69 64 65 20 65 ..(hF).r....}r....(h.X#...Side.e
8f20 66 66 65 63 74 20 66 75 6e 63 74 69 6f 6e 73 20 61 6e 64 20 69 74 65 72 61 62 6c 65 73 72 b9 06 ffect.functions.and.iterablesr..
8f40 00 00 68 2f 6a ae 06 00 00 68 30 68 33 68 35 68 4a 68 37 7d 72 ba 06 00 00 28 68 39 5d 72 bb 06 ..h/j....h0h3h5hJh7}r....(h9]r..
8f60 00 00 68 3b 5d 72 bc 06 00 00 68 3d 5d 72 bd 06 00 00 68 3f 5d 72 be 06 00 00 68 41 5d 72 bf 06 ..h;]r....h=]r....h?]r....hA]r..
8f80 00 00 75 68 43 4d 08 01 68 44 68 02 68 29 5d 72 c0 06 00 00 68 52 58 23 00 00 00 53 69 64 65 20 ..uhCM..hDh.h)]r....hRX#...Side.
8fa0 65 66 66 65 63 74 20 66 75 6e 63 74 69 6f 6e 73 20 61 6e 64 20 69 74 65 72 61 62 6c 65 73 72 c1 effect.functions.and.iterablesr.
8fc0 06 00 00 85 81 72 c2 06 00 00 7d 72 c3 06 00 00 28 68 2e 6a b9 06 00 00 68 2f 6a b7 06 00 00 75 .....r....}r....(h.j....h/j....u
8fe0 62 61 75 62 68 c0 29 81 72 c4 06 00 00 7d 72 c5 06 00 00 28 68 2e 58 40 01 00 00 60 73 69 64 65 baubh.).r....}r....(h.X@...`side
9000 5f 65 66 66 65 63 74 60 20 63 61 6e 20 61 6c 73 6f 20 62 65 20 73 65 74 20 74 6f 20 61 20 66 75 _effect`.can.also.be.set.to.a.fu
9020 6e 63 74 69 6f 6e 20 6f 72 20 61 6e 20 69 74 65 72 61 62 6c 65 2e 20 54 68 65 20 75 73 65 20 63 nction.or.an.iterable..The.use.c
9040 61 73 65 20 66 6f 72 0a 60 73 69 64 65 5f 65 66 66 65 63 74 60 20 61 73 20 61 6e 20 69 74 65 72 ase.for.`side_effect`.as.an.iter
9060 61 62 6c 65 20 69 73 20 77 68 65 72 65 20 79 6f 75 72 20 6d 6f 63 6b 20 69 73 20 67 6f 69 6e 67 able.is.where.your.mock.is.going
9080 20 74 6f 20 62 65 20 63 61 6c 6c 65 64 20 73 65 76 65 72 61 6c 0a 74 69 6d 65 73 2c 20 61 6e 64 .to.be.called.several.times,.and
90a0 20 79 6f 75 20 77 61 6e 74 20 65 61 63 68 20 63 61 6c 6c 20 74 6f 20 72 65 74 75 72 6e 20 61 20 .you.want.each.call.to.return.a.
90c0 64 69 66 66 65 72 65 6e 74 20 76 61 6c 75 65 2e 20 57 68 65 6e 20 79 6f 75 20 73 65 74 0a 60 73 different.value..When.you.set.`s
90e0 69 64 65 5f 65 66 66 65 63 74 60 20 74 6f 20 61 6e 20 69 74 65 72 61 62 6c 65 20 65 76 65 72 79 ide_effect`.to.an.iterable.every
9100 20 63 61 6c 6c 20 74 6f 20 74 68 65 20 6d 6f 63 6b 20 72 65 74 75 72 6e 73 20 74 68 65 20 6e 65 .call.to.the.mock.returns.the.ne
9120 78 74 20 76 61 6c 75 65 0a 66 72 6f 6d 20 74 68 65 20 69 74 65 72 61 62 6c 65 3a 72 c6 06 00 00 xt.value.from.the.iterable:r....
9140 68 2f 6a ae 06 00 00 68 30 68 33 68 35 68 c4 68 37 7d 72 c7 06 00 00 28 68 39 5d 72 c8 06 00 00 h/j....h0h3h5h.h7}r....(h9]r....
9160 68 3b 5d 72 c9 06 00 00 68 3d 5d 72 ca 06 00 00 68 3f 5d 72 cb 06 00 00 68 41 5d 72 cc 06 00 00 h;]r....h=]r....h?]r....hA]r....
9180 75 68 43 4d 0a 01 68 44 68 02 68 29 5d 72 cd 06 00 00 28 6a 66 01 00 00 29 81 72 ce 06 00 00 7d uhCM..hDh.h)]r....(jf...).r....}
91a0 72 cf 06 00 00 28 68 2e 58 0d 00 00 00 60 73 69 64 65 5f 65 66 66 65 63 74 60 72 d0 06 00 00 68 r....(h.X....`side_effect`r....h
91c0 37 7d 72 d1 06 00 00 28 68 39 5d 72 d2 06 00 00 68 3b 5d 72 d3 06 00 00 68 3d 5d 72 d4 06 00 00 7}r....(h9]r....h;]r....h=]r....
91e0 68 3f 5d 72 d5 06 00 00 68 41 5d 72 d6 06 00 00 75 68 2f 6a c4 06 00 00 68 29 5d 72 d7 06 00 00 h?]r....hA]r....uh/j....h)]r....
9200 68 52 58 0b 00 00 00 73 69 64 65 5f 65 66 66 65 63 74 72 d8 06 00 00 85 81 72 d9 06 00 00 7d 72 hRX....side_effectr......r....}r
9220 da 06 00 00 28 68 2e 55 00 68 2f 6a ce 06 00 00 75 62 61 68 35 6a 74 01 00 00 75 62 68 52 58 40 ....(h.U.h/j....ubah5jt...ubhRX@
9240 00 00 00 20 63 61 6e 20 61 6c 73 6f 20 62 65 20 73 65 74 20 74 6f 20 61 20 66 75 6e 63 74 69 6f ....can.also.be.set.to.a.functio
9260 6e 20 6f 72 20 61 6e 20 69 74 65 72 61 62 6c 65 2e 20 54 68 65 20 75 73 65 20 63 61 73 65 20 66 n.or.an.iterable..The.use.case.f
9280 6f 72 0a 72 db 06 00 00 85 81 72 dc 06 00 00 7d 72 dd 06 00 00 28 68 2e 58 40 00 00 00 20 63 61 or.r......r....}r....(h.X@....ca
92a0 6e 20 61 6c 73 6f 20 62 65 20 73 65 74 20 74 6f 20 61 20 66 75 6e 63 74 69 6f 6e 20 6f 72 20 61 n.also.be.set.to.a.function.or.a
92c0 6e 20 69 74 65 72 61 62 6c 65 2e 20 54 68 65 20 75 73 65 20 63 61 73 65 20 66 6f 72 0a 72 de 06 n.iterable..The.use.case.for.r..
92e0 00 00 68 2f 6a c4 06 00 00 75 62 6a 66 01 00 00 29 81 72 df 06 00 00 7d 72 e0 06 00 00 28 68 2e ..h/j....ubjf...).r....}r....(h.
9300 58 0d 00 00 00 60 73 69 64 65 5f 65 66 66 65 63 74 60 72 e1 06 00 00 68 37 7d 72 e2 06 00 00 28 X....`side_effect`r....h7}r....(
9320 68 39 5d 72 e3 06 00 00 68 3b 5d 72 e4 06 00 00 68 3d 5d 72 e5 06 00 00 68 3f 5d 72 e6 06 00 00 h9]r....h;]r....h=]r....h?]r....
9340 68 41 5d 72 e7 06 00 00 75 68 2f 6a c4 06 00 00 68 29 5d 72 e8 06 00 00 68 52 58 0b 00 00 00 73 hA]r....uh/j....h)]r....hRX....s
9360 69 64 65 5f 65 66 66 65 63 74 72 e9 06 00 00 85 81 72 ea 06 00 00 7d 72 eb 06 00 00 28 68 2e 55 ide_effectr......r....}r....(h.U
9380 00 68 2f 6a df 06 00 00 75 62 61 68 35 6a 74 01 00 00 75 62 68 52 58 89 00 00 00 20 61 73 20 61 .h/j....ubah5jt...ubhRX.....as.a
93a0 6e 20 69 74 65 72 61 62 6c 65 20 69 73 20 77 68 65 72 65 20 79 6f 75 72 20 6d 6f 63 6b 20 69 73 n.iterable.is.where.your.mock.is
93c0 20 67 6f 69 6e 67 20 74 6f 20 62 65 20 63 61 6c 6c 65 64 20 73 65 76 65 72 61 6c 0a 74 69 6d 65 .going.to.be.called.several.time
93e0 73 2c 20 61 6e 64 20 79 6f 75 20 77 61 6e 74 20 65 61 63 68 20 63 61 6c 6c 20 74 6f 20 72 65 74 s,.and.you.want.each.call.to.ret
9400 75 72 6e 20 61 20 64 69 66 66 65 72 65 6e 74 20 76 61 6c 75 65 2e 20 57 68 65 6e 20 79 6f 75 20 urn.a.different.value..When.you.
9420 73 65 74 0a 72 ec 06 00 00 85 81 72 ed 06 00 00 7d 72 ee 06 00 00 28 68 2e 58 89 00 00 00 20 61 set.r......r....}r....(h.X.....a
9440 73 20 61 6e 20 69 74 65 72 61 62 6c 65 20 69 73 20 77 68 65 72 65 20 79 6f 75 72 20 6d 6f 63 6b s.an.iterable.is.where.your.mock
9460 20 69 73 20 67 6f 69 6e 67 20 74 6f 20 62 65 20 63 61 6c 6c 65 64 20 73 65 76 65 72 61 6c 0a 74 .is.going.to.be.called.several.t
9480 69 6d 65 73 2c 20 61 6e 64 20 79 6f 75 20 77 61 6e 74 20 65 61 63 68 20 63 61 6c 6c 20 74 6f 20 imes,.and.you.want.each.call.to.
94a0 72 65 74 75 72 6e 20 61 20 64 69 66 66 65 72 65 6e 74 20 76 61 6c 75 65 2e 20 57 68 65 6e 20 79 return.a.different.value..When.y
94c0 6f 75 20 73 65 74 0a 72 ef 06 00 00 68 2f 6a c4 06 00 00 75 62 6a 66 01 00 00 29 81 72 f0 06 00 ou.set.r....h/j....ubjf...).r...
94e0 00 7d 72 f1 06 00 00 28 68 2e 58 0d 00 00 00 60 73 69 64 65 5f 65 66 66 65 63 74 60 72 f2 06 00 .}r....(h.X....`side_effect`r...
9500 00 68 37 7d 72 f3 06 00 00 28 68 39 5d 72 f4 06 00 00 68 3b 5d 72 f5 06 00 00 68 3d 5d 72 f6 06 .h7}r....(h9]r....h;]r....h=]r..
9520 00 00 68 3f 5d 72 f7 06 00 00 68 41 5d 72 f8 06 00 00 75 68 2f 6a c4 06 00 00 68 29 5d 72 f9 06 ..h?]r....hA]r....uh/j....h)]r..
9540 00 00 68 52 58 0b 00 00 00 73 69 64 65 5f 65 66 66 65 63 74 72 fa 06 00 00 85 81 72 fb 06 00 00 ..hRX....side_effectr......r....
9560 7d 72 fc 06 00 00 28 68 2e 55 00 68 2f 6a f0 06 00 00 75 62 61 68 35 6a 74 01 00 00 75 62 68 52 }r....(h.U.h/j....ubah5jt...ubhR
9580 58 50 00 00 00 20 74 6f 20 61 6e 20 69 74 65 72 61 62 6c 65 20 65 76 65 72 79 20 63 61 6c 6c 20 XP....to.an.iterable.every.call.
95a0 74 6f 20 74 68 65 20 6d 6f 63 6b 20 72 65 74 75 72 6e 73 20 74 68 65 20 6e 65 78 74 20 76 61 6c to.the.mock.returns.the.next.val
95c0 75 65 0a 66 72 6f 6d 20 74 68 65 20 69 74 65 72 61 62 6c 65 3a 72 fd 06 00 00 85 81 72 fe 06 00 ue.from.the.iterable:r......r...
95e0 00 7d 72 ff 06 00 00 28 68 2e 58 50 00 00 00 20 74 6f 20 61 6e 20 69 74 65 72 61 62 6c 65 20 65 .}r....(h.XP....to.an.iterable.e
9600 76 65 72 79 20 63 61 6c 6c 20 74 6f 20 74 68 65 20 6d 6f 63 6b 20 72 65 74 75 72 6e 73 20 74 68 very.call.to.the.mock.returns.th
9620 65 20 6e 65 78 74 20 76 61 6c 75 65 0a 66 72 6f 6d 20 74 68 65 20 69 74 65 72 61 62 6c 65 3a 72 e.next.value.from.the.iterable:r
9640 00 07 00 00 68 2f 6a c4 06 00 00 75 62 65 75 62 6a 44 01 00 00 29 81 72 01 07 00 00 7d 72 02 07 ....h/j....ubeubjD...).r....}r..
9660 00 00 28 68 2e 58 52 00 00 00 3e 3e 3e 20 6d 6f 63 6b 20 3d 20 4d 61 67 69 63 4d 6f 63 6b 28 73 ..(h.XR...>>>.mock.=.MagicMock(s
9680 69 64 65 5f 65 66 66 65 63 74 3d 5b 34 2c 20 35 2c 20 36 5d 29 0a 3e 3e 3e 20 6d 6f 63 6b 28 29 ide_effect=[4,.5,.6]).>>>.mock()
96a0 0a 34 0a 3e 3e 3e 20 6d 6f 63 6b 28 29 0a 35 0a 3e 3e 3e 20 6d 6f 63 6b 28 29 0a 36 72 03 07 00 .4.>>>.mock().5.>>>.mock().6r...
96c0 00 68 2f 6a ae 06 00 00 68 30 68 33 68 35 6a 48 01 00 00 68 37 7d 72 04 07 00 00 28 55 0c 74 65 .h/j....h0h3h5jH...h7}r....(U.te
96e0 73 74 6e 6f 64 65 74 79 70 65 72 05 07 00 00 58 07 00 00 00 64 6f 63 74 65 73 74 72 06 07 00 00 stnodetyper....X....doctestr....
9700 68 84 68 85 68 3f 5d 72 07 07 00 00 68 3d 5d 72 08 07 00 00 68 39 5d 72 09 07 00 00 68 3b 5d 72 h.h.h?]r....h=]r....h9]r....h;]r
9720 0a 07 00 00 68 41 5d 72 0b 07 00 00 55 06 67 72 6f 75 70 73 72 0c 07 00 00 5d 72 0d 07 00 00 68 ....hA]r....U.groupsr....]r....h
9740 8d 61 68 8e 7d 72 0e 07 00 00 75 68 43 4d 10 01 68 44 68 02 68 29 5d 72 0f 07 00 00 68 52 58 52 .ah.}r....uhCM..hDh.h)]r....hRXR
9760 00 00 00 3e 3e 3e 20 6d 6f 63 6b 20 3d 20 4d 61 67 69 63 4d 6f 63 6b 28 73 69 64 65 5f 65 66 66 ...>>>.mock.=.MagicMock(side_eff
9780 65 63 74 3d 5b 34 2c 20 35 2c 20 36 5d 29 0a 3e 3e 3e 20 6d 6f 63 6b 28 29 0a 34 0a 3e 3e 3e 20 ect=[4,.5,.6]).>>>.mock().4.>>>.
97a0 6d 6f 63 6b 28 29 0a 35 0a 3e 3e 3e 20 6d 6f 63 6b 28 29 0a 36 72 10 07 00 00 85 81 72 11 07 00 mock().5.>>>.mock().6r......r...
97c0 00 7d 72 12 07 00 00 28 68 2e 55 00 68 2f 6a 01 07 00 00 75 62 61 75 62 68 c0 29 81 72 13 07 00 .}r....(h.U.h/j....ubaubh.).r...
97e0 00 7d 72 14 07 00 00 28 68 2e 58 0c 01 00 00 46 6f 72 20 6d 6f 72 65 20 61 64 76 61 6e 63 65 64 .}r....(h.X....For.more.advanced
9800 20 75 73 65 20 63 61 73 65 73 2c 20 6c 69 6b 65 20 64 79 6e 61 6d 69 63 61 6c 6c 79 20 76 61 72 .use.cases,.like.dynamically.var
9820 79 69 6e 67 20 74 68 65 20 72 65 74 75 72 6e 20 76 61 6c 75 65 73 0a 64 65 70 65 6e 64 69 6e 67 ying.the.return.values.depending
9840 20 6f 6e 20 77 68 61 74 20 74 68 65 20 6d 6f 63 6b 20 69 73 20 63 61 6c 6c 65 64 20 77 69 74 68 .on.what.the.mock.is.called.with
9860 2c 20 60 73 69 64 65 5f 65 66 66 65 63 74 60 20 63 61 6e 20 62 65 20 61 20 66 75 6e 63 74 69 6f ,.`side_effect`.can.be.a.functio
9880 6e 2e 0a 54 68 65 20 66 75 6e 63 74 69 6f 6e 20 77 69 6c 6c 20 62 65 20 63 61 6c 6c 65 64 20 77 n..The.function.will.be.called.w
98a0 69 74 68 20 74 68 65 20 73 61 6d 65 20 61 72 67 75 6d 65 6e 74 73 20 61 73 20 74 68 65 20 6d 6f ith.the.same.arguments.as.the.mo
98c0 63 6b 2e 20 57 68 61 74 65 76 65 72 20 74 68 65 0a 66 75 6e 63 74 69 6f 6e 20 72 65 74 75 72 6e ck..Whatever.the.function.return
98e0 73 20 69 73 20 77 68 61 74 20 74 68 65 20 63 61 6c 6c 20 72 65 74 75 72 6e 73 3a 72 15 07 00 00 s.is.what.the.call.returns:r....
9900 68 2f 6a ae 06 00 00 68 30 68 33 68 35 68 c4 68 37 7d 72 16 07 00 00 28 68 39 5d 72 17 07 00 00 h/j....h0h3h5h.h7}r....(h9]r....
9920 68 3b 5d 72 18 07 00 00 68 3d 5d 72 19 07 00 00 68 3f 5d 72 1a 07 00 00 68 41 5d 72 1b 07 00 00 h;]r....h=]r....h?]r....hA]r....
9940 75 68 43 4d 1b 01 68 44 68 02 68 29 5d 72 1c 07 00 00 28 68 52 58 73 00 00 00 46 6f 72 20 6d 6f uhCM..hDh.h)]r....(hRXs...For.mo
9960 72 65 20 61 64 76 61 6e 63 65 64 20 75 73 65 20 63 61 73 65 73 2c 20 6c 69 6b 65 20 64 79 6e 61 re.advanced.use.cases,.like.dyna
9980 6d 69 63 61 6c 6c 79 20 76 61 72 79 69 6e 67 20 74 68 65 20 72 65 74 75 72 6e 20 76 61 6c 75 65 mically.varying.the.return.value
99a0 73 0a 64 65 70 65 6e 64 69 6e 67 20 6f 6e 20 77 68 61 74 20 74 68 65 20 6d 6f 63 6b 20 69 73 20 s.depending.on.what.the.mock.is.
99c0 63 61 6c 6c 65 64 20 77 69 74 68 2c 20 72 1d 07 00 00 85 81 72 1e 07 00 00 7d 72 1f 07 00 00 28 called.with,.r......r....}r....(
99e0 68 2e 58 73 00 00 00 46 6f 72 20 6d 6f 72 65 20 61 64 76 61 6e 63 65 64 20 75 73 65 20 63 61 73 h.Xs...For.more.advanced.use.cas
9a00 65 73 2c 20 6c 69 6b 65 20 64 79 6e 61 6d 69 63 61 6c 6c 79 20 76 61 72 79 69 6e 67 20 74 68 65 es,.like.dynamically.varying.the
9a20 20 72 65 74 75 72 6e 20 76 61 6c 75 65 73 0a 64 65 70 65 6e 64 69 6e 67 20 6f 6e 20 77 68 61 74 .return.values.depending.on.what
9a40 20 74 68 65 20 6d 6f 63 6b 20 69 73 20 63 61 6c 6c 65 64 20 77 69 74 68 2c 20 72 20 07 00 00 68 .the.mock.is.called.with,.r....h
9a60 2f 6a 13 07 00 00 75 62 6a 66 01 00 00 29 81 72 21 07 00 00 7d 72 22 07 00 00 28 68 2e 58 0d 00 /j....ubjf...).r!...}r"...(h.X..
9a80 00 00 60 73 69 64 65 5f 65 66 66 65 63 74 60 72 23 07 00 00 68 37 7d 72 24 07 00 00 28 68 39 5d ..`side_effect`r#...h7}r$...(h9]
9aa0 72 25 07 00 00 68 3b 5d 72 26 07 00 00 68 3d 5d 72 27 07 00 00 68 3f 5d 72 28 07 00 00 68 41 5d r%...h;]r&...h=]r'...h?]r(...hA]
9ac0 72 29 07 00 00 75 68 2f 6a 13 07 00 00 68 29 5d 72 2a 07 00 00 68 52 58 0b 00 00 00 73 69 64 65 r)...uh/j....h)]r*...hRX....side
9ae0 5f 65 66 66 65 63 74 72 2b 07 00 00 85 81 72 2c 07 00 00 7d 72 2d 07 00 00 28 68 2e 55 00 68 2f _effectr+.....r,...}r-...(h.U.h/
9b00 6a 21 07 00 00 75 62 61 68 35 6a 74 01 00 00 75 62 68 52 58 8c 00 00 00 20 63 61 6e 20 62 65 20 j!...ubah5jt...ubhRX.....can.be.
9b20 61 20 66 75 6e 63 74 69 6f 6e 2e 0a 54 68 65 20 66 75 6e 63 74 69 6f 6e 20 77 69 6c 6c 20 62 65 a.function..The.function.will.be
9b40 20 63 61 6c 6c 65 64 20 77 69 74 68 20 74 68 65 20 73 61 6d 65 20 61 72 67 75 6d 65 6e 74 73 20 .called.with.the.same.arguments.
9b60 61 73 20 74 68 65 20 6d 6f 63 6b 2e 20 57 68 61 74 65 76 65 72 20 74 68 65 0a 66 75 6e 63 74 69 as.the.mock..Whatever.the.functi
9b80 6f 6e 20 72 65 74 75 72 6e 73 20 69 73 20 77 68 61 74 20 74 68 65 20 63 61 6c 6c 20 72 65 74 75 on.returns.is.what.the.call.retu
9ba0 72 6e 73 3a 72 2e 07 00 00 85 81 72 2f 07 00 00 7d 72 30 07 00 00 28 68 2e 58 8c 00 00 00 20 63 rns:r......r/...}r0...(h.X.....c
9bc0 61 6e 20 62 65 20 61 20 66 75 6e 63 74 69 6f 6e 2e 0a 54 68 65 20 66 75 6e 63 74 69 6f 6e 20 77 an.be.a.function..The.function.w
9be0 69 6c 6c 20 62 65 20 63 61 6c 6c 65 64 20 77 69 74 68 20 74 68 65 20 73 61 6d 65 20 61 72 67 75 ill.be.called.with.the.same.argu
9c00 6d 65 6e 74 73 20 61 73 20 74 68 65 20 6d 6f 63 6b 2e 20 57 68 61 74 65 76 65 72 20 74 68 65 0a ments.as.the.mock..Whatever.the.
9c20 66 75 6e 63 74 69 6f 6e 20 72 65 74 75 72 6e 73 20 69 73 20 77 68 61 74 20 74 68 65 20 63 61 6c function.returns.is.what.the.cal
9c40 6c 20 72 65 74 75 72 6e 73 3a 72 31 07 00 00 68 2f 6a 13 07 00 00 75 62 65 75 62 6a 44 01 00 00 l.returns:r1...h/j....ubeubjD...
9c60 29 81 72 32 07 00 00 7d 72 33 07 00 00 28 68 2e 58 ab 00 00 00 3e 3e 3e 20 76 61 6c 73 20 3d 20 ).r2...}r3...(h.X....>>>.vals.=.
9c80 7b 28 31 2c 20 32 29 3a 20 31 2c 20 28 32 2c 20 33 29 3a 20 32 7d 0a 3e 3e 3e 20 64 65 66 20 73 {(1,.2):.1,.(2,.3):.2}.>>>.def.s
9ca0 69 64 65 5f 65 66 66 65 63 74 28 2a 61 72 67 73 29 3a 0a 2e 2e 2e 20 20 20 20 20 72 65 74 75 72 ide_effect(*args):.........retur
9cc0 6e 20 76 61 6c 73 5b 61 72 67 73 5d 0a 2e 2e 2e 0a 3e 3e 3e 20 6d 6f 63 6b 20 3d 20 4d 61 67 69 n.vals[args].....>>>.mock.=.Magi
9ce0 63 4d 6f 63 6b 28 73 69 64 65 5f 65 66 66 65 63 74 3d 73 69 64 65 5f 65 66 66 65 63 74 29 0a 3e cMock(side_effect=side_effect).>
9d00 3e 3e 20 6d 6f 63 6b 28 31 2c 20 32 29 0a 31 0a 3e 3e 3e 20 6d 6f 63 6b 28 32 2c 20 33 29 0a 32 >>.mock(1,.2).1.>>>.mock(2,.3).2
9d20 72 34 07 00 00 68 2f 6a ae 06 00 00 68 30 68 33 68 35 6a 48 01 00 00 68 37 7d 72 35 07 00 00 28 r4...h/j....h0h3h5jH...h7}r5...(
9d40 55 0c 74 65 73 74 6e 6f 64 65 74 79 70 65 72 36 07 00 00 58 07 00 00 00 64 6f 63 74 65 73 74 72 U.testnodetyper6...X....doctestr
9d60 37 07 00 00 68 84 68 85 68 3f 5d 72 38 07 00 00 68 3d 5d 72 39 07 00 00 68 39 5d 72 3a 07 00 00 7...h.h.h?]r8...h=]r9...h9]r:...
9d80 68 3b 5d 72 3b 07 00 00 68 41 5d 72 3c 07 00 00 55 06 67 72 6f 75 70 73 72 3d 07 00 00 5d 72 3e h;]r;...hA]r<...U.groupsr=...]r>
9da0 07 00 00 68 8d 61 68 8e 7d 72 3f 07 00 00 75 68 43 4d 20 01 68 44 68 02 68 29 5d 72 40 07 00 00 ...h.ah.}r?...uhCM..hDh.h)]r@...
9dc0 68 52 58 ab 00 00 00 3e 3e 3e 20 76 61 6c 73 20 3d 20 7b 28 31 2c 20 32 29 3a 20 31 2c 20 28 32 hRX....>>>.vals.=.{(1,.2):.1,.(2
9de0 2c 20 33 29 3a 20 32 7d 0a 3e 3e 3e 20 64 65 66 20 73 69 64 65 5f 65 66 66 65 63 74 28 2a 61 72 ,.3):.2}.>>>.def.side_effect(*ar
9e00 67 73 29 3a 0a 2e 2e 2e 20 20 20 20 20 72 65 74 75 72 6e 20 76 61 6c 73 5b 61 72 67 73 5d 0a 2e gs):.........return.vals[args]..
9e20 2e 2e 0a 3e 3e 3e 20 6d 6f 63 6b 20 3d 20 4d 61 67 69 63 4d 6f 63 6b 28 73 69 64 65 5f 65 66 66 ...>>>.mock.=.MagicMock(side_eff
9e40 65 63 74 3d 73 69 64 65 5f 65 66 66 65 63 74 29 0a 3e 3e 3e 20 6d 6f 63 6b 28 31 2c 20 32 29 0a ect=side_effect).>>>.mock(1,.2).
9e60 31 0a 3e 3e 3e 20 6d 6f 63 6b 28 32 2c 20 33 29 0a 32 72 41 07 00 00 85 81 72 42 07 00 00 7d 72 1.>>>.mock(2,.3).2rA.....rB...}r
9e80 43 07 00 00 28 68 2e 55 00 68 2f 6a 32 07 00 00 75 62 61 75 62 65 75 62 68 2b 29 81 72 44 07 00 C...(h.U.h/j2...ubaubeubh+).rD..
9ea0 00 7d 72 45 07 00 00 28 68 2e 55 00 68 2f 68 94 68 30 68 33 68 35 68 36 68 37 7d 72 46 07 00 00 .}rE...(h.U.h/h.h0h3h5h6h7}rF...
9ec0 28 68 39 5d 72 47 07 00 00 68 3b 5d 72 48 07 00 00 68 3d 5d 72 49 07 00 00 68 3f 5d 72 4a 07 00 (h9]rG...h;]rH...h=]rI...h?]rJ..
9ee0 00 68 27 61 68 41 5d 72 4b 07 00 00 68 11 61 75 68 43 4d 2e 01 68 44 68 02 68 29 5d 72 4c 07 00 .h'ahA]rK...h.auhCM..hDh.h)]rL..
9f00 00 28 68 46 29 81 72 4d 07 00 00 7d 72 4e 07 00 00 28 68 2e 58 27 00 00 00 43 72 65 61 74 69 6e .(hF).rM...}rN...(h.X'...Creatin
9f20 67 20 61 20 4d 6f 63 6b 20 66 72 6f 6d 20 61 6e 20 45 78 69 73 74 69 6e 67 20 4f 62 6a 65 63 74 g.a.Mock.from.an.Existing.Object
9f40 72 4f 07 00 00 68 2f 6a 44 07 00 00 68 30 68 33 68 35 68 4a 68 37 7d 72 50 07 00 00 28 68 39 5d rO...h/jD...h0h3h5hJh7}rP...(h9]
9f60 72 51 07 00 00 68 3b 5d 72 52 07 00 00 68 3d 5d 72 53 07 00 00 68 3f 5d 72 54 07 00 00 68 41 5d rQ...h;]rR...h=]rS...h?]rT...hA]
9f80 72 55 07 00 00 75 68 43 4d 2e 01 68 44 68 02 68 29 5d 72 56 07 00 00 68 52 58 27 00 00 00 43 72 rU...uhCM..hDh.h)]rV...hRX'...Cr
9fa0 65 61 74 69 6e 67 20 61 20 4d 6f 63 6b 20 66 72 6f 6d 20 61 6e 20 45 78 69 73 74 69 6e 67 20 4f eating.a.Mock.from.an.Existing.O
9fc0 62 6a 65 63 74 72 57 07 00 00 85 81 72 58 07 00 00 7d 72 59 07 00 00 28 68 2e 6a 4f 07 00 00 68 bjectrW.....rX...}rY...(h.jO...h
9fe0 2f 6a 4d 07 00 00 75 62 61 75 62 68 c0 29 81 72 5a 07 00 00 7d 72 5b 07 00 00 28 68 2e 58 b8 01 /jM...ubaubh.).rZ...}r[...(h.X..
a000 00 00 4f 6e 65 20 70 72 6f 62 6c 65 6d 20 77 69 74 68 20 6f 76 65 72 20 75 73 65 20 6f 66 20 6d ..One.problem.with.over.use.of.m
a020 6f 63 6b 69 6e 67 20 69 73 20 74 68 61 74 20 69 74 20 63 6f 75 70 6c 65 73 20 79 6f 75 72 20 74 ocking.is.that.it.couples.your.t
a040 65 73 74 73 20 74 6f 20 74 68 65 0a 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 20 6f 66 20 79 6f ests.to.the.implementation.of.yo
a060 75 72 20 6d 6f 63 6b 73 20 72 61 74 68 65 72 20 74 68 61 6e 20 79 6f 75 72 20 72 65 61 6c 20 63 ur.mocks.rather.than.your.real.c
a080 6f 64 65 2e 20 53 75 70 70 6f 73 65 20 79 6f 75 20 68 61 76 65 20 61 0a 63 6c 61 73 73 20 74 68 ode..Suppose.you.have.a.class.th
a0a0 61 74 20 69 6d 70 6c 65 6d 65 6e 74 73 20 60 73 6f 6d 65 5f 6d 65 74 68 6f 64 60 2e 20 49 6e 20 at.implements.`some_method`..In.
a0c0 61 20 74 65 73 74 20 66 6f 72 20 61 6e 6f 74 68 65 72 20 63 6c 61 73 73 2c 20 79 6f 75 0a 70 72 a.test.for.another.class,.you.pr
a0e0 6f 76 69 64 65 20 61 20 6d 6f 63 6b 20 6f 66 20 74 68 69 73 20 6f 62 6a 65 63 74 20 74 68 61 74 ovide.a.mock.of.this.object.that
a100 20 2a 61 6c 73 6f 2a 20 70 72 6f 76 69 64 65 73 20 60 73 6f 6d 65 5f 6d 65 74 68 6f 64 60 2e 20 .*also*.provides.`some_method`..
a120 49 66 20 6c 61 74 65 72 0a 79 6f 75 20 72 65 66 61 63 74 6f 72 20 74 68 65 20 66 69 72 73 74 20 If.later.you.refactor.the.first.
a140 63 6c 61 73 73 2c 20 73 6f 20 74 68 61 74 20 69 74 20 6e 6f 20 6c 6f 6e 67 65 72 20 68 61 73 20 class,.so.that.it.no.longer.has.
a160 60 73 6f 6d 65 5f 6d 65 74 68 6f 64 60 20 2d 20 74 68 65 6e 0a 79 6f 75 72 20 74 65 73 74 73 20 `some_method`.-.then.your.tests.
a180 77 69 6c 6c 20 63 6f 6e 74 69 6e 75 65 20 74 6f 20 70 61 73 73 20 65 76 65 6e 20 74 68 6f 75 67 will.continue.to.pass.even.thoug
a1a0 68 20 79 6f 75 72 20 63 6f 64 65 20 69 73 20 6e 6f 77 20 62 72 6f 6b 65 6e 21 72 5c 07 00 00 68 h.your.code.is.now.broken!r\...h
a1c0 2f 6a 44 07 00 00 68 30 68 33 68 35 68 c4 68 37 7d 72 5d 07 00 00 28 68 39 5d 72 5e 07 00 00 68 /jD...h0h3h5h.h7}r]...(h9]r^...h
a1e0 3b 5d 72 5f 07 00 00 68 3d 5d 72 60 07 00 00 68 3f 5d 72 61 07 00 00 68 41 5d 72 62 07 00 00 75 ;]r_...h=]r`...h?]ra...hA]rb...u
a200 68 43 4d 30 01 68 44 68 02 68 29 5d 72 63 07 00 00 28 68 52 58 ac 00 00 00 4f 6e 65 20 70 72 6f hCM0.hDh.h)]rc...(hRX....One.pro
a220 62 6c 65 6d 20 77 69 74 68 20 6f 76 65 72 20 75 73 65 20 6f 66 20 6d 6f 63 6b 69 6e 67 20 69 73 blem.with.over.use.of.mocking.is
a240 20 74 68 61 74 20 69 74 20 63 6f 75 70 6c 65 73 20 79 6f 75 72 20 74 65 73 74 73 20 74 6f 20 74 .that.it.couples.your.tests.to.t
a260 68 65 0a 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 20 6f 66 20 79 6f 75 72 20 6d 6f 63 6b 73 20 he.implementation.of.your.mocks.
a280 72 61 74 68 65 72 20 74 68 61 6e 20 79 6f 75 72 20 72 65 61 6c 20 63 6f 64 65 2e 20 53 75 70 70 rather.than.your.real.code..Supp
a2a0 6f 73 65 20 79 6f 75 20 68 61 76 65 20 61 0a 63 6c 61 73 73 20 74 68 61 74 20 69 6d 70 6c 65 6d ose.you.have.a.class.that.implem
a2c0 65 6e 74 73 20 72 64 07 00 00 85 81 72 65 07 00 00 7d 72 66 07 00 00 28 68 2e 58 ac 00 00 00 4f ents.rd.....re...}rf...(h.X....O
a2e0 6e 65 20 70 72 6f 62 6c 65 6d 20 77 69 74 68 20 6f 76 65 72 20 75 73 65 20 6f 66 20 6d 6f 63 6b ne.problem.with.over.use.of.mock
a300 69 6e 67 20 69 73 20 74 68 61 74 20 69 74 20 63 6f 75 70 6c 65 73 20 79 6f 75 72 20 74 65 73 74 ing.is.that.it.couples.your.test
a320 73 20 74 6f 20 74 68 65 0a 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 20 6f 66 20 79 6f 75 72 20 s.to.the.implementation.of.your.
a340 6d 6f 63 6b 73 20 72 61 74 68 65 72 20 74 68 61 6e 20 79 6f 75 72 20 72 65 61 6c 20 63 6f 64 65 mocks.rather.than.your.real.code
a360 2e 20 53 75 70 70 6f 73 65 20 79 6f 75 20 68 61 76 65 20 61 0a 63 6c 61 73 73 20 74 68 61 74 20 ..Suppose.you.have.a.class.that.
a380 69 6d 70 6c 65 6d 65 6e 74 73 20 72 67 07 00 00 68 2f 6a 5a 07 00 00 75 62 6a 66 01 00 00 29 81 implements.rg...h/jZ...ubjf...).
a3a0 72 68 07 00 00 7d 72 69 07 00 00 28 68 2e 58 0d 00 00 00 60 73 6f 6d 65 5f 6d 65 74 68 6f 64 60 rh...}ri...(h.X....`some_method`
a3c0 72 6a 07 00 00 68 37 7d 72 6b 07 00 00 28 68 39 5d 72 6c 07 00 00 68 3b 5d 72 6d 07 00 00 68 3d rj...h7}rk...(h9]rl...h;]rm...h=
a3e0 5d 72 6e 07 00 00 68 3f 5d 72 6f 07 00 00 68 41 5d 72 70 07 00 00 75 68 2f 6a 5a 07 00 00 68 29 ]rn...h?]ro...hA]rp...uh/jZ...h)
a400 5d 72 71 07 00 00 68 52 58 0b 00 00 00 73 6f 6d 65 5f 6d 65 74 68 6f 64 72 72 07 00 00 85 81 72 ]rq...hRX....some_methodrr.....r
a420 73 07 00 00 7d 72 74 07 00 00 28 68 2e 55 00 68 2f 6a 68 07 00 00 75 62 61 68 35 6a 74 01 00 00 s...}rt...(h.U.h/jh...ubah5jt...
a440 75 62 68 52 58 46 00 00 00 2e 20 49 6e 20 61 20 74 65 73 74 20 66 6f 72 20 61 6e 6f 74 68 65 72 ubhRXF.....In.a.test.for.another
a460 20 63 6c 61 73 73 2c 20 79 6f 75 0a 70 72 6f 76 69 64 65 20 61 20 6d 6f 63 6b 20 6f 66 20 74 68 .class,.you.provide.a.mock.of.th
a480 69 73 20 6f 62 6a 65 63 74 20 74 68 61 74 20 72 75 07 00 00 85 81 72 76 07 00 00 7d 72 77 07 00 is.object.that.ru.....rv...}rw..
a4a0 00 28 68 2e 58 46 00 00 00 2e 20 49 6e 20 61 20 74 65 73 74 20 66 6f 72 20 61 6e 6f 74 68 65 72 .(h.XF.....In.a.test.for.another
a4c0 20 63 6c 61 73 73 2c 20 79 6f 75 0a 70 72 6f 76 69 64 65 20 61 20 6d 6f 63 6b 20 6f 66 20 74 68 .class,.you.provide.a.mock.of.th
a4e0 69 73 20 6f 62 6a 65 63 74 20 74 68 61 74 20 72 78 07 00 00 68 2f 6a 5a 07 00 00 75 62 6a a4 03 is.object.that.rx...h/jZ...ubj..
a500 00 00 29 81 72 79 07 00 00 7d 72 7a 07 00 00 28 68 2e 58 06 00 00 00 2a 61 6c 73 6f 2a 72 7b 07 ..).ry...}rz...(h.X....*also*r{.
a520 00 00 68 37 7d 72 7c 07 00 00 28 68 39 5d 72 7d 07 00 00 68 3b 5d 72 7e 07 00 00 68 3d 5d 72 7f ..h7}r|...(h9]r}...h;]r~...h=]r.
a540 07 00 00 68 3f 5d 72 80 07 00 00 68 41 5d 72 81 07 00 00 75 68 2f 6a 5a 07 00 00 68 29 5d 72 82 ...h?]r....hA]r....uh/jZ...h)]r.
a560 07 00 00 68 52 58 04 00 00 00 61 6c 73 6f 72 83 07 00 00 85 81 72 84 07 00 00 7d 72 85 07 00 00 ...hRX....alsor......r....}r....
a580 28 68 2e 55 00 68 2f 6a 79 07 00 00 75 62 61 68 35 6a b2 03 00 00 75 62 68 52 58 0a 00 00 00 20 (h.U.h/jy...ubah5j....ubhRX.....
a5a0 70 72 6f 76 69 64 65 73 20 72 86 07 00 00 85 81 72 87 07 00 00 7d 72 88 07 00 00 28 68 2e 58 0a provides.r......r....}r....(h.X.
a5c0 00 00 00 20 70 72 6f 76 69 64 65 73 20 72 89 07 00 00 68 2f 6a 5a 07 00 00 75 62 6a 66 01 00 00 ....provides.r....h/jZ...ubjf...
a5e0 29 81 72 8a 07 00 00 7d 72 8b 07 00 00 28 68 2e 58 0d 00 00 00 60 73 6f 6d 65 5f 6d 65 74 68 6f ).r....}r....(h.X....`some_metho
a600 64 60 72 8c 07 00 00 68 37 7d 72 8d 07 00 00 28 68 39 5d 72 8e 07 00 00 68 3b 5d 72 8f 07 00 00 d`r....h7}r....(h9]r....h;]r....
a620 68 3d 5d 72 90 07 00 00 68 3f 5d 72 91 07 00 00 68 41 5d 72 92 07 00 00 75 68 2f 6a 5a 07 00 00 h=]r....h?]r....hA]r....uh/jZ...
a640 68 29 5d 72 93 07 00 00 68 52 58 0b 00 00 00 73 6f 6d 65 5f 6d 65 74 68 6f 64 72 94 07 00 00 85 h)]r....hRX....some_methodr.....
a660 81 72 95 07 00 00 7d 72 96 07 00 00 28 68 2e 55 00 68 2f 6a 8a 07 00 00 75 62 61 68 35 6a 74 01 .r....}r....(h.U.h/j....ubah5jt.
a680 00 00 75 62 68 52 58 42 00 00 00 2e 20 49 66 20 6c 61 74 65 72 0a 79 6f 75 20 72 65 66 61 63 74 ..ubhRXB.....If.later.you.refact
a6a0 6f 72 20 74 68 65 20 66 69 72 73 74 20 63 6c 61 73 73 2c 20 73 6f 20 74 68 61 74 20 69 74 20 6e or.the.first.class,.so.that.it.n
a6c0 6f 20 6c 6f 6e 67 65 72 20 68 61 73 20 72 97 07 00 00 85 81 72 98 07 00 00 7d 72 99 07 00 00 28 o.longer.has.r......r....}r....(
a6e0 68 2e 58 42 00 00 00 2e 20 49 66 20 6c 61 74 65 72 0a 79 6f 75 20 72 65 66 61 63 74 6f 72 20 74 h.XB.....If.later.you.refactor.t
a700 68 65 20 66 69 72 73 74 20 63 6c 61 73 73 2c 20 73 6f 20 74 68 61 74 20 69 74 20 6e 6f 20 6c 6f he.first.class,.so.that.it.no.lo
a720 6e 67 65 72 20 68 61 73 20 72 9a 07 00 00 68 2f 6a 5a 07 00 00 75 62 6a 66 01 00 00 29 81 72 9b nger.has.r....h/jZ...ubjf...).r.
a740 07 00 00 7d 72 9c 07 00 00 28 68 2e 58 0d 00 00 00 60 73 6f 6d 65 5f 6d 65 74 68 6f 64 60 72 9d ...}r....(h.X....`some_method`r.
a760 07 00 00 68 37 7d 72 9e 07 00 00 28 68 39 5d 72 9f 07 00 00 68 3b 5d 72 a0 07 00 00 68 3d 5d 72 ...h7}r....(h9]r....h;]r....h=]r
a780 a1 07 00 00 68 3f 5d 72 a2 07 00 00 68 41 5d 72 a3 07 00 00 75 68 2f 6a 5a 07 00 00 68 29 5d 72 ....h?]r....hA]r....uh/jZ...h)]r
a7a0 a4 07 00 00 68 52 58 0b 00 00 00 73 6f 6d 65 5f 6d 65 74 68 6f 64 72 a5 07 00 00 85 81 72 a6 07 ....hRX....some_methodr......r..
a7c0 00 00 7d 72 a7 07 00 00 28 68 2e 55 00 68 2f 6a 9b 07 00 00 75 62 61 68 35 6a 74 01 00 00 75 62 ..}r....(h.U.h/j....ubah5jt...ub
a7e0 68 52 58 4d 00 00 00 20 2d 20 74 68 65 6e 0a 79 6f 75 72 20 74 65 73 74 73 20 77 69 6c 6c 20 63 hRXM....-.then.your.tests.will.c
a800 6f 6e 74 69 6e 75 65 20 74 6f 20 70 61 73 73 20 65 76 65 6e 20 74 68 6f 75 67 68 20 79 6f 75 72 ontinue.to.pass.even.though.your
a820 20 63 6f 64 65 20 69 73 20 6e 6f 77 20 62 72 6f 6b 65 6e 21 72 a8 07 00 00 85 81 72 a9 07 00 00 .code.is.now.broken!r......r....
a840 7d 72 aa 07 00 00 28 68 2e 58 4d 00 00 00 20 2d 20 74 68 65 6e 0a 79 6f 75 72 20 74 65 73 74 73 }r....(h.XM....-.then.your.tests
a860 20 77 69 6c 6c 20 63 6f 6e 74 69 6e 75 65 20 74 6f 20 70 61 73 73 20 65 76 65 6e 20 74 68 6f 75 .will.continue.to.pass.even.thou
a880 67 68 20 79 6f 75 72 20 63 6f 64 65 20 69 73 20 6e 6f 77 20 62 72 6f 6b 65 6e 21 72 ab 07 00 00 gh.your.code.is.now.broken!r....
a8a0 68 2f 6a 5a 07 00 00 75 62 65 75 62 68 c0 29 81 72 ac 07 00 00 7d 72 ad 07 00 00 28 68 2e 58 a0 h/jZ...ubeubh.).r....}r....(h.X.
a8c0 01 00 00 60 4d 6f 63 6b 60 20 61 6c 6c 6f 77 73 20 79 6f 75 20 74 6f 20 70 72 6f 76 69 64 65 20 ...`Mock`.allows.you.to.provide.
a8e0 61 6e 20 6f 62 6a 65 63 74 20 61 73 20 61 20 73 70 65 63 69 66 69 63 61 74 69 6f 6e 20 66 6f 72 an.object.as.a.specification.for
a900 20 74 68 65 20 6d 6f 63 6b 2c 0a 75 73 69 6e 67 20 74 68 65 20 60 73 70 65 63 60 20 6b 65 79 77 .the.mock,.using.the.`spec`.keyw
a920 6f 72 64 20 61 72 67 75 6d 65 6e 74 2e 20 41 63 63 65 73 73 69 6e 67 20 6d 65 74 68 6f 64 73 20 ord.argument..Accessing.methods.
a940 2f 20 61 74 74 72 69 62 75 74 65 73 20 6f 6e 20 74 68 65 0a 6d 6f 63 6b 20 74 68 61 74 20 64 6f /.attributes.on.the.mock.that.do
a960 6e 27 74 20 65 78 69 73 74 20 6f 6e 20 79 6f 75 72 20 73 70 65 63 69 66 69 63 61 74 69 6f 6e 20 n't.exist.on.your.specification.
a980 6f 62 6a 65 63 74 20 77 69 6c 6c 20 69 6d 6d 65 64 69 61 74 65 6c 79 20 72 61 69 73 65 20 61 6e object.will.immediately.raise.an
a9a0 0a 61 74 74 72 69 62 75 74 65 20 65 72 72 6f 72 2e 20 49 66 20 79 6f 75 20 63 68 61 6e 67 65 20 .attribute.error..If.you.change.
a9c0 74 68 65 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 20 6f 66 20 79 6f 75 72 20 73 70 65 63 69 the.implementation.of.your.speci
a9e0 66 69 63 61 74 69 6f 6e 2c 20 74 68 65 6e 0a 74 65 73 74 73 20 74 68 61 74 20 75 73 65 20 74 68 fication,.then.tests.that.use.th
aa00 61 74 20 63 6c 61 73 73 20 77 69 6c 6c 20 73 74 61 72 74 20 66 61 69 6c 69 6e 67 20 69 6d 6d 65 at.class.will.start.failing.imme
aa20 64 69 61 74 65 6c 79 20 77 69 74 68 6f 75 74 20 79 6f 75 20 68 61 76 69 6e 67 20 74 6f 0a 69 6e diately.without.you.having.to.in
aa40 73 74 61 6e 74 69 61 74 65 20 74 68 65 20 63 6c 61 73 73 20 69 6e 20 74 68 6f 73 65 20 74 65 73 stantiate.the.class.in.those.tes
aa60 74 73 2e 72 ae 07 00 00 68 2f 6a 44 07 00 00 68 30 68 33 68 35 68 c4 68 37 7d 72 af 07 00 00 28 ts.r....h/jD...h0h3h5h.h7}r....(
aa80 68 39 5d 72 b0 07 00 00 68 3b 5d 72 b1 07 00 00 68 3d 5d 72 b2 07 00 00 68 3f 5d 72 b3 07 00 00 h9]r....h;]r....h=]r....h?]r....
aaa0 68 41 5d 72 b4 07 00 00 75 68 43 4d 37 01 68 44 68 02 68 29 5d 72 b5 07 00 00 28 6a 66 01 00 00 hA]r....uhCM7.hDh.h)]r....(jf...
aac0 29 81 72 b6 07 00 00 7d 72 b7 07 00 00 28 68 2e 58 06 00 00 00 60 4d 6f 63 6b 60 72 b8 07 00 00 ).r....}r....(h.X....`Mock`r....
aae0 68 37 7d 72 b9 07 00 00 28 68 39 5d 72 ba 07 00 00 68 3b 5d 72 bb 07 00 00 68 3d 5d 72 bc 07 00 h7}r....(h9]r....h;]r....h=]r...
ab00 00 68 3f 5d 72 bd 07 00 00 68 41 5d 72 be 07 00 00 75 68 2f 6a ac 07 00 00 68 29 5d 72 bf 07 00 .h?]r....hA]r....uh/j....h)]r...
ab20 00 68 52 58 04 00 00 00 4d 6f 63 6b 72 c0 07 00 00 85 81 72 c1 07 00 00 7d 72 c2 07 00 00 28 68 .hRX....Mockr......r....}r....(h
ab40 2e 55 00 68 2f 6a b6 07 00 00 75 62 61 68 35 6a 74 01 00 00 75 62 68 52 58 4c 00 00 00 20 61 6c .U.h/j....ubah5jt...ubhRXL....al
ab60 6c 6f 77 73 20 79 6f 75 20 74 6f 20 70 72 6f 76 69 64 65 20 61 6e 20 6f 62 6a 65 63 74 20 61 73 lows.you.to.provide.an.object.as
ab80 20 61 20 73 70 65 63 69 66 69 63 61 74 69 6f 6e 20 66 6f 72 20 74 68 65 20 6d 6f 63 6b 2c 0a 75 .a.specification.for.the.mock,.u
aba0 73 69 6e 67 20 74 68 65 20 72 c3 07 00 00 85 81 72 c4 07 00 00 7d 72 c5 07 00 00 28 68 2e 58 4c sing.the.r......r....}r....(h.XL
abc0 00 00 00 20 61 6c 6c 6f 77 73 20 79 6f 75 20 74 6f 20 70 72 6f 76 69 64 65 20 61 6e 20 6f 62 6a ....allows.you.to.provide.an.obj
abe0 65 63 74 20 61 73 20 61 20 73 70 65 63 69 66 69 63 61 74 69 6f 6e 20 66 6f 72 20 74 68 65 20 6d ect.as.a.specification.for.the.m
ac00 6f 63 6b 2c 0a 75 73 69 6e 67 20 74 68 65 20 72 c6 07 00 00 68 2f 6a ac 07 00 00 75 62 6a 66 01 ock,.using.the.r....h/j....ubjf.
ac20 00 00 29 81 72 c7 07 00 00 7d 72 c8 07 00 00 28 68 2e 58 06 00 00 00 60 73 70 65 63 60 72 c9 07 ..).r....}r....(h.X....`spec`r..
ac40 00 00 68 37 7d 72 ca 07 00 00 28 68 39 5d 72 cb 07 00 00 68 3b 5d 72 cc 07 00 00 68 3d 5d 72 cd ..h7}r....(h9]r....h;]r....h=]r.
ac60 07 00 00 68 3f 5d 72 ce 07 00 00 68 41 5d 72 cf 07 00 00 75 68 2f 6a ac 07 00 00 68 29 5d 72 d0 ...h?]r....hA]r....uh/j....h)]r.
ac80 07 00 00 68 52 58 04 00 00 00 73 70 65 63 72 d1 07 00 00 85 81 72 d2 07 00 00 7d 72 d3 07 00 00 ...hRX....specr......r....}r....
aca0 28 68 2e 55 00 68 2f 6a c7 07 00 00 75 62 61 68 35 6a 74 01 00 00 75 62 68 52 58 48 01 00 00 20 (h.U.h/j....ubah5jt...ubhRXH....
acc0 6b 65 79 77 6f 72 64 20 61 72 67 75 6d 65 6e 74 2e 20 41 63 63 65 73 73 69 6e 67 20 6d 65 74 68 keyword.argument..Accessing.meth
ace0 6f 64 73 20 2f 20 61 74 74 72 69 62 75 74 65 73 20 6f 6e 20 74 68 65 0a 6d 6f 63 6b 20 74 68 61 ods./.attributes.on.the.mock.tha
ad00 74 20 64 6f 6e 27 74 20 65 78 69 73 74 20 6f 6e 20 79 6f 75 72 20 73 70 65 63 69 66 69 63 61 74 t.don't.exist.on.your.specificat
ad20 69 6f 6e 20 6f 62 6a 65 63 74 20 77 69 6c 6c 20 69 6d 6d 65 64 69 61 74 65 6c 79 20 72 61 69 73 ion.object.will.immediately.rais
ad40 65 20 61 6e 0a 61 74 74 72 69 62 75 74 65 20 65 72 72 6f 72 2e 20 49 66 20 79 6f 75 20 63 68 61 e.an.attribute.error..If.you.cha
ad60 6e 67 65 20 74 68 65 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 20 6f 66 20 79 6f 75 72 20 73 nge.the.implementation.of.your.s
ad80 70 65 63 69 66 69 63 61 74 69 6f 6e 2c 20 74 68 65 6e 0a 74 65 73 74 73 20 74 68 61 74 20 75 73 pecification,.then.tests.that.us
ada0 65 20 74 68 61 74 20 63 6c 61 73 73 20 77 69 6c 6c 20 73 74 61 72 74 20 66 61 69 6c 69 6e 67 20 e.that.class.will.start.failing.
adc0 69 6d 6d 65 64 69 61 74 65 6c 79 20 77 69 74 68 6f 75 74 20 79 6f 75 20 68 61 76 69 6e 67 20 74 immediately.without.you.having.t
ade0 6f 0a 69 6e 73 74 61 6e 74 69 61 74 65 20 74 68 65 20 63 6c 61 73 73 20 69 6e 20 74 68 6f 73 65 o.instantiate.the.class.in.those
ae00 20 74 65 73 74 73 2e 72 d4 07 00 00 85 81 72 d5 07 00 00 7d 72 d6 07 00 00 28 68 2e 58 48 01 00 .tests.r......r....}r....(h.XH..
ae20 00 20 6b 65 79 77 6f 72 64 20 61 72 67 75 6d 65 6e 74 2e 20 41 63 63 65 73 73 69 6e 67 20 6d 65 ..keyword.argument..Accessing.me
ae40 74 68 6f 64 73 20 2f 20 61 74 74 72 69 62 75 74 65 73 20 6f 6e 20 74 68 65 0a 6d 6f 63 6b 20 74 thods./.attributes.on.the.mock.t
ae60 68 61 74 20 64 6f 6e 27 74 20 65 78 69 73 74 20 6f 6e 20 79 6f 75 72 20 73 70 65 63 69 66 69 63 hat.don't.exist.on.your.specific
ae80 61 74 69 6f 6e 20 6f 62 6a 65 63 74 20 77 69 6c 6c 20 69 6d 6d 65 64 69 61 74 65 6c 79 20 72 61 ation.object.will.immediately.ra
aea0 69 73 65 20 61 6e 0a 61 74 74 72 69 62 75 74 65 20 65 72 72 6f 72 2e 20 49 66 20 79 6f 75 20 63 ise.an.attribute.error..If.you.c
aec0 68 61 6e 67 65 20 74 68 65 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 20 6f 66 20 79 6f 75 72 hange.the.implementation.of.your
aee0 20 73 70 65 63 69 66 69 63 61 74 69 6f 6e 2c 20 74 68 65 6e 0a 74 65 73 74 73 20 74 68 61 74 20 .specification,.then.tests.that.
af00 75 73 65 20 74 68 61 74 20 63 6c 61 73 73 20 77 69 6c 6c 20 73 74 61 72 74 20 66 61 69 6c 69 6e use.that.class.will.start.failin
af20 67 20 69 6d 6d 65 64 69 61 74 65 6c 79 20 77 69 74 68 6f 75 74 20 79 6f 75 20 68 61 76 69 6e 67 g.immediately.without.you.having
af40 20 74 6f 0a 69 6e 73 74 61 6e 74 69 61 74 65 20 74 68 65 20 63 6c 61 73 73 20 69 6e 20 74 68 6f .to.instantiate.the.class.in.tho
af60 73 65 20 74 65 73 74 73 2e 72 d7 07 00 00 68 2f 6a ac 07 00 00 75 62 65 75 62 6a 44 01 00 00 29 se.tests.r....h/j....ubeubjD...)
af80 81 72 d8 07 00 00 7d 72 d9 07 00 00 28 68 2e 58 94 00 00 00 3e 3e 3e 20 6d 6f 63 6b 20 3d 20 4d .r....}r....(h.X....>>>.mock.=.M
afa0 6f 63 6b 28 73 70 65 63 3d 53 6f 6d 65 43 6c 61 73 73 29 0a 3e 3e 3e 20 6d 6f 63 6b 2e 6f 6c 64 ock(spec=SomeClass).>>>.mock.old
afc0 5f 6d 65 74 68 6f 64 28 29 0a 54 72 61 63 65 62 61 63 6b 20 28 6d 6f 73 74 20 72 65 63 65 6e 74 _method().Traceback.(most.recent
afe0 20 63 61 6c 6c 20 6c 61 73 74 29 3a 0a 20 20 20 2e 2e 2e 0a 41 74 74 72 69 62 75 74 65 45 72 72 .call.last):........AttributeErr
b000 6f 72 3a 20 6f 62 6a 65 63 74 20 68 61 73 20 6e 6f 20 61 74 74 72 69 62 75 74 65 20 27 6f 6c 64 or:.object.has.no.attribute.'old
b020 5f 6d 65 74 68 6f 64 27 72 da 07 00 00 68 2f 6a 44 07 00 00 68 30 68 33 68 35 6a 48 01 00 00 68 _method'r....h/jD...h0h3h5jH...h
b040 37 7d 72 db 07 00 00 28 55 0c 74 65 73 74 6e 6f 64 65 74 79 70 65 72 dc 07 00 00 58 07 00 00 00 7}r....(U.testnodetyper....X....
b060 64 6f 63 74 65 73 74 72 dd 07 00 00 68 84 68 85 68 3f 5d 72 de 07 00 00 68 3d 5d 72 df 07 00 00 doctestr....h.h.h?]r....h=]r....
b080 68 39 5d 72 e0 07 00 00 68 3b 5d 72 e1 07 00 00 68 41 5d 72 e2 07 00 00 55 06 67 72 6f 75 70 73 h9]r....h;]r....hA]r....U.groups
b0a0 72 e3 07 00 00 5d 72 e4 07 00 00 68 8d 61 68 8e 7d 72 e5 07 00 00 75 68 43 4d 3e 01 68 44 68 02 r....]r....h.ah.}r....uhCM>.hDh.
b0c0 68 29 5d 72 e6 07 00 00 68 52 58 94 00 00 00 3e 3e 3e 20 6d 6f 63 6b 20 3d 20 4d 6f 63 6b 28 73 h)]r....hRX....>>>.mock.=.Mock(s
b0e0 70 65 63 3d 53 6f 6d 65 43 6c 61 73 73 29 0a 3e 3e 3e 20 6d 6f 63 6b 2e 6f 6c 64 5f 6d 65 74 68 pec=SomeClass).>>>.mock.old_meth
b100 6f 64 28 29 0a 54 72 61 63 65 62 61 63 6b 20 28 6d 6f 73 74 20 72 65 63 65 6e 74 20 63 61 6c 6c od().Traceback.(most.recent.call
b120 20 6c 61 73 74 29 3a 0a 20 20 20 2e 2e 2e 0a 41 74 74 72 69 62 75 74 65 45 72 72 6f 72 3a 20 6f .last):........AttributeError:.o
b140 62 6a 65 63 74 20 68 61 73 20 6e 6f 20 61 74 74 72 69 62 75 74 65 20 27 6f 6c 64 5f 6d 65 74 68 bject.has.no.attribute.'old_meth
b160 6f 64 27 72 e7 07 00 00 85 81 72 e8 07 00 00 7d 72 e9 07 00 00 28 68 2e 55 00 68 2f 6a d8 07 00 od'r......r....}r....(h.U.h/j...
b180 00 75 62 61 75 62 68 c0 29 81 72 ea 07 00 00 7d 72 eb 07 00 00 28 68 2e 58 ac 00 00 00 49 66 20 .ubaubh.).r....}r....(h.X....If.
b1a0 79 6f 75 20 77 61 6e 74 20 61 20 73 74 72 6f 6e 67 65 72 20 66 6f 72 6d 20 6f 66 20 73 70 65 63 you.want.a.stronger.form.of.spec
b1c0 69 66 69 63 61 74 69 6f 6e 20 74 68 61 74 20 70 72 65 76 65 6e 74 73 20 74 68 65 20 73 65 74 74 ification.that.prevents.the.sett
b1e0 69 6e 67 0a 6f 66 20 61 72 62 69 74 72 61 72 79 20 61 74 74 72 69 62 75 74 65 73 20 61 73 20 77 ing.of.arbitrary.attributes.as.w
b200 65 6c 6c 20 61 73 20 74 68 65 20 67 65 74 74 69 6e 67 20 6f 66 20 74 68 65 6d 20 74 68 65 6e 20 ell.as.the.getting.of.them.then.
b220 79 6f 75 20 63 61 6e 20 75 73 65 0a 60 73 70 65 63 5f 73 65 74 60 20 69 6e 73 74 65 61 64 20 6f you.can.use.`spec_set`.instead.o
b240 66 20 60 73 70 65 63 60 2e 72 ec 07 00 00 68 2f 6a 44 07 00 00 68 30 68 33 68 35 68 c4 68 37 7d f.`spec`.r....h/jD...h0h3h5h.h7}
b260 72 ed 07 00 00 28 68 39 5d 72 ee 07 00 00 68 3b 5d 72 ef 07 00 00 68 3d 5d 72 f0 07 00 00 68 3f r....(h9]r....h;]r....h=]r....h?
b280 5d 72 f1 07 00 00 68 41 5d 72 f2 07 00 00 75 68 43 4d 46 01 68 44 68 02 68 29 5d 72 f3 07 00 00 ]r....hA]r....uhCMF.hDh.h)]r....
b2a0 28 68 52 58 8f 00 00 00 49 66 20 79 6f 75 20 77 61 6e 74 20 61 20 73 74 72 6f 6e 67 65 72 20 66 (hRX....If.you.want.a.stronger.f
b2c0 6f 72 6d 20 6f 66 20 73 70 65 63 69 66 69 63 61 74 69 6f 6e 20 74 68 61 74 20 70 72 65 76 65 6e orm.of.specification.that.preven
b2e0 74 73 20 74 68 65 20 73 65 74 74 69 6e 67 0a 6f 66 20 61 72 62 69 74 72 61 72 79 20 61 74 74 72 ts.the.setting.of.arbitrary.attr
b300 69 62 75 74 65 73 20 61 73 20 77 65 6c 6c 20 61 73 20 74 68 65 20 67 65 74 74 69 6e 67 20 6f 66 ibutes.as.well.as.the.getting.of
b320 20 74 68 65 6d 20 74 68 65 6e 20 79 6f 75 20 63 61 6e 20 75 73 65 0a 72 f4 07 00 00 85 81 72 f5 .them.then.you.can.use.r......r.
b340 07 00 00 7d 72 f6 07 00 00 28 68 2e 58 8f 00 00 00 49 66 20 79 6f 75 20 77 61 6e 74 20 61 20 73 ...}r....(h.X....If.you.want.a.s
b360 74 72 6f 6e 67 65 72 20 66 6f 72 6d 20 6f 66 20 73 70 65 63 69 66 69 63 61 74 69 6f 6e 20 74 68 tronger.form.of.specification.th
b380 61 74 20 70 72 65 76 65 6e 74 73 20 74 68 65 20 73 65 74 74 69 6e 67 0a 6f 66 20 61 72 62 69 74 at.prevents.the.setting.of.arbit
b3a0 72 61 72 79 20 61 74 74 72 69 62 75 74 65 73 20 61 73 20 77 65 6c 6c 20 61 73 20 74 68 65 20 67 rary.attributes.as.well.as.the.g
b3c0 65 74 74 69 6e 67 20 6f 66 20 74 68 65 6d 20 74 68 65 6e 20 79 6f 75 20 63 61 6e 20 75 73 65 0a etting.of.them.then.you.can.use.
b3e0 72 f7 07 00 00 68 2f 6a ea 07 00 00 75 62 6a 66 01 00 00 29 81 72 f8 07 00 00 7d 72 f9 07 00 00 r....h/j....ubjf...).r....}r....
b400 28 68 2e 58 0a 00 00 00 60 73 70 65 63 5f 73 65 74 60 72 fa 07 00 00 68 37 7d 72 fb 07 00 00 28 (h.X....`spec_set`r....h7}r....(
b420 68 39 5d 72 fc 07 00 00 68 3b 5d 72 fd 07 00 00 68 3d 5d 72 fe 07 00 00 68 3f 5d 72 ff 07 00 00 h9]r....h;]r....h=]r....h?]r....
b440 68 41 5d 72 00 08 00 00 75 68 2f 6a ea 07 00 00 68 29 5d 72 01 08 00 00 68 52 58 08 00 00 00 73 hA]r....uh/j....h)]r....hRX....s
b460 70 65 63 5f 73 65 74 72 02 08 00 00 85 81 72 03 08 00 00 7d 72 04 08 00 00 28 68 2e 55 00 68 2f pec_setr......r....}r....(h.U.h/
b480 6a f8 07 00 00 75 62 61 68 35 6a 74 01 00 00 75 62 68 52 58 0c 00 00 00 20 69 6e 73 74 65 61 64 j....ubah5jt...ubhRX.....instead
b4a0 20 6f 66 20 72 05 08 00 00 85 81 72 06 08 00 00 7d 72 07 08 00 00 28 68 2e 58 0c 00 00 00 20 69 .of.r......r....}r....(h.X.....i
b4c0 6e 73 74 65 61 64 20 6f 66 20 72 08 08 00 00 68 2f 6a ea 07 00 00 75 62 6a 66 01 00 00 29 81 72 nstead.of.r....h/j....ubjf...).r
b4e0 09 08 00 00 7d 72 0a 08 00 00 28 68 2e 58 06 00 00 00 60 73 70 65 63 60 72 0b 08 00 00 68 37 7d ....}r....(h.X....`spec`r....h7}
b500 72 0c 08 00 00 28 68 39 5d 72 0d 08 00 00 68 3b 5d 72 0e 08 00 00 68 3d 5d 72 0f 08 00 00 68 3f r....(h9]r....h;]r....h=]r....h?
b520 5d 72 10 08 00 00 68 41 5d 72 11 08 00 00 75 68 2f 6a ea 07 00 00 68 29 5d 72 12 08 00 00 68 52 ]r....hA]r....uh/j....h)]r....hR
b540 58 04 00 00 00 73 70 65 63 72 13 08 00 00 85 81 72 14 08 00 00 7d 72 15 08 00 00 28 68 2e 55 00 X....specr......r....}r....(h.U.
b560 68 2f 6a 09 08 00 00 75 62 61 68 35 6a 74 01 00 00 75 62 68 52 58 01 00 00 00 2e 85 81 72 16 08 h/j....ubah5jt...ubhRX.......r..
b580 00 00 7d 72 17 08 00 00 28 68 2e 58 01 00 00 00 2e 68 2f 6a ea 07 00 00 75 62 65 75 62 65 75 62 ..}r....(h.X.....h/j....ubeubeub
b5a0 65 75 62 68 2b 29 81 72 18 08 00 00 7d 72 19 08 00 00 28 68 2e 55 00 68 2f 68 2c 68 30 68 33 68 eubh+).r....}r....(h.U.h/h,h0h3h
b5c0 35 68 36 68 37 7d 72 1a 08 00 00 28 68 39 5d 72 1b 08 00 00 68 3b 5d 72 1c 08 00 00 68 3d 5d 72 5h6h7}r....(h9]r....h;]r....h=]r
b5e0 1d 08 00 00 68 3f 5d 72 1e 08 00 00 68 21 61 68 41 5d 72 1f 08 00 00 68 0b 61 75 68 43 4d 4d 01 ....h?]r....h!ahA]r....h.auhCMM.
b600 68 44 68 02 68 29 5d 72 20 08 00 00 28 68 46 29 81 72 21 08 00 00 7d 72 22 08 00 00 28 68 2e 58 hDh.h)]r....(hF).r!...}r"...(h.X
b620 10 00 00 00 50 61 74 63 68 20 44 65 63 6f 72 61 74 6f 72 73 72 23 08 00 00 68 2f 6a 18 08 00 00 ....Patch.Decoratorsr#...h/j....
b640 68 30 68 33 68 35 68 4a 68 37 7d 72 24 08 00 00 28 68 39 5d 72 25 08 00 00 68 3b 5d 72 26 08 00 h0h3h5hJh7}r$...(h9]r%...h;]r&..
b660 00 68 3d 5d 72 27 08 00 00 68 3f 5d 72 28 08 00 00 68 41 5d 72 29 08 00 00 75 68 43 4d 4d 01 68 .h=]r'...h?]r(...hA]r)...uhCMM.h
b680 44 68 02 68 29 5d 72 2a 08 00 00 68 52 58 10 00 00 00 50 61 74 63 68 20 44 65 63 6f 72 61 74 6f Dh.h)]r*...hRX....Patch.Decorato
b6a0 72 73 72 2b 08 00 00 85 81 72 2c 08 00 00 7d 72 2d 08 00 00 28 68 2e 6a 23 08 00 00 68 2f 6a 21 rsr+.....r,...}r-...(h.j#...h/j!
b6c0 08 00 00 75 62 61 75 62 6a 79 01 00 00 29 81 72 2e 08 00 00 7d 72 2f 08 00 00 28 68 2e 58 be 00 ...ubaubjy...).r....}r/...(h.X..
b6e0 00 00 57 69 74 68 20 60 70 61 74 63 68 60 20 69 74 20 6d 61 74 74 65 72 73 20 74 68 61 74 20 79 ..With.`patch`.it.matters.that.y
b700 6f 75 20 70 61 74 63 68 20 6f 62 6a 65 63 74 73 20 69 6e 20 74 68 65 20 6e 61 6d 65 73 70 61 63 ou.patch.objects.in.the.namespac
b720 65 20 77 68 65 72 65 20 74 68 65 79 0a 61 72 65 20 6c 6f 6f 6b 65 64 20 75 70 2e 20 54 68 69 73 e.where.they.are.looked.up..This
b740 20 69 73 20 6e 6f 72 6d 61 6c 6c 79 20 73 74 72 61 69 67 68 74 66 6f 72 77 61 72 64 2c 20 62 75 .is.normally.straightforward,.bu
b760 74 20 66 6f 72 20 61 20 71 75 69 63 6b 20 67 75 69 64 65 0a 72 65 61 64 20 3a 72 65 66 3a 60 77 t.for.a.quick.guide.read.:ref:`w
b780 68 65 72 65 20 74 6f 20 70 61 74 63 68 20 3c 77 68 65 72 65 2d 74 6f 2d 70 61 74 63 68 3e 60 2e here.to.patch.<where-to-patch>`.
b7a0 72 30 08 00 00 68 2f 6a 18 08 00 00 68 30 68 33 68 35 6a 7d 01 00 00 68 37 7d 72 31 08 00 00 28 r0...h/j....h0h3h5j}...h7}r1...(
b7c0 68 39 5d 72 32 08 00 00 68 3b 5d 72 33 08 00 00 68 3d 5d 72 34 08 00 00 68 3f 5d 72 35 08 00 00 h9]r2...h;]r3...h=]r4...h?]r5...
b7e0 68 41 5d 72 36 08 00 00 75 68 43 4e 68 44 68 02 68 29 5d 72 37 08 00 00 68 c0 29 81 72 38 08 00 hA]r6...uhCNhDh.h)]r7...h.).r8..
b800 00 7d 72 39 08 00 00 28 68 2e 58 be 00 00 00 57 69 74 68 20 60 70 61 74 63 68 60 20 69 74 20 6d .}r9...(h.X....With.`patch`.it.m
b820 61 74 74 65 72 73 20 74 68 61 74 20 79 6f 75 20 70 61 74 63 68 20 6f 62 6a 65 63 74 73 20 69 6e atters.that.you.patch.objects.in
b840 20 74 68 65 20 6e 61 6d 65 73 70 61 63 65 20 77 68 65 72 65 20 74 68 65 79 0a 61 72 65 20 6c 6f .the.namespace.where.they.are.lo
b860 6f 6b 65 64 20 75 70 2e 20 54 68 69 73 20 69 73 20 6e 6f 72 6d 61 6c 6c 79 20 73 74 72 61 69 67 oked.up..This.is.normally.straig
b880 68 74 66 6f 72 77 61 72 64 2c 20 62 75 74 20 66 6f 72 20 61 20 71 75 69 63 6b 20 67 75 69 64 65 htforward,.but.for.a.quick.guide
b8a0 0a 72 65 61 64 20 3a 72 65 66 3a 60 77 68 65 72 65 20 74 6f 20 70 61 74 63 68 20 3c 77 68 65 72 .read.:ref:`where.to.patch.<wher
b8c0 65 2d 74 6f 2d 70 61 74 63 68 3e 60 2e 72 3a 08 00 00 68 2f 6a 2e 08 00 00 68 30 68 33 68 35 68 e-to-patch>`.r:...h/j....h0h3h5h
b8e0 c4 68 37 7d 72 3b 08 00 00 28 68 39 5d 72 3c 08 00 00 68 3b 5d 72 3d 08 00 00 68 3d 5d 72 3e 08 .h7}r;...(h9]r<...h;]r=...h=]r>.
b900 00 00 68 3f 5d 72 3f 08 00 00 68 41 5d 72 40 08 00 00 75 68 43 4d 51 01 68 29 5d 72 41 08 00 00 ..h?]r?...hA]r@...uhCMQ.h)]rA...
b920 28 68 52 58 05 00 00 00 57 69 74 68 20 72 42 08 00 00 85 81 72 43 08 00 00 7d 72 44 08 00 00 28 (hRX....With.rB.....rC...}rD...(
b940 68 2e 58 05 00 00 00 57 69 74 68 20 72 45 08 00 00 68 2f 6a 38 08 00 00 75 62 6a 66 01 00 00 29 h.X....With.rE...h/j8...ubjf...)
b960 81 72 46 08 00 00 7d 72 47 08 00 00 28 68 2e 58 07 00 00 00 60 70 61 74 63 68 60 72 48 08 00 00 .rF...}rG...(h.X....`patch`rH...
b980 68 37 7d 72 49 08 00 00 28 68 39 5d 72 4a 08 00 00 68 3b 5d 72 4b 08 00 00 68 3d 5d 72 4c 08 00 h7}rI...(h9]rJ...h;]rK...h=]rL..
b9a0 00 68 3f 5d 72 4d 08 00 00 68 41 5d 72 4e 08 00 00 75 68 2f 6a 38 08 00 00 68 29 5d 72 4f 08 00 .h?]rM...hA]rN...uh/j8...h)]rO..
b9c0 00 68 52 58 05 00 00 00 70 61 74 63 68 72 50 08 00 00 85 81 72 51 08 00 00 7d 72 52 08 00 00 28 .hRX....patchrP.....rQ...}rR...(
b9e0 68 2e 55 00 68 2f 6a 46 08 00 00 75 62 61 68 35 6a 74 01 00 00 75 62 68 52 58 8b 00 00 00 20 69 h.U.h/jF...ubah5jt...ubhRX.....i
ba00 74 20 6d 61 74 74 65 72 73 20 74 68 61 74 20 79 6f 75 20 70 61 74 63 68 20 6f 62 6a 65 63 74 73 t.matters.that.you.patch.objects
ba20 20 69 6e 20 74 68 65 20 6e 61 6d 65 73 70 61 63 65 20 77 68 65 72 65 20 74 68 65 79 0a 61 72 65 .in.the.namespace.where.they.are
ba40 20 6c 6f 6f 6b 65 64 20 75 70 2e 20 54 68 69 73 20 69 73 20 6e 6f 72 6d 61 6c 6c 79 20 73 74 72 .looked.up..This.is.normally.str
ba60 61 69 67 68 74 66 6f 72 77 61 72 64 2c 20 62 75 74 20 66 6f 72 20 61 20 71 75 69 63 6b 20 67 75 aightforward,.but.for.a.quick.gu
ba80 69 64 65 0a 72 65 61 64 20 72 53 08 00 00 85 81 72 54 08 00 00 7d 72 55 08 00 00 28 68 2e 58 8b ide.read.rS.....rT...}rU...(h.X.
baa0 00 00 00 20 69 74 20 6d 61 74 74 65 72 73 20 74 68 61 74 20 79 6f 75 20 70 61 74 63 68 20 6f 62 ....it.matters.that.you.patch.ob
bac0 6a 65 63 74 73 20 69 6e 20 74 68 65 20 6e 61 6d 65 73 70 61 63 65 20 77 68 65 72 65 20 74 68 65 jects.in.the.namespace.where.the
bae0 79 0a 61 72 65 20 6c 6f 6f 6b 65 64 20 75 70 2e 20 54 68 69 73 20 69 73 20 6e 6f 72 6d 61 6c 6c y.are.looked.up..This.is.normall
bb00 79 20 73 74 72 61 69 67 68 74 66 6f 72 77 61 72 64 2c 20 62 75 74 20 66 6f 72 20 61 20 71 75 69 y.straightforward,.but.for.a.qui
bb20 63 6b 20 67 75 69 64 65 0a 72 65 61 64 20 72 56 08 00 00 68 2f 6a 38 08 00 00 75 62 68 d0 29 81 ck.guide.read.rV...h/j8...ubh.).
bb40 72 57 08 00 00 7d 72 58 08 00 00 28 68 2e 58 26 00 00 00 3a 72 65 66 3a 60 77 68 65 72 65 20 74 rW...}rX...(h.X&...:ref:`where.t
bb60 6f 20 70 61 74 63 68 20 3c 77 68 65 72 65 2d 74 6f 2d 70 61 74 63 68 3e 60 72 59 08 00 00 68 2f o.patch.<where-to-patch>`rY...h/
bb80 6a 38 08 00 00 68 30 68 33 68 35 68 d4 68 37 7d 72 5a 08 00 00 28 55 07 72 65 66 74 79 70 65 72 j8...h0h3h5h.h7}rZ...(U.reftyper
bba0 5b 08 00 00 58 03 00 00 00 72 65 66 72 5c 08 00 00 68 d8 88 68 d9 58 0e 00 00 00 77 68 65 72 65 [...X....refr\...h..h.X....where
bbc0 2d 74 6f 2d 70 61 74 63 68 72 5d 08 00 00 55 09 72 65 66 64 6f 6d 61 69 6e 72 5e 08 00 00 58 03 -to-patchr]...U.refdomainr^...X.
bbe0 00 00 00 73 74 64 72 5f 08 00 00 68 3f 5d 72 60 08 00 00 68 3d 5d 72 61 08 00 00 55 0b 72 65 66 ...stdr_...h?]r`...h=]ra...U.ref
bc00 65 78 70 6c 69 63 69 74 72 62 08 00 00 88 68 39 5d 72 63 08 00 00 68 3b 5d 72 64 08 00 00 68 41 explicitrb....h9]rc...h;]rd...hA
bc20 5d 72 65 08 00 00 68 e3 68 e4 75 68 43 4d 51 01 68 29 5d 72 66 08 00 00 6a a4 03 00 00 29 81 72 ]re...h.h.uhCMQ.h)]rf...j....).r
bc40 67 08 00 00 7d 72 68 08 00 00 28 68 2e 6a 59 08 00 00 68 37 7d 72 69 08 00 00 28 68 39 5d 72 6a g...}rh...(h.jY...h7}ri...(h9]rj
bc60 08 00 00 68 3b 5d 72 6b 08 00 00 28 68 ee 6a 5f 08 00 00 58 07 00 00 00 73 74 64 2d 72 65 66 72 ...h;]rk...(h.j_...X....std-refr
bc80 6c 08 00 00 65 68 3d 5d 72 6d 08 00 00 68 3f 5d 72 6e 08 00 00 68 41 5d 72 6f 08 00 00 75 68 2f l...eh=]rm...h?]rn...hA]ro...uh/
bca0 6a 57 08 00 00 68 29 5d 72 70 08 00 00 68 52 58 0e 00 00 00 77 68 65 72 65 20 74 6f 20 70 61 74 jW...h)]rp...hRX....where.to.pat
bcc0 63 68 72 71 08 00 00 85 81 72 72 08 00 00 7d 72 73 08 00 00 28 68 2e 55 00 68 2f 6a 67 08 00 00 chrq.....rr...}rs...(h.U.h/jg...
bce0 75 62 61 68 35 6a b2 03 00 00 75 62 61 75 62 68 52 58 01 00 00 00 2e 85 81 72 74 08 00 00 7d 72 ubah5j....ubaubhRX.......rt...}r
bd00 75 08 00 00 28 68 2e 58 01 00 00 00 2e 68 2f 6a 38 08 00 00 75 62 65 75 62 61 75 62 68 c0 29 81 u...(h.X.....h/j8...ubeubaubh.).
bd20 72 76 08 00 00 7d 72 77 08 00 00 28 68 2e 58 5b 01 00 00 41 20 63 6f 6d 6d 6f 6e 20 6e 65 65 64 rv...}rw...(h.X[...A.common.need
bd40 20 69 6e 20 74 65 73 74 73 20 69 73 20 74 6f 20 70 61 74 63 68 20 61 20 63 6c 61 73 73 20 61 74 .in.tests.is.to.patch.a.class.at
bd60 74 72 69 62 75 74 65 20 6f 72 20 61 20 6d 6f 64 75 6c 65 20 61 74 74 72 69 62 75 74 65 2c 0a 66 tribute.or.a.module.attribute,.f
bd80 6f 72 20 65 78 61 6d 70 6c 65 20 70 61 74 63 68 69 6e 67 20 61 20 62 75 69 6c 74 69 6e 20 6f 72 or.example.patching.a.builtin.or
bda0 20 70 61 74 63 68 69 6e 67 20 61 20 63 6c 61 73 73 20 69 6e 20 61 20 6d 6f 64 75 6c 65 20 74 6f .patching.a.class.in.a.module.to
bdc0 20 74 65 73 74 20 74 68 61 74 20 69 74 0a 69 73 20 69 6e 73 74 61 6e 74 69 61 74 65 64 2e 20 4d .test.that.it.is.instantiated..M
bde0 6f 64 75 6c 65 73 20 61 6e 64 20 63 6c 61 73 73 65 73 20 61 72 65 20 65 66 66 65 63 74 69 76 65 odules.and.classes.are.effective
be00 6c 79 20 67 6c 6f 62 61 6c 2c 20 73 6f 20 70 61 74 63 68 69 6e 67 20 6f 6e 0a 74 68 65 6d 20 68 ly.global,.so.patching.on.them.h
be20 61 73 20 74 6f 20 62 65 20 75 6e 64 6f 6e 65 20 61 66 74 65 72 20 74 68 65 20 74 65 73 74 20 6f as.to.be.undone.after.the.test.o
be40 72 20 74 68 65 20 70 61 74 63 68 20 77 69 6c 6c 20 70 65 72 73 69 73 74 20 69 6e 74 6f 20 6f 74 r.the.patch.will.persist.into.ot
be60 68 65 72 0a 74 65 73 74 73 20 61 6e 64 20 63 61 75 73 65 20 68 61 72 64 20 74 6f 20 64 69 61 67 her.tests.and.cause.hard.to.diag
be80 6e 6f 73 65 20 70 72 6f 62 6c 65 6d 73 2e 72 78 08 00 00 68 2f 6a 18 08 00 00 68 30 68 33 68 35 nose.problems.rx...h/j....h0h3h5
bea0 68 c4 68 37 7d 72 79 08 00 00 28 68 39 5d 72 7a 08 00 00 68 3b 5d 72 7b 08 00 00 68 3d 5d 72 7c h.h7}ry...(h9]rz...h;]r{...h=]r|
bec0 08 00 00 68 3f 5d 72 7d 08 00 00 68 41 5d 72 7e 08 00 00 75 68 43 4d 56 01 68 44 68 02 68 29 5d ...h?]r}...hA]r~...uhCMV.hDh.h)]
bee0 72 7f 08 00 00 68 52 58 5b 01 00 00 41 20 63 6f 6d 6d 6f 6e 20 6e 65 65 64 20 69 6e 20 74 65 73 r....hRX[...A.common.need.in.tes
bf00 74 73 20 69 73 20 74 6f 20 70 61 74 63 68 20 61 20 63 6c 61 73 73 20 61 74 74 72 69 62 75 74 65 ts.is.to.patch.a.class.attribute
bf20 20 6f 72 20 61 20 6d 6f 64 75 6c 65 20 61 74 74 72 69 62 75 74 65 2c 0a 66 6f 72 20 65 78 61 6d .or.a.module.attribute,.for.exam
bf40 70 6c 65 20 70 61 74 63 68 69 6e 67 20 61 20 62 75 69 6c 74 69 6e 20 6f 72 20 70 61 74 63 68 69 ple.patching.a.builtin.or.patchi
bf60 6e 67 20 61 20 63 6c 61 73 73 20 69 6e 20 61 20 6d 6f 64 75 6c 65 20 74 6f 20 74 65 73 74 20 74 ng.a.class.in.a.module.to.test.t
bf80 68 61 74 20 69 74 0a 69 73 20 69 6e 73 74 61 6e 74 69 61 74 65 64 2e 20 4d 6f 64 75 6c 65 73 20 hat.it.is.instantiated..Modules.
bfa0 61 6e 64 20 63 6c 61 73 73 65 73 20 61 72 65 20 65 66 66 65 63 74 69 76 65 6c 79 20 67 6c 6f 62 and.classes.are.effectively.glob
bfc0 61 6c 2c 20 73 6f 20 70 61 74 63 68 69 6e 67 20 6f 6e 0a 74 68 65 6d 20 68 61 73 20 74 6f 20 62 al,.so.patching.on.them.has.to.b
bfe0 65 20 75 6e 64 6f 6e 65 20 61 66 74 65 72 20 74 68 65 20 74 65 73 74 20 6f 72 20 74 68 65 20 70 e.undone.after.the.test.or.the.p
c000 61 74 63 68 20 77 69 6c 6c 20 70 65 72 73 69 73 74 20 69 6e 74 6f 20 6f 74 68 65 72 0a 74 65 73 atch.will.persist.into.other.tes
c020 74 73 20 61 6e 64 20 63 61 75 73 65 20 68 61 72 64 20 74 6f 20 64 69 61 67 6e 6f 73 65 20 70 72 ts.and.cause.hard.to.diagnose.pr
c040 6f 62 6c 65 6d 73 2e 72 80 08 00 00 85 81 72 81 08 00 00 7d 72 82 08 00 00 28 68 2e 6a 78 08 00 oblems.r......r....}r....(h.jx..
c060 00 68 2f 6a 76 08 00 00 75 62 61 75 62 68 c0 29 81 72 83 08 00 00 7d 72 84 08 00 00 28 68 2e 58 .h/jv...ubaubh.).r....}r....(h.X
c080 be 01 00 00 6d 6f 63 6b 20 70 72 6f 76 69 64 65 73 20 74 68 72 65 65 20 63 6f 6e 76 65 6e 69 65 ....mock.provides.three.convenie
c0a0 6e 74 20 64 65 63 6f 72 61 74 6f 72 73 20 66 6f 72 20 74 68 69 73 3a 20 60 70 61 74 63 68 60 2c nt.decorators.for.this:.`patch`,
c0c0 20 60 70 61 74 63 68 2e 6f 62 6a 65 63 74 60 20 61 6e 64 0a 60 70 61 74 63 68 2e 64 69 63 74 60 .`patch.object`.and.`patch.dict`
c0e0 2e 20 60 70 61 74 63 68 60 20 74 61 6b 65 73 20 61 20 73 69 6e 67 6c 65 20 73 74 72 69 6e 67 2c ..`patch`.takes.a.single.string,
c100 20 6f 66 20 74 68 65 20 66 6f 72 6d 0a 60 70 61 63 6b 61 67 65 2e 6d 6f 64 75 6c 65 2e 43 6c 61 .of.the.form.`package.module.Cla
c120 73 73 2e 61 74 74 72 69 62 75 74 65 60 20 74 6f 20 73 70 65 63 69 66 79 20 74 68 65 20 61 74 74 ss.attribute`.to.specify.the.att
c140 72 69 62 75 74 65 20 79 6f 75 20 61 72 65 20 70 61 74 63 68 69 6e 67 2e 20 49 74 0a 61 6c 73 6f ribute.you.are.patching..It.also
c160 20 6f 70 74 69 6f 6e 61 6c 6c 79 20 74 61 6b 65 73 20 61 20 76 61 6c 75 65 20 74 68 61 74 20 79 .optionally.takes.a.value.that.y
c180 6f 75 20 77 61 6e 74 20 74 68 65 20 61 74 74 72 69 62 75 74 65 20 28 6f 72 20 63 6c 61 73 73 20 ou.want.the.attribute.(or.class.
c1a0 6f 72 0a 77 68 61 74 65 76 65 72 29 20 74 6f 20 62 65 20 72 65 70 6c 61 63 65 64 20 77 69 74 68 or.whatever).to.be.replaced.with
c1c0 2e 20 27 70 61 74 63 68 2e 6f 62 6a 65 63 74 27 20 74 61 6b 65 73 20 61 6e 20 6f 62 6a 65 63 74 ..'patch.object'.takes.an.object
c1e0 20 61 6e 64 20 74 68 65 20 6e 61 6d 65 20 6f 66 0a 74 68 65 20 61 74 74 72 69 62 75 74 65 20 79 .and.the.name.of.the.attribute.y
c200 6f 75 20 77 6f 75 6c 64 20 6c 69 6b 65 20 70 61 74 63 68 65 64 2c 20 70 6c 75 73 20 6f 70 74 69 ou.would.like.patched,.plus.opti
c220 6f 6e 61 6c 6c 79 20 74 68 65 20 76 61 6c 75 65 20 74 6f 20 70 61 74 63 68 20 69 74 0a 77 69 74 onally.the.value.to.patch.it.wit
c240 68 2e 72 85 08 00 00 68 2f 6a 18 08 00 00 68 30 68 33 68 35 68 c4 68 37 7d 72 86 08 00 00 28 68 h.r....h/j....h0h3h5h.h7}r....(h
c260 39 5d 72 87 08 00 00 68 3b 5d 72 88 08 00 00 68 3d 5d 72 89 08 00 00 68 3f 5d 72 8a 08 00 00 68 9]r....h;]r....h=]r....h?]r....h
c280 41 5d 72 8b 08 00 00 75 68 43 4d 5c 01 68 44 68 02 68 29 5d 72 8c 08 00 00 28 68 52 58 34 00 00 A]r....uhCM\.hDh.h)]r....(hRX4..
c2a0 00 6d 6f 63 6b 20 70 72 6f 76 69 64 65 73 20 74 68 72 65 65 20 63 6f 6e 76 65 6e 69 65 6e 74 20 .mock.provides.three.convenient.
c2c0 64 65 63 6f 72 61 74 6f 72 73 20 66 6f 72 20 74 68 69 73 3a 20 72 8d 08 00 00 85 81 72 8e 08 00 decorators.for.this:.r......r...
c2e0 00 7d 72 8f 08 00 00 28 68 2e 58 34 00 00 00 6d 6f 63 6b 20 70 72 6f 76 69 64 65 73 20 74 68 72 .}r....(h.X4...mock.provides.thr
c300 65 65 20 63 6f 6e 76 65 6e 69 65 6e 74 20 64 65 63 6f 72 61 74 6f 72 73 20 66 6f 72 20 74 68 69 ee.convenient.decorators.for.thi
c320 73 3a 20 72 90 08 00 00 68 2f 6a 83 08 00 00 75 62 6a 66 01 00 00 29 81 72 91 08 00 00 7d 72 92 s:.r....h/j....ubjf...).r....}r.
c340 08 00 00 28 68 2e 58 07 00 00 00 60 70 61 74 63 68 60 72 93 08 00 00 68 37 7d 72 94 08 00 00 28 ...(h.X....`patch`r....h7}r....(
c360 68 39 5d 72 95 08 00 00 68 3b 5d 72 96 08 00 00 68 3d 5d 72 97 08 00 00 68 3f 5d 72 98 08 00 00 h9]r....h;]r....h=]r....h?]r....
c380 68 41 5d 72 99 08 00 00 75 68 2f 6a 83 08 00 00 68 29 5d 72 9a 08 00 00 68 52 58 05 00 00 00 70 hA]r....uh/j....h)]r....hRX....p
c3a0 61 74 63 68 72 9b 08 00 00 85 81 72 9c 08 00 00 7d 72 9d 08 00 00 28 68 2e 55 00 68 2f 6a 91 08 atchr......r....}r....(h.U.h/j..
c3c0 00 00 75 62 61 68 35 6a 74 01 00 00 75 62 68 52 58 02 00 00 00 2c 20 72 9e 08 00 00 85 81 72 9f ..ubah5jt...ubhRX....,.r......r.
c3e0 08 00 00 7d 72 a0 08 00 00 28 68 2e 58 02 00 00 00 2c 20 72 a1 08 00 00 68 2f 6a 83 08 00 00 75 ...}r....(h.X....,.r....h/j....u
c400 62 6a 66 01 00 00 29 81 72 a2 08 00 00 7d 72 a3 08 00 00 28 68 2e 58 0e 00 00 00 60 70 61 74 63 bjf...).r....}r....(h.X....`patc
c420 68 2e 6f 62 6a 65 63 74 60 72 a4 08 00 00 68 37 7d 72 a5 08 00 00 28 68 39 5d 72 a6 08 00 00 68 h.object`r....h7}r....(h9]r....h
c440 3b 5d 72 a7 08 00 00 68 3d 5d 72 a8 08 00 00 68 3f 5d 72 a9 08 00 00 68 41 5d 72 aa 08 00 00 75 ;]r....h=]r....h?]r....hA]r....u
c460 68 2f 6a 83 08 00 00 68 29 5d 72 ab 08 00 00 68 52 58 0c 00 00 00 70 61 74 63 68 2e 6f 62 6a 65 h/j....h)]r....hRX....patch.obje
c480 63 74 72 ac 08 00 00 85 81 72 ad 08 00 00 7d 72 ae 08 00 00 28 68 2e 55 00 68 2f 6a a2 08 00 00 ctr......r....}r....(h.U.h/j....
c4a0 75 62 61 68 35 6a 74 01 00 00 75 62 68 52 58 05 00 00 00 20 61 6e 64 0a 72 af 08 00 00 85 81 72 ubah5jt...ubhRX.....and.r......r
c4c0 b0 08 00 00 7d 72 b1 08 00 00 28 68 2e 58 05 00 00 00 20 61 6e 64 0a 72 b2 08 00 00 68 2f 6a 83 ....}r....(h.X.....and.r....h/j.
c4e0 08 00 00 75 62 6a 66 01 00 00 29 81 72 b3 08 00 00 7d 72 b4 08 00 00 28 68 2e 58 0c 00 00 00 60 ...ubjf...).r....}r....(h.X....`
c500 70 61 74 63 68 2e 64 69 63 74 60 72 b5 08 00 00 68 37 7d 72 b6 08 00 00 28 68 39 5d 72 b7 08 00 patch.dict`r....h7}r....(h9]r...
c520 00 68 3b 5d 72 b8 08 00 00 68 3d 5d 72 b9 08 00 00 68 3f 5d 72 ba 08 00 00 68 41 5d 72 bb 08 00 .h;]r....h=]r....h?]r....hA]r...
c540 00 75 68 2f 6a 83 08 00 00 68 29 5d 72 bc 08 00 00 68 52 58 0a 00 00 00 70 61 74 63 68 2e 64 69 .uh/j....h)]r....hRX....patch.di
c560 63 74 72 bd 08 00 00 85 81 72 be 08 00 00 7d 72 bf 08 00 00 28 68 2e 55 00 68 2f 6a b3 08 00 00 ctr......r....}r....(h.U.h/j....
c580 75 62 61 68 35 6a 74 01 00 00 75 62 68 52 58 02 00 00 00 2e 20 72 c0 08 00 00 85 81 72 c1 08 00 ubah5jt...ubhRX......r......r...
c5a0 00 7d 72 c2 08 00 00 28 68 2e 58 02 00 00 00 2e 20 72 c3 08 00 00 68 2f 6a 83 08 00 00 75 62 6a .}r....(h.X......r....h/j....ubj
c5c0 66 01 00 00 29 81 72 c4 08 00 00 7d 72 c5 08 00 00 28 68 2e 58 07 00 00 00 60 70 61 74 63 68 60 f...).r....}r....(h.X....`patch`
c5e0 72 c6 08 00 00 68 37 7d 72 c7 08 00 00 28 68 39 5d 72 c8 08 00 00 68 3b 5d 72 c9 08 00 00 68 3d r....h7}r....(h9]r....h;]r....h=
c600 5d 72 ca 08 00 00 68 3f 5d 72 cb 08 00 00 68 41 5d 72 cc 08 00 00 75 68 2f 6a 83 08 00 00 68 29 ]r....h?]r....hA]r....uh/j....h)
c620 5d 72 cd 08 00 00 68 52 58 05 00 00 00 70 61 74 63 68 72 ce 08 00 00 85 81 72 cf 08 00 00 7d 72 ]r....hRX....patchr......r....}r
c640 d0 08 00 00 28 68 2e 55 00 68 2f 6a c4 08 00 00 75 62 61 68 35 6a 74 01 00 00 75 62 68 52 58 24 ....(h.U.h/j....ubah5jt...ubhRX$
c660 00 00 00 20 74 61 6b 65 73 20 61 20 73 69 6e 67 6c 65 20 73 74 72 69 6e 67 2c 20 6f 66 20 74 68 ....takes.a.single.string,.of.th
c680 65 20 66 6f 72 6d 0a 72 d1 08 00 00 85 81 72 d2 08 00 00 7d 72 d3 08 00 00 28 68 2e 58 24 00 00 e.form.r......r....}r....(h.X$..
c6a0 00 20 74 61 6b 65 73 20 61 20 73 69 6e 67 6c 65 20 73 74 72 69 6e 67 2c 20 6f 66 20 74 68 65 20 ..takes.a.single.string,.of.the.
c6c0 66 6f 72 6d 0a 72 d4 08 00 00 68 2f 6a 83 08 00 00 75 62 6a 66 01 00 00 29 81 72 d5 08 00 00 7d form.r....h/j....ubjf...).r....}
c6e0 72 d6 08 00 00 28 68 2e 58 20 00 00 00 60 70 61 63 6b 61 67 65 2e 6d 6f 64 75 6c 65 2e 43 6c 61 r....(h.X....`package.module.Cla
c700 73 73 2e 61 74 74 72 69 62 75 74 65 60 72 d7 08 00 00 68 37 7d 72 d8 08 00 00 28 68 39 5d 72 d9 ss.attribute`r....h7}r....(h9]r.
c720 08 00 00 68 3b 5d 72 da 08 00 00 68 3d 5d 72 db 08 00 00 68 3f 5d 72 dc 08 00 00 68 41 5d 72 dd ...h;]r....h=]r....h?]r....hA]r.
c740 08 00 00 75 68 2f 6a 83 08 00 00 68 29 5d 72 de 08 00 00 68 52 58 1e 00 00 00 70 61 63 6b 61 67 ...uh/j....h)]r....hRX....packag
c760 65 2e 6d 6f 64 75 6c 65 2e 43 6c 61 73 73 2e 61 74 74 72 69 62 75 74 65 72 df 08 00 00 85 81 72 e.module.Class.attributer......r
c780 e0 08 00 00 7d 72 e1 08 00 00 28 68 2e 55 00 68 2f 6a d5 08 00 00 75 62 61 68 35 6a 74 01 00 00 ....}r....(h.U.h/j....ubah5jt...
c7a0 75 62 68 52 58 15 01 00 00 20 74 6f 20 73 70 65 63 69 66 79 20 74 68 65 20 61 74 74 72 69 62 75 ubhRX.....to.specify.the.attribu
c7c0 74 65 20 79 6f 75 20 61 72 65 20 70 61 74 63 68 69 6e 67 2e 20 49 74 0a 61 6c 73 6f 20 6f 70 74 te.you.are.patching..It.also.opt
c7e0 69 6f 6e 61 6c 6c 79 20 74 61 6b 65 73 20 61 20 76 61 6c 75 65 20 74 68 61 74 20 79 6f 75 20 77 ionally.takes.a.value.that.you.w
c800 61 6e 74 20 74 68 65 20 61 74 74 72 69 62 75 74 65 20 28 6f 72 20 63 6c 61 73 73 20 6f 72 0a 77 ant.the.attribute.(or.class.or.w
c820 68 61 74 65 76 65 72 29 20 74 6f 20 62 65 20 72 65 70 6c 61 63 65 64 20 77 69 74 68 2e 20 27 70 hatever).to.be.replaced.with..'p
c840 61 74 63 68 2e 6f 62 6a 65 63 74 27 20 74 61 6b 65 73 20 61 6e 20 6f 62 6a 65 63 74 20 61 6e 64 atch.object'.takes.an.object.and
c860 20 74 68 65 20 6e 61 6d 65 20 6f 66 0a 74 68 65 20 61 74 74 72 69 62 75 74 65 20 79 6f 75 20 77 .the.name.of.the.attribute.you.w
c880 6f 75 6c 64 20 6c 69 6b 65 20 70 61 74 63 68 65 64 2c 20 70 6c 75 73 20 6f 70 74 69 6f 6e 61 6c ould.like.patched,.plus.optional
c8a0 6c 79 20 74 68 65 20 76 61 6c 75 65 20 74 6f 20 70 61 74 63 68 20 69 74 0a 77 69 74 68 2e 72 e2 ly.the.value.to.patch.it.with.r.
c8c0 08 00 00 85 81 72 e3 08 00 00 7d 72 e4 08 00 00 28 68 2e 58 15 01 00 00 20 74 6f 20 73 70 65 63 .....r....}r....(h.X.....to.spec
c8e0 69 66 79 20 74 68 65 20 61 74 74 72 69 62 75 74 65 20 79 6f 75 20 61 72 65 20 70 61 74 63 68 69 ify.the.attribute.you.are.patchi
c900 6e 67 2e 20 49 74 0a 61 6c 73 6f 20 6f 70 74 69 6f 6e 61 6c 6c 79 20 74 61 6b 65 73 20 61 20 76 ng..It.also.optionally.takes.a.v
c920 61 6c 75 65 20 74 68 61 74 20 79 6f 75 20 77 61 6e 74 20 74 68 65 20 61 74 74 72 69 62 75 74 65 alue.that.you.want.the.attribute
c940 20 28 6f 72 20 63 6c 61 73 73 20 6f 72 0a 77 68 61 74 65 76 65 72 29 20 74 6f 20 62 65 20 72 65 .(or.class.or.whatever).to.be.re
c960 70 6c 61 63 65 64 20 77 69 74 68 2e 20 27 70 61 74 63 68 2e 6f 62 6a 65 63 74 27 20 74 61 6b 65 placed.with..'patch.object'.take
c980 73 20 61 6e 20 6f 62 6a 65 63 74 20 61 6e 64 20 74 68 65 20 6e 61 6d 65 20 6f 66 0a 74 68 65 20 s.an.object.and.the.name.of.the.
c9a0 61 74 74 72 69 62 75 74 65 20 79 6f 75 20 77 6f 75 6c 64 20 6c 69 6b 65 20 70 61 74 63 68 65 64 attribute.you.would.like.patched
c9c0 2c 20 70 6c 75 73 20 6f 70 74 69 6f 6e 61 6c 6c 79 20 74 68 65 20 76 61 6c 75 65 20 74 6f 20 70 ,.plus.optionally.the.value.to.p
c9e0 61 74 63 68 20 69 74 0a 77 69 74 68 2e 72 e5 08 00 00 68 2f 6a 83 08 00 00 75 62 65 75 62 68 c0 atch.it.with.r....h/j....ubeubh.
ca00 29 81 72 e6 08 00 00 7d 72 e7 08 00 00 28 68 2e 58 0f 00 00 00 60 70 61 74 63 68 2e 6f 62 6a 65 ).r....}r....(h.X....`patch.obje
ca20 63 74 60 3a 72 e8 08 00 00 68 2f 6a 18 08 00 00 68 30 68 33 68 35 68 c4 68 37 7d 72 e9 08 00 00 ct`:r....h/j....h0h3h5h.h7}r....
ca40 28 68 39 5d 72 ea 08 00 00 68 3b 5d 72 eb 08 00 00 68 3d 5d 72 ec 08 00 00 68 3f 5d 72 ed 08 00 (h9]r....h;]r....h=]r....h?]r...
ca60 00 68 41 5d 72 ee 08 00 00 75 68 43 4d 64 01 68 44 68 02 68 29 5d 72 ef 08 00 00 28 6a 66 01 00 .hA]r....uhCMd.hDh.h)]r....(jf..
ca80 00 29 81 72 f0 08 00 00 7d 72 f1 08 00 00 28 68 2e 58 0e 00 00 00 60 70 61 74 63 68 2e 6f 62 6a .).r....}r....(h.X....`patch.obj
caa0 65 63 74 60 72 f2 08 00 00 68 37 7d 72 f3 08 00 00 28 68 39 5d 72 f4 08 00 00 68 3b 5d 72 f5 08 ect`r....h7}r....(h9]r....h;]r..
cac0 00 00 68 3d 5d 72 f6 08 00 00 68 3f 5d 72 f7 08 00 00 68 41 5d 72 f8 08 00 00 75 68 2f 6a e6 08 ..h=]r....h?]r....hA]r....uh/j..
cae0 00 00 68 29 5d 72 f9 08 00 00 68 52 58 0c 00 00 00 70 61 74 63 68 2e 6f 62 6a 65 63 74 72 fa 08 ..h)]r....hRX....patch.objectr..
cb00 00 00 85 81 72 fb 08 00 00 7d 72 fc 08 00 00 28 68 2e 55 00 68 2f 6a f0 08 00 00 75 62 61 68 35 ....r....}r....(h.U.h/j....ubah5
cb20 6a 74 01 00 00 75 62 68 52 58 01 00 00 00 3a 85 81 72 fd 08 00 00 7d 72 fe 08 00 00 28 68 2e 58 jt...ubhRX....:..r....}r....(h.X
cb40 01 00 00 00 3a 68 2f 6a e6 08 00 00 75 62 65 75 62 6a 44 01 00 00 29 81 72 ff 08 00 00 7d 72 00 ....:h/j....ubeubjD...).r....}r.
cb60 09 00 00 28 68 2e 58 9a 01 00 00 3e 3e 3e 20 6f 72 69 67 69 6e 61 6c 20 3d 20 53 6f 6d 65 43 6c ...(h.X....>>>.original.=.SomeCl
cb80 61 73 73 2e 61 74 74 72 69 62 75 74 65 0a 3e 3e 3e 20 40 70 61 74 63 68 2e 6f 62 6a 65 63 74 28 ass.attribute.>>>.@patch.object(
cba0 53 6f 6d 65 43 6c 61 73 73 2c 20 27 61 74 74 72 69 62 75 74 65 27 2c 20 73 65 6e 74 69 6e 65 6c SomeClass,.'attribute',.sentinel
cbc0 2e 61 74 74 72 69 62 75 74 65 29 0a 2e 2e 2e 20 64 65 66 20 74 65 73 74 28 29 3a 0a 2e 2e 2e 20 .attribute).....def.test():.....
cbe0 20 20 20 20 61 73 73 65 72 74 20 53 6f 6d 65 43 6c 61 73 73 2e 61 74 74 72 69 62 75 74 65 20 3d ....assert.SomeClass.attribute.=
cc00 3d 20 73 65 6e 74 69 6e 65 6c 2e 61 74 74 72 69 62 75 74 65 0a 2e 2e 2e 0a 3e 3e 3e 20 74 65 73 =.sentinel.attribute.....>>>.tes
cc20 74 28 29 0a 3e 3e 3e 20 61 73 73 65 72 74 20 53 6f 6d 65 43 6c 61 73 73 2e 61 74 74 72 69 62 75 t().>>>.assert.SomeClass.attribu
cc40 74 65 20 3d 3d 20 6f 72 69 67 69 6e 61 6c 0a 0a 3e 3e 3e 20 40 70 61 74 63 68 28 27 70 61 63 6b te.==.original..>>>.@patch('pack
cc60 61 67 65 2e 6d 6f 64 75 6c 65 2e 61 74 74 72 69 62 75 74 65 27 2c 20 73 65 6e 74 69 6e 65 6c 2e age.module.attribute',.sentinel.
cc80 61 74 74 72 69 62 75 74 65 29 0a 2e 2e 2e 20 64 65 66 20 74 65 73 74 28 29 3a 0a 2e 2e 2e 20 20 attribute).....def.test():......
cca0 20 20 20 66 72 6f 6d 20 70 61 63 6b 61 67 65 2e 6d 6f 64 75 6c 65 20 69 6d 70 6f 72 74 20 61 74 ...from.package.module.import.at
ccc0 74 72 69 62 75 74 65 0a 2e 2e 2e 20 20 20 20 20 61 73 73 65 72 74 20 61 74 74 72 69 62 75 74 65 tribute.........assert.attribute
cce0 20 69 73 20 73 65 6e 74 69 6e 65 6c 2e 61 74 74 72 69 62 75 74 65 0a 2e 2e 2e 0a 3e 3e 3e 20 74 .is.sentinel.attribute.....>>>.t
cd00 65 73 74 28 29 72 01 09 00 00 68 2f 6a 18 08 00 00 68 30 68 33 68 35 6a 48 01 00 00 68 37 7d 72 est()r....h/j....h0h3h5jH...h7}r
cd20 02 09 00 00 28 55 0c 74 65 73 74 6e 6f 64 65 74 79 70 65 72 03 09 00 00 58 07 00 00 00 64 6f 63 ....(U.testnodetyper....X....doc
cd40 74 65 73 74 72 04 09 00 00 68 84 68 85 68 3f 5d 72 05 09 00 00 68 3d 5d 72 06 09 00 00 68 39 5d testr....h.h.h?]r....h=]r....h9]
cd60 72 07 09 00 00 68 3b 5d 72 08 09 00 00 68 41 5d 72 09 09 00 00 55 06 67 72 6f 75 70 73 72 0a 09 r....h;]r....hA]r....U.groupsr..
cd80 00 00 5d 72 0b 09 00 00 68 8d 61 68 8e 7d 72 0c 09 00 00 75 68 43 4d 66 01 68 44 68 02 68 29 5d ..]r....h.ah.}r....uhCMf.hDh.h)]
cda0 72 0d 09 00 00 68 52 58 9a 01 00 00 3e 3e 3e 20 6f 72 69 67 69 6e 61 6c 20 3d 20 53 6f 6d 65 43 r....hRX....>>>.original.=.SomeC
cdc0 6c 61 73 73 2e 61 74 74 72 69 62 75 74 65 0a 3e 3e 3e 20 40 70 61 74 63 68 2e 6f 62 6a 65 63 74 lass.attribute.>>>.@patch.object
cde0 28 53 6f 6d 65 43 6c 61 73 73 2c 20 27 61 74 74 72 69 62 75 74 65 27 2c 20 73 65 6e 74 69 6e 65 (SomeClass,.'attribute',.sentine
ce00 6c 2e 61 74 74 72 69 62 75 74 65 29 0a 2e 2e 2e 20 64 65 66 20 74 65 73 74 28 29 3a 0a 2e 2e 2e l.attribute).....def.test():....
ce20 20 20 20 20 20 61 73 73 65 72 74 20 53 6f 6d 65 43 6c 61 73 73 2e 61 74 74 72 69 62 75 74 65 20 .....assert.SomeClass.attribute.
ce40 3d 3d 20 73 65 6e 74 69 6e 65 6c 2e 61 74 74 72 69 62 75 74 65 0a 2e 2e 2e 0a 3e 3e 3e 20 74 65 ==.sentinel.attribute.....>>>.te
ce60 73 74 28 29 0a 3e 3e 3e 20 61 73 73 65 72 74 20 53 6f 6d 65 43 6c 61 73 73 2e 61 74 74 72 69 62 st().>>>.assert.SomeClass.attrib
ce80 75 74 65 20 3d 3d 20 6f 72 69 67 69 6e 61 6c 0a 0a 3e 3e 3e 20 40 70 61 74 63 68 28 27 70 61 63 ute.==.original..>>>.@patch('pac
cea0 6b 61 67 65 2e 6d 6f 64 75 6c 65 2e 61 74 74 72 69 62 75 74 65 27 2c 20 73 65 6e 74 69 6e 65 6c kage.module.attribute',.sentinel
cec0 2e 61 74 74 72 69 62 75 74 65 29 0a 2e 2e 2e 20 64 65 66 20 74 65 73 74 28 29 3a 0a 2e 2e 2e 20 .attribute).....def.test():.....
cee0 20 20 20 20 66 72 6f 6d 20 70 61 63 6b 61 67 65 2e 6d 6f 64 75 6c 65 20 69 6d 70 6f 72 74 20 61 ....from.package.module.import.a
cf00 74 74 72 69 62 75 74 65 0a 2e 2e 2e 20 20 20 20 20 61 73 73 65 72 74 20 61 74 74 72 69 62 75 74 ttribute.........assert.attribut
cf20 65 20 69 73 20 73 65 6e 74 69 6e 65 6c 2e 61 74 74 72 69 62 75 74 65 0a 2e 2e 2e 0a 3e 3e 3e 20 e.is.sentinel.attribute.....>>>.
cf40 74 65 73 74 28 29 72 0e 09 00 00 85 81 72 0f 09 00 00 7d 72 10 09 00 00 28 68 2e 55 00 68 2f 6a test()r......r....}r....(h.U.h/j
cf60 ff 08 00 00 75 62 61 75 62 68 c0 29 81 72 11 09 00 00 7d 72 12 09 00 00 28 68 2e 58 62 00 00 00 ....ubaubh.).r....}r....(h.Xb...
cf80 49 66 20 79 6f 75 20 61 72 65 20 70 61 74 63 68 69 6e 67 20 61 20 6d 6f 64 75 6c 65 20 28 69 6e If.you.are.patching.a.module.(in
cfa0 63 6c 75 64 69 6e 67 20 60 5f 5f 62 75 69 6c 74 69 6e 5f 5f 60 29 20 74 68 65 6e 20 75 73 65 20 cluding.`__builtin__`).then.use.
cfc0 60 70 61 74 63 68 60 0a 69 6e 73 74 65 61 64 20 6f 66 20 60 70 61 74 63 68 2e 6f 62 6a 65 63 74 `patch`.instead.of.`patch.object
cfe0 60 3a 72 13 09 00 00 68 2f 6a 18 08 00 00 68 30 68 33 68 35 68 c4 68 37 7d 72 14 09 00 00 28 68 `:r....h/j....h0h3h5h.h7}r....(h
d000 39 5d 72 15 09 00 00 68 3b 5d 72 16 09 00 00 68 3d 5d 72 17 09 00 00 68 3f 5d 72 18 09 00 00 68 9]r....h;]r....h=]r....h?]r....h
d020 41 5d 72 19 09 00 00 75 68 43 4d 77 01 68 44 68 02 68 29 5d 72 1a 09 00 00 28 68 52 58 28 00 00 A]r....uhCMw.hDh.h)]r....(hRX(..
d040 00 49 66 20 79 6f 75 20 61 72 65 20 70 61 74 63 68 69 6e 67 20 61 20 6d 6f 64 75 6c 65 20 28 69 .If.you.are.patching.a.module.(i
d060 6e 63 6c 75 64 69 6e 67 20 72 1b 09 00 00 85 81 72 1c 09 00 00 7d 72 1d 09 00 00 28 68 2e 58 28 ncluding.r......r....}r....(h.X(
d080 00 00 00 49 66 20 79 6f 75 20 61 72 65 20 70 61 74 63 68 69 6e 67 20 61 20 6d 6f 64 75 6c 65 20 ...If.you.are.patching.a.module.
d0a0 28 69 6e 63 6c 75 64 69 6e 67 20 72 1e 09 00 00 68 2f 6a 11 09 00 00 75 62 6a 66 01 00 00 29 81 (including.r....h/j....ubjf...).
d0c0 72 1f 09 00 00 7d 72 20 09 00 00 28 68 2e 58 0d 00 00 00 60 5f 5f 62 75 69 6c 74 69 6e 5f 5f 60 r....}r....(h.X....`__builtin__`
d0e0 72 21 09 00 00 68 37 7d 72 22 09 00 00 28 68 39 5d 72 23 09 00 00 68 3b 5d 72 24 09 00 00 68 3d r!...h7}r"...(h9]r#...h;]r$...h=
d100 5d 72 25 09 00 00 68 3f 5d 72 26 09 00 00 68 41 5d 72 27 09 00 00 75 68 2f 6a 11 09 00 00 68 29 ]r%...h?]r&...hA]r'...uh/j....h)
d120 5d 72 28 09 00 00 68 52 58 0b 00 00 00 5f 5f 62 75 69 6c 74 69 6e 5f 5f 72 29 09 00 00 85 81 72 ]r(...hRX....__builtin__r).....r
d140 2a 09 00 00 7d 72 2b 09 00 00 28 68 2e 55 00 68 2f 6a 1f 09 00 00 75 62 61 68 35 6a 74 01 00 00 *...}r+...(h.U.h/j....ubah5jt...
d160 75 62 68 52 58 0b 00 00 00 29 20 74 68 65 6e 20 75 73 65 20 72 2c 09 00 00 85 81 72 2d 09 00 00 ubhRX....).then.use.r,.....r-...
d180 7d 72 2e 09 00 00 28 68 2e 58 0b 00 00 00 29 20 74 68 65 6e 20 75 73 65 20 72 2f 09 00 00 68 2f }r....(h.X....).then.use.r/...h/
d1a0 6a 11 09 00 00 75 62 6a 66 01 00 00 29 81 72 30 09 00 00 7d 72 31 09 00 00 28 68 2e 58 07 00 00 j....ubjf...).r0...}r1...(h.X...
d1c0 00 60 70 61 74 63 68 60 72 32 09 00 00 68 37 7d 72 33 09 00 00 28 68 39 5d 72 34 09 00 00 68 3b .`patch`r2...h7}r3...(h9]r4...h;
d1e0 5d 72 35 09 00 00 68 3d 5d 72 36 09 00 00 68 3f 5d 72 37 09 00 00 68 41 5d 72 38 09 00 00 75 68 ]r5...h=]r6...h?]r7...hA]r8...uh
d200 2f 6a 11 09 00 00 68 29 5d 72 39 09 00 00 68 52 58 05 00 00 00 70 61 74 63 68 72 3a 09 00 00 85 /j....h)]r9...hRX....patchr:....
d220 81 72 3b 09 00 00 7d 72 3c 09 00 00 28 68 2e 55 00 68 2f 6a 30 09 00 00 75 62 61 68 35 6a 74 01 .r;...}r<...(h.U.h/j0...ubah5jt.
d240 00 00 75 62 68 52 58 0c 00 00 00 0a 69 6e 73 74 65 61 64 20 6f 66 20 72 3d 09 00 00 85 81 72 3e ..ubhRX.....instead.of.r=.....r>
d260 09 00 00 7d 72 3f 09 00 00 28 68 2e 58 0c 00 00 00 0a 69 6e 73 74 65 61 64 20 6f 66 20 72 40 09 ...}r?...(h.X.....instead.of.r@.
d280 00 00 68 2f 6a 11 09 00 00 75 62 6a 66 01 00 00 29 81 72 41 09 00 00 7d 72 42 09 00 00 28 68 2e ..h/j....ubjf...).rA...}rB...(h.
d2a0 58 0e 00 00 00 60 70 61 74 63 68 2e 6f 62 6a 65 63 74 60 72 43 09 00 00 68 37 7d 72 44 09 00 00 X....`patch.object`rC...h7}rD...
d2c0 28 68 39 5d 72 45 09 00 00 68 3b 5d 72 46 09 00 00 68 3d 5d 72 47 09 00 00 68 3f 5d 72 48 09 00 (h9]rE...h;]rF...h=]rG...h?]rH..
d2e0 00 68 41 5d 72 49 09 00 00 75 68 2f 6a 11 09 00 00 68 29 5d 72 4a 09 00 00 68 52 58 0c 00 00 00 .hA]rI...uh/j....h)]rJ...hRX....
d300 70 61 74 63 68 2e 6f 62 6a 65 63 74 72 4b 09 00 00 85 81 72 4c 09 00 00 7d 72 4d 09 00 00 28 68 patch.objectrK.....rL...}rM...(h
d320 2e 55 00 68 2f 6a 41 09 00 00 75 62 61 68 35 6a 74 01 00 00 75 62 68 52 58 01 00 00 00 3a 85 81 .U.h/jA...ubah5jt...ubhRX....:..
d340 72 4e 09 00 00 7d 72 4f 09 00 00 28 68 2e 58 01 00 00 00 3a 68 2f 6a 11 09 00 00 75 62 65 75 62 rN...}rO...(h.X....:h/j....ubeub
d360 6a 44 01 00 00 29 81 72 50 09 00 00 7d 72 51 09 00 00 28 68 2e 58 07 01 00 00 3e 3e 3e 20 6d 6f jD...).rP...}rQ...(h.X....>>>.mo
d380 63 6b 20 3d 20 4d 61 67 69 63 4d 6f 63 6b 28 72 65 74 75 72 6e 5f 76 61 6c 75 65 20 3d 20 73 65 ck.=.MagicMock(return_value.=.se
d3a0 6e 74 69 6e 65 6c 2e 66 69 6c 65 5f 68 61 6e 64 6c 65 29 0a 3e 3e 3e 20 77 69 74 68 20 70 61 74 ntinel.file_handle).>>>.with.pat
d3c0 63 68 28 27 5f 5f 62 75 69 6c 74 69 6e 5f 5f 2e 6f 70 65 6e 27 2c 20 6d 6f 63 6b 29 3a 0a 2e 2e ch('__builtin__.open',.mock):...
d3e0 2e 20 20 20 20 20 68 61 6e 64 6c 65 20 3d 20 6f 70 65 6e 28 27 66 69 6c 65 6e 61 6d 65 27 2c 20 ......handle.=.open('filename',.
d400 27 72 27 29 0a 2e 2e 2e 0a 3e 3e 3e 20 6d 6f 63 6b 2e 61 73 73 65 72 74 5f 63 61 6c 6c 65 64 5f 'r').....>>>.mock.assert_called_
d420 77 69 74 68 28 27 66 69 6c 65 6e 61 6d 65 27 2c 20 27 72 27 29 0a 3e 3e 3e 20 61 73 73 65 72 74 with('filename',.'r').>>>.assert
d440 20 68 61 6e 64 6c 65 20 3d 3d 20 73 65 6e 74 69 6e 65 6c 2e 66 69 6c 65 5f 68 61 6e 64 6c 65 2c .handle.==.sentinel.file_handle,
d460 20 22 69 6e 63 6f 72 72 65 63 74 20 66 69 6c 65 20 68 61 6e 64 6c 65 20 72 65 74 75 72 6e 65 64 ."incorrect.file.handle.returned
d480 22 72 52 09 00 00 68 2f 6a 18 08 00 00 68 30 68 33 68 35 6a 48 01 00 00 68 37 7d 72 53 09 00 00 "rR...h/j....h0h3h5jH...h7}rS...
d4a0 28 55 0c 74 65 73 74 6e 6f 64 65 74 79 70 65 72 54 09 00 00 58 07 00 00 00 64 6f 63 74 65 73 74 (U.testnodetyperT...X....doctest
d4c0 72 55 09 00 00 68 84 68 85 68 3f 5d 72 56 09 00 00 68 3d 5d 72 57 09 00 00 68 39 5d 72 58 09 00 rU...h.h.h?]rV...h=]rW...h9]rX..
d4e0 00 68 3b 5d 72 59 09 00 00 68 41 5d 72 5a 09 00 00 55 06 67 72 6f 75 70 73 72 5b 09 00 00 5d 72 .h;]rY...hA]rZ...U.groupsr[...]r
d500 5c 09 00 00 68 8d 61 68 8e 7d 72 5d 09 00 00 75 68 43 4d 7a 01 68 44 68 02 68 29 5d 72 5e 09 00 \...h.ah.}r]...uhCMz.hDh.h)]r^..
d520 00 68 52 58 07 01 00 00 3e 3e 3e 20 6d 6f 63 6b 20 3d 20 4d 61 67 69 63 4d 6f 63 6b 28 72 65 74 .hRX....>>>.mock.=.MagicMock(ret
d540 75 72 6e 5f 76 61 6c 75 65 20 3d 20 73 65 6e 74 69 6e 65 6c 2e 66 69 6c 65 5f 68 61 6e 64 6c 65 urn_value.=.sentinel.file_handle
d560 29 0a 3e 3e 3e 20 77 69 74 68 20 70 61 74 63 68 28 27 5f 5f 62 75 69 6c 74 69 6e 5f 5f 2e 6f 70 ).>>>.with.patch('__builtin__.op
d580 65 6e 27 2c 20 6d 6f 63 6b 29 3a 0a 2e 2e 2e 20 20 20 20 20 68 61 6e 64 6c 65 20 3d 20 6f 70 65 en',.mock):.........handle.=.ope
d5a0 6e 28 27 66 69 6c 65 6e 61 6d 65 27 2c 20 27 72 27 29 0a 2e 2e 2e 0a 3e 3e 3e 20 6d 6f 63 6b 2e n('filename',.'r').....>>>.mock.
d5c0 61 73 73 65 72 74 5f 63 61 6c 6c 65 64 5f 77 69 74 68 28 27 66 69 6c 65 6e 61 6d 65 27 2c 20 27 assert_called_with('filename',.'
d5e0 72 27 29 0a 3e 3e 3e 20 61 73 73 65 72 74 20 68 61 6e 64 6c 65 20 3d 3d 20 73 65 6e 74 69 6e 65 r').>>>.assert.handle.==.sentine
d600 6c 2e 66 69 6c 65 5f 68 61 6e 64 6c 65 2c 20 22 69 6e 63 6f 72 72 65 63 74 20 66 69 6c 65 20 68 l.file_handle,."incorrect.file.h
d620 61 6e 64 6c 65 20 72 65 74 75 72 6e 65 64 22 72 5f 09 00 00 85 81 72 60 09 00 00 7d 72 61 09 00 andle.returned"r_.....r`...}ra..
d640 00 28 68 2e 55 00 68 2f 6a 50 09 00 00 75 62 61 75 62 68 c0 29 81 72 62 09 00 00 7d 72 63 09 00 .(h.U.h/jP...ubaubh.).rb...}rc..
d660 00 28 68 2e 58 48 00 00 00 54 68 65 20 6d 6f 64 75 6c 65 20 6e 61 6d 65 20 63 61 6e 20 62 65 20 .(h.XH...The.module.name.can.be.
d680 27 64 6f 74 74 65 64 27 2c 20 69 6e 20 74 68 65 20 66 6f 72 6d 20 60 70 61 63 6b 61 67 65 2e 6d 'dotted',.in.the.form.`package.m
d6a0 6f 64 75 6c 65 60 20 69 66 20 6e 65 65 64 65 64 3a 72 64 09 00 00 68 2f 6a 18 08 00 00 68 30 68 odule`.if.needed:rd...h/j....h0h
d6c0 33 68 35 68 c4 68 37 7d 72 65 09 00 00 28 68 39 5d 72 66 09 00 00 68 3b 5d 72 67 09 00 00 68 3d 3h5h.h7}re...(h9]rf...h;]rg...h=
d6e0 5d 72 68 09 00 00 68 3f 5d 72 69 09 00 00 68 41 5d 72 6a 09 00 00 75 68 43 4d 83 01 68 44 68 02 ]rh...h?]ri...hA]rj...uhCM..hDh.
d700 68 29 5d 72 6b 09 00 00 28 68 52 58 2d 00 00 00 54 68 65 20 6d 6f 64 75 6c 65 20 6e 61 6d 65 20 h)]rk...(hRX-...The.module.name.
d720 63 61 6e 20 62 65 20 27 64 6f 74 74 65 64 27 2c 20 69 6e 20 74 68 65 20 66 6f 72 6d 20 72 6c 09 can.be.'dotted',.in.the.form.rl.
d740 00 00 85 81 72 6d 09 00 00 7d 72 6e 09 00 00 28 68 2e 58 2d 00 00 00 54 68 65 20 6d 6f 64 75 6c ....rm...}rn...(h.X-...The.modul
d760 65 20 6e 61 6d 65 20 63 61 6e 20 62 65 20 27 64 6f 74 74 65 64 27 2c 20 69 6e 20 74 68 65 20 66 e.name.can.be.'dotted',.in.the.f
d780 6f 72 6d 20 72 6f 09 00 00 68 2f 6a 62 09 00 00 75 62 6a 66 01 00 00 29 81 72 70 09 00 00 7d 72 orm.ro...h/jb...ubjf...).rp...}r
d7a0 71 09 00 00 28 68 2e 58 10 00 00 00 60 70 61 63 6b 61 67 65 2e 6d 6f 64 75 6c 65 60 72 72 09 00 q...(h.X....`package.module`rr..
d7c0 00 68 37 7d 72 73 09 00 00 28 68 39 5d 72 74 09 00 00 68 3b 5d 72 75 09 00 00 68 3d 5d 72 76 09 .h7}rs...(h9]rt...h;]ru...h=]rv.
d7e0 00 00 68 3f 5d 72 77 09 00 00 68 41 5d 72 78 09 00 00 75 68 2f 6a 62 09 00 00 68 29 5d 72 79 09 ..h?]rw...hA]rx...uh/jb...h)]ry.
d800 00 00 68 52 58 0e 00 00 00 70 61 63 6b 61 67 65 2e 6d 6f 64 75 6c 65 72 7a 09 00 00 85 81 72 7b ..hRX....package.modulerz.....r{
d820 09 00 00 7d 72 7c 09 00 00 28 68 2e 55 00 68 2f 6a 70 09 00 00 75 62 61 68 35 6a 74 01 00 00 75 ...}r|...(h.U.h/jp...ubah5jt...u
d840 62 68 52 58 0b 00 00 00 20 69 66 20 6e 65 65 64 65 64 3a 72 7d 09 00 00 85 81 72 7e 09 00 00 7d bhRX.....if.needed:r}.....r~...}
d860 72 7f 09 00 00 28 68 2e 58 0b 00 00 00 20 69 66 20 6e 65 65 64 65 64 3a 72 80 09 00 00 68 2f 6a r....(h.X.....if.needed:r....h/j
d880 62 09 00 00 75 62 65 75 62 6a 44 01 00 00 29 81 72 81 09 00 00 7d 72 82 09 00 00 28 68 2e 58 c9 b...ubeubjD...).r....}r....(h.X.
d8a0 00 00 00 3e 3e 3e 20 40 70 61 74 63 68 28 27 70 61 63 6b 61 67 65 2e 6d 6f 64 75 6c 65 2e 43 6c ...>>>.@patch('package.module.Cl
d8c0 61 73 73 4e 61 6d 65 2e 61 74 74 72 69 62 75 74 65 27 2c 20 73 65 6e 74 69 6e 65 6c 2e 61 74 74 assName.attribute',.sentinel.att
d8e0 72 69 62 75 74 65 29 0a 2e 2e 2e 20 64 65 66 20 74 65 73 74 28 29 3a 0a 2e 2e 2e 20 20 20 20 20 ribute).....def.test():.........
d900 66 72 6f 6d 20 70 61 63 6b 61 67 65 2e 6d 6f 64 75 6c 65 20 69 6d 70 6f 72 74 20 43 6c 61 73 73 from.package.module.import.Class
d920 4e 61 6d 65 0a 2e 2e 2e 20 20 20 20 20 61 73 73 65 72 74 20 43 6c 61 73 73 4e 61 6d 65 2e 61 74 Name.........assert.ClassName.at
d940 74 72 69 62 75 74 65 20 3d 3d 20 73 65 6e 74 69 6e 65 6c 2e 61 74 74 72 69 62 75 74 65 0a 2e 2e tribute.==.sentinel.attribute...
d960 2e 0a 3e 3e 3e 20 74 65 73 74 28 29 72 83 09 00 00 68 2f 6a 18 08 00 00 68 30 68 33 68 35 6a 48 ..>>>.test()r....h/j....h0h3h5jH
d980 01 00 00 68 37 7d 72 84 09 00 00 28 55 0c 74 65 73 74 6e 6f 64 65 74 79 70 65 72 85 09 00 00 58 ...h7}r....(U.testnodetyper....X
d9a0 07 00 00 00 64 6f 63 74 65 73 74 72 86 09 00 00 68 84 68 85 68 3f 5d 72 87 09 00 00 68 3d 5d 72 ....doctestr....h.h.h?]r....h=]r
d9c0 88 09 00 00 68 39 5d 72 89 09 00 00 68 3b 5d 72 8a 09 00 00 68 41 5d 72 8b 09 00 00 55 06 67 72 ....h9]r....h;]r....hA]r....U.gr
d9e0 6f 75 70 73 72 8c 09 00 00 5d 72 8d 09 00 00 68 8d 61 68 8e 7d 72 8e 09 00 00 75 68 43 4d 85 01 oupsr....]r....h.ah.}r....uhCM..
da00 68 44 68 02 68 29 5d 72 8f 09 00 00 68 52 58 c9 00 00 00 3e 3e 3e 20 40 70 61 74 63 68 28 27 70 hDh.h)]r....hRX....>>>.@patch('p
da20 61 63 6b 61 67 65 2e 6d 6f 64 75 6c 65 2e 43 6c 61 73 73 4e 61 6d 65 2e 61 74 74 72 69 62 75 74 ackage.module.ClassName.attribut
da40 65 27 2c 20 73 65 6e 74 69 6e 65 6c 2e 61 74 74 72 69 62 75 74 65 29 0a 2e 2e 2e 20 64 65 66 20 e',.sentinel.attribute).....def.
da60 74 65 73 74 28 29 3a 0a 2e 2e 2e 20 20 20 20 20 66 72 6f 6d 20 70 61 63 6b 61 67 65 2e 6d 6f 64 test():.........from.package.mod
da80 75 6c 65 20 69 6d 70 6f 72 74 20 43 6c 61 73 73 4e 61 6d 65 0a 2e 2e 2e 20 20 20 20 20 61 73 73 ule.import.ClassName.........ass
daa0 65 72 74 20 43 6c 61 73 73 4e 61 6d 65 2e 61 74 74 72 69 62 75 74 65 20 3d 3d 20 73 65 6e 74 69 ert.ClassName.attribute.==.senti
dac0 6e 65 6c 2e 61 74 74 72 69 62 75 74 65 0a 2e 2e 2e 0a 3e 3e 3e 20 74 65 73 74 28 29 72 90 09 00 nel.attribute.....>>>.test()r...
dae0 00 85 81 72 91 09 00 00 7d 72 92 09 00 00 28 68 2e 55 00 68 2f 6a 81 09 00 00 75 62 61 75 62 68 ...r....}r....(h.U.h/j....ubaubh
db00 c0 29 81 72 93 09 00 00 7d 72 94 09 00 00 28 68 2e 58 3f 00 00 00 41 20 6e 69 63 65 20 70 61 74 .).r....}r....(h.X?...A.nice.pat
db20 74 65 72 6e 20 69 73 20 74 6f 20 61 63 74 75 61 6c 6c 79 20 64 65 63 6f 72 61 74 65 20 74 65 73 tern.is.to.actually.decorate.tes
db40 74 20 6d 65 74 68 6f 64 73 20 74 68 65 6d 73 65 6c 76 65 73 3a 72 95 09 00 00 68 2f 6a 18 08 00 t.methods.themselves:r....h/j...
db60 00 68 30 68 33 68 35 68 c4 68 37 7d 72 96 09 00 00 28 68 39 5d 72 97 09 00 00 68 3b 5d 72 98 09 .h0h3h5h.h7}r....(h9]r....h;]r..
db80 00 00 68 3d 5d 72 99 09 00 00 68 3f 5d 72 9a 09 00 00 68 41 5d 72 9b 09 00 00 75 68 43 4d 8e 01 ..h=]r....h?]r....hA]r....uhCM..
dba0 68 44 68 02 68 29 5d 72 9c 09 00 00 68 52 58 3f 00 00 00 41 20 6e 69 63 65 20 70 61 74 74 65 72 hDh.h)]r....hRX?...A.nice.patter
dbc0 6e 20 69 73 20 74 6f 20 61 63 74 75 61 6c 6c 79 20 64 65 63 6f 72 61 74 65 20 74 65 73 74 20 6d n.is.to.actually.decorate.test.m
dbe0 65 74 68 6f 64 73 20 74 68 65 6d 73 65 6c 76 65 73 3a 72 9d 09 00 00 85 81 72 9e 09 00 00 7d 72 ethods.themselves:r......r....}r
dc00 9f 09 00 00 28 68 2e 6a 95 09 00 00 68 2f 6a 93 09 00 00 75 62 61 75 62 6a 44 01 00 00 29 81 72 ....(h.j....h/j....ubaubjD...).r
dc20 a0 09 00 00 7d 72 a1 09 00 00 28 68 2e 58 4f 01 00 00 3e 3e 3e 20 63 6c 61 73 73 20 4d 79 54 65 ....}r....(h.XO...>>>.class.MyTe
dc40 73 74 28 75 6e 69 74 74 65 73 74 32 2e 54 65 73 74 43 61 73 65 29 3a 0a 2e 2e 2e 20 20 20 20 20 st(unittest2.TestCase):.........
dc60 40 70 61 74 63 68 2e 6f 62 6a 65 63 74 28 53 6f 6d 65 43 6c 61 73 73 2c 20 27 61 74 74 72 69 62 @patch.object(SomeClass,.'attrib
dc80 75 74 65 27 2c 20 73 65 6e 74 69 6e 65 6c 2e 61 74 74 72 69 62 75 74 65 29 0a 2e 2e 2e 20 20 20 ute',.sentinel.attribute).......
dca0 20 20 64 65 66 20 74 65 73 74 5f 73 6f 6d 65 74 68 69 6e 67 28 73 65 6c 66 29 3a 0a 2e 2e 2e 20 ..def.test_something(self):.....
dcc0 20 20 20 20 20 20 20 20 73 65 6c 66 2e 61 73 73 65 72 74 45 71 75 61 6c 28 53 6f 6d 65 43 6c 61 ........self.assertEqual(SomeCla
dce0 73 73 2e 61 74 74 72 69 62 75 74 65 2c 20 73 65 6e 74 69 6e 65 6c 2e 61 74 74 72 69 62 75 74 65 ss.attribute,.sentinel.attribute
dd00 29 0a 2e 2e 2e 0a 3e 3e 3e 20 6f 72 69 67 69 6e 61 6c 20 3d 20 53 6f 6d 65 43 6c 61 73 73 2e 61 ).....>>>.original.=.SomeClass.a
dd20 74 74 72 69 62 75 74 65 0a 3e 3e 3e 20 4d 79 54 65 73 74 28 27 74 65 73 74 5f 73 6f 6d 65 74 68 ttribute.>>>.MyTest('test_someth
dd40 69 6e 67 27 29 2e 74 65 73 74 5f 73 6f 6d 65 74 68 69 6e 67 28 29 0a 3e 3e 3e 20 61 73 73 65 72 ing').test_something().>>>.asser
dd60 74 20 53 6f 6d 65 43 6c 61 73 73 2e 61 74 74 72 69 62 75 74 65 20 3d 3d 20 6f 72 69 67 69 6e 61 t.SomeClass.attribute.==.origina
dd80 6c 72 a2 09 00 00 68 2f 6a 18 08 00 00 68 30 68 33 68 35 6a 48 01 00 00 68 37 7d 72 a3 09 00 00 lr....h/j....h0h3h5jH...h7}r....
dda0 28 55 0c 74 65 73 74 6e 6f 64 65 74 79 70 65 72 a4 09 00 00 58 07 00 00 00 64 6f 63 74 65 73 74 (U.testnodetyper....X....doctest
ddc0 72 a5 09 00 00 68 84 68 85 68 3f 5d 72 a6 09 00 00 68 3d 5d 72 a7 09 00 00 68 39 5d 72 a8 09 00 r....h.h.h?]r....h=]r....h9]r...
dde0 00 68 3b 5d 72 a9 09 00 00 68 41 5d 72 aa 09 00 00 55 06 67 72 6f 75 70 73 72 ab 09 00 00 5d 72 .h;]r....hA]r....U.groupsr....]r
de00 ac 09 00 00 68 8d 61 68 8e 7d 72 ad 09 00 00 75 68 43 4d 90 01 68 44 68 02 68 29 5d 72 ae 09 00 ....h.ah.}r....uhCM..hDh.h)]r...
de20 00 68 52 58 4f 01 00 00 3e 3e 3e 20 63 6c 61 73 73 20 4d 79 54 65 73 74 28 75 6e 69 74 74 65 73 .hRXO...>>>.class.MyTest(unittes
de40 74 32 2e 54 65 73 74 43 61 73 65 29 3a 0a 2e 2e 2e 20 20 20 20 20 40 70 61 74 63 68 2e 6f 62 6a t2.TestCase):.........@patch.obj
de60 65 63 74 28 53 6f 6d 65 43 6c 61 73 73 2c 20 27 61 74 74 72 69 62 75 74 65 27 2c 20 73 65 6e 74 ect(SomeClass,.'attribute',.sent
de80 69 6e 65 6c 2e 61 74 74 72 69 62 75 74 65 29 0a 2e 2e 2e 20 20 20 20 20 64 65 66 20 74 65 73 74 inel.attribute).........def.test
dea0 5f 73 6f 6d 65 74 68 69 6e 67 28 73 65 6c 66 29 3a 0a 2e 2e 2e 20 20 20 20 20 20 20 20 20 73 65 _something(self):.............se
dec0 6c 66 2e 61 73 73 65 72 74 45 71 75 61 6c 28 53 6f 6d 65 43 6c 61 73 73 2e 61 74 74 72 69 62 75 lf.assertEqual(SomeClass.attribu
dee0 74 65 2c 20 73 65 6e 74 69 6e 65 6c 2e 61 74 74 72 69 62 75 74 65 29 0a 2e 2e 2e 0a 3e 3e 3e 20 te,.sentinel.attribute).....>>>.
df00 6f 72 69 67 69 6e 61 6c 20 3d 20 53 6f 6d 65 43 6c 61 73 73 2e 61 74 74 72 69 62 75 74 65 0a 3e original.=.SomeClass.attribute.>
df20 3e 3e 20 4d 79 54 65 73 74 28 27 74 65 73 74 5f 73 6f 6d 65 74 68 69 6e 67 27 29 2e 74 65 73 74 >>.MyTest('test_something').test
df40 5f 73 6f 6d 65 74 68 69 6e 67 28 29 0a 3e 3e 3e 20 61 73 73 65 72 74 20 53 6f 6d 65 43 6c 61 73 _something().>>>.assert.SomeClas
df60 73 2e 61 74 74 72 69 62 75 74 65 20 3d 3d 20 6f 72 69 67 69 6e 61 6c 72 af 09 00 00 85 81 72 b0 s.attribute.==.originalr......r.
df80 09 00 00 7d 72 b1 09 00 00 28 68 2e 55 00 68 2f 6a a0 09 00 00 75 62 61 75 62 68 c0 29 81 72 b2 ...}r....(h.U.h/j....ubaubh.).r.
dfa0 09 00 00 7d 72 b3 09 00 00 28 68 2e 58 c1 00 00 00 49 66 20 79 6f 75 20 77 61 6e 74 20 74 6f 20 ...}r....(h.X....If.you.want.to.
dfc0 70 61 74 63 68 20 77 69 74 68 20 61 20 4d 6f 63 6b 2c 20 79 6f 75 20 63 61 6e 20 75 73 65 20 60 patch.with.a.Mock,.you.can.use.`
dfe0 70 61 74 63 68 60 20 77 69 74 68 20 6f 6e 6c 79 20 6f 6e 65 20 61 72 67 75 6d 65 6e 74 0a 28 6f patch`.with.only.one.argument.(o
e000 72 20 60 70 61 74 63 68 2e 6f 62 6a 65 63 74 60 20 77 69 74 68 20 74 77 6f 20 61 72 67 75 6d 65 r.`patch.object`.with.two.argume
e020 6e 74 73 29 2e 20 54 68 65 20 6d 6f 63 6b 20 77 69 6c 6c 20 62 65 20 63 72 65 61 74 65 64 20 66 nts)..The.mock.will.be.created.f
e040 6f 72 20 79 6f 75 20 61 6e 64 0a 70 61 73 73 65 64 20 69 6e 74 6f 20 74 68 65 20 74 65 73 74 20 or.you.and.passed.into.the.test.
e060 66 75 6e 63 74 69 6f 6e 20 2f 20 6d 65 74 68 6f 64 3a 72 b4 09 00 00 68 2f 6a 18 08 00 00 68 30 function./.method:r....h/j....h0
e080 68 33 68 35 68 c4 68 37 7d 72 b5 09 00 00 28 68 39 5d 72 b6 09 00 00 68 3b 5d 72 b7 09 00 00 68 h3h5h.h7}r....(h9]r....h;]r....h
e0a0 3d 5d 72 b8 09 00 00 68 3f 5d 72 b9 09 00 00 68 41 5d 72 ba 09 00 00 75 68 43 4d 9b 01 68 44 68 =]r....h?]r....hA]r....uhCM..hDh
e0c0 02 68 29 5d 72 bb 09 00 00 28 68 52 58 2e 00 00 00 49 66 20 79 6f 75 20 77 61 6e 74 20 74 6f 20 .h)]r....(hRX....If.you.want.to.
e0e0 70 61 74 63 68 20 77 69 74 68 20 61 20 4d 6f 63 6b 2c 20 79 6f 75 20 63 61 6e 20 75 73 65 20 72 patch.with.a.Mock,.you.can.use.r
e100 bc 09 00 00 85 81 72 bd 09 00 00 7d 72 be 09 00 00 28 68 2e 58 2e 00 00 00 49 66 20 79 6f 75 20 ......r....}r....(h.X....If.you.
e120 77 61 6e 74 20 74 6f 20 70 61 74 63 68 20 77 69 74 68 20 61 20 4d 6f 63 6b 2c 20 79 6f 75 20 63 want.to.patch.with.a.Mock,.you.c
e140 61 6e 20 75 73 65 20 72 bf 09 00 00 68 2f 6a b2 09 00 00 75 62 6a 66 01 00 00 29 81 72 c0 09 00 an.use.r....h/j....ubjf...).r...
e160 00 7d 72 c1 09 00 00 28 68 2e 58 07 00 00 00 60 70 61 74 63 68 60 72 c2 09 00 00 68 37 7d 72 c3 .}r....(h.X....`patch`r....h7}r.
e180 09 00 00 28 68 39 5d 72 c4 09 00 00 68 3b 5d 72 c5 09 00 00 68 3d 5d 72 c6 09 00 00 68 3f 5d 72 ...(h9]r....h;]r....h=]r....h?]r
e1a0 c7 09 00 00 68 41 5d 72 c8 09 00 00 75 68 2f 6a b2 09 00 00 68 29 5d 72 c9 09 00 00 68 52 58 05 ....hA]r....uh/j....h)]r....hRX.
e1c0 00 00 00 70 61 74 63 68 72 ca 09 00 00 85 81 72 cb 09 00 00 7d 72 cc 09 00 00 28 68 2e 55 00 68 ...patchr......r....}r....(h.U.h
e1e0 2f 6a c0 09 00 00 75 62 61 68 35 6a 74 01 00 00 75 62 68 52 58 1c 00 00 00 20 77 69 74 68 20 6f /j....ubah5jt...ubhRX.....with.o
e200 6e 6c 79 20 6f 6e 65 20 61 72 67 75 6d 65 6e 74 0a 28 6f 72 20 72 cd 09 00 00 85 81 72 ce 09 00 nly.one.argument.(or.r......r...
e220 00 7d 72 cf 09 00 00 28 68 2e 58 1c 00 00 00 20 77 69 74 68 20 6f 6e 6c 79 20 6f 6e 65 20 61 72 .}r....(h.X.....with.only.one.ar
e240 67 75 6d 65 6e 74 0a 28 6f 72 20 72 d0 09 00 00 68 2f 6a b2 09 00 00 75 62 6a 66 01 00 00 29 81 gument.(or.r....h/j....ubjf...).
e260 72 d1 09 00 00 7d 72 d2 09 00 00 28 68 2e 58 0e 00 00 00 60 70 61 74 63 68 2e 6f 62 6a 65 63 74 r....}r....(h.X....`patch.object
e280 60 72 d3 09 00 00 68 37 7d 72 d4 09 00 00 28 68 39 5d 72 d5 09 00 00 68 3b 5d 72 d6 09 00 00 68 `r....h7}r....(h9]r....h;]r....h
e2a0 3d 5d 72 d7 09 00 00 68 3f 5d 72 d8 09 00 00 68 41 5d 72 d9 09 00 00 75 68 2f 6a b2 09 00 00 68 =]r....h?]r....hA]r....uh/j....h
e2c0 29 5d 72 da 09 00 00 68 52 58 0c 00 00 00 70 61 74 63 68 2e 6f 62 6a 65 63 74 72 db 09 00 00 85 )]r....hRX....patch.objectr.....
e2e0 81 72 dc 09 00 00 7d 72 dd 09 00 00 28 68 2e 55 00 68 2f 6a d1 09 00 00 75 62 61 68 35 6a 74 01 .r....}r....(h.U.h/j....ubah5jt.
e300 00 00 75 62 68 52 58 62 00 00 00 20 77 69 74 68 20 74 77 6f 20 61 72 67 75 6d 65 6e 74 73 29 2e ..ubhRXb....with.two.arguments).
e320 20 54 68 65 20 6d 6f 63 6b 20 77 69 6c 6c 20 62 65 20 63 72 65 61 74 65 64 20 66 6f 72 20 79 6f .The.mock.will.be.created.for.yo
e340 75 20 61 6e 64 0a 70 61 73 73 65 64 20 69 6e 74 6f 20 74 68 65 20 74 65 73 74 20 66 75 6e 63 74 u.and.passed.into.the.test.funct
e360 69 6f 6e 20 2f 20 6d 65 74 68 6f 64 3a 72 de 09 00 00 85 81 72 df 09 00 00 7d 72 e0 09 00 00 28 ion./.method:r......r....}r....(
e380 68 2e 58 62 00 00 00 20 77 69 74 68 20 74 77 6f 20 61 72 67 75 6d 65 6e 74 73 29 2e 20 54 68 65 h.Xb....with.two.arguments)..The
e3a0 20 6d 6f 63 6b 20 77 69 6c 6c 20 62 65 20 63 72 65 61 74 65 64 20 66 6f 72 20 79 6f 75 20 61 6e .mock.will.be.created.for.you.an
e3c0 64 0a 70 61 73 73 65 64 20 69 6e 74 6f 20 74 68 65 20 74 65 73 74 20 66 75 6e 63 74 69 6f 6e 20 d.passed.into.the.test.function.
e3e0 2f 20 6d 65 74 68 6f 64 3a 72 e1 09 00 00 68 2f 6a b2 09 00 00 75 62 65 75 62 6a 44 01 00 00 29 /.method:r....h/j....ubeubjD...)
e400 81 72 e2 09 00 00 7d 72 e3 09 00 00 28 68 2e 58 0b 01 00 00 3e 3e 3e 20 63 6c 61 73 73 20 4d 79 .r....}r....(h.X....>>>.class.My
e420 54 65 73 74 28 75 6e 69 74 74 65 73 74 32 2e 54 65 73 74 43 61 73 65 29 3a 0a 2e 2e 2e 20 20 20 Test(unittest2.TestCase):.......
e440 20 20 40 70 61 74 63 68 2e 6f 62 6a 65 63 74 28 53 6f 6d 65 43 6c 61 73 73 2c 20 27 73 74 61 74 ..@patch.object(SomeClass,.'stat
e460 69 63 5f 6d 65 74 68 6f 64 27 29 0a 2e 2e 2e 20 20 20 20 20 64 65 66 20 74 65 73 74 5f 73 6f 6d ic_method').........def.test_som
e480 65 74 68 69 6e 67 28 73 65 6c 66 2c 20 6d 6f 63 6b 5f 6d 65 74 68 6f 64 29 3a 0a 2e 2e 2e 20 20 ething(self,.mock_method):......
e4a0 20 20 20 20 20 20 20 53 6f 6d 65 43 6c 61 73 73 2e 73 74 61 74 69 63 5f 6d 65 74 68 6f 64 28 29 .......SomeClass.static_method()
e4c0 0a 2e 2e 2e 20 20 20 20 20 20 20 20 20 6d 6f 63 6b 5f 6d 65 74 68 6f 64 2e 61 73 73 65 72 74 5f .............mock_method.assert_
e4e0 63 61 6c 6c 65 64 5f 77 69 74 68 28 29 0a 2e 2e 2e 0a 3e 3e 3e 20 4d 79 54 65 73 74 28 27 74 65 called_with().....>>>.MyTest('te
e500 73 74 5f 73 6f 6d 65 74 68 69 6e 67 27 29 2e 74 65 73 74 5f 73 6f 6d 65 74 68 69 6e 67 28 29 72 st_something').test_something()r
e520 e4 09 00 00 68 2f 6a 18 08 00 00 68 30 68 33 68 35 6a 48 01 00 00 68 37 7d 72 e5 09 00 00 28 55 ....h/j....h0h3h5jH...h7}r....(U
e540 0c 74 65 73 74 6e 6f 64 65 74 79 70 65 72 e6 09 00 00 58 07 00 00 00 64 6f 63 74 65 73 74 72 e7 .testnodetyper....X....doctestr.
e560 09 00 00 68 84 68 85 68 3f 5d 72 e8 09 00 00 68 3d 5d 72 e9 09 00 00 68 39 5d 72 ea 09 00 00 68 ...h.h.h?]r....h=]r....h9]r....h
e580 3b 5d 72 eb 09 00 00 68 41 5d 72 ec 09 00 00 55 06 67 72 6f 75 70 73 72 ed 09 00 00 5d 72 ee 09 ;]r....hA]r....U.groupsr....]r..
e5a0 00 00 68 8d 61 68 8e 7d 72 ef 09 00 00 75 68 43 4d 9f 01 68 44 68 02 68 29 5d 72 f0 09 00 00 68 ..h.ah.}r....uhCM..hDh.h)]r....h
e5c0 52 58 0b 01 00 00 3e 3e 3e 20 63 6c 61 73 73 20 4d 79 54 65 73 74 28 75 6e 69 74 74 65 73 74 32 RX....>>>.class.MyTest(unittest2
e5e0 2e 54 65 73 74 43 61 73 65 29 3a 0a 2e 2e 2e 20 20 20 20 20 40 70 61 74 63 68 2e 6f 62 6a 65 63 .TestCase):.........@patch.objec
e600 74 28 53 6f 6d 65 43 6c 61 73 73 2c 20 27 73 74 61 74 69 63 5f 6d 65 74 68 6f 64 27 29 0a 2e 2e t(SomeClass,.'static_method')...
e620 2e 20 20 20 20 20 64 65 66 20 74 65 73 74 5f 73 6f 6d 65 74 68 69 6e 67 28 73 65 6c 66 2c 20 6d ......def.test_something(self,.m
e640 6f 63 6b 5f 6d 65 74 68 6f 64 29 3a 0a 2e 2e 2e 20 20 20 20 20 20 20 20 20 53 6f 6d 65 43 6c 61 ock_method):.............SomeCla
e660 73 73 2e 73 74 61 74 69 63 5f 6d 65 74 68 6f 64 28 29 0a 2e 2e 2e 20 20 20 20 20 20 20 20 20 6d ss.static_method().............m
e680 6f 63 6b 5f 6d 65 74 68 6f 64 2e 61 73 73 65 72 74 5f 63 61 6c 6c 65 64 5f 77 69 74 68 28 29 0a ock_method.assert_called_with().
e6a0 2e 2e 2e 0a 3e 3e 3e 20 4d 79 54 65 73 74 28 27 74 65 73 74 5f 73 6f 6d 65 74 68 69 6e 67 27 29 ....>>>.MyTest('test_something')
e6c0 2e 74 65 73 74 5f 73 6f 6d 65 74 68 69 6e 67 28 29 72 f1 09 00 00 85 81 72 f2 09 00 00 7d 72 f3 .test_something()r......r....}r.
e6e0 09 00 00 28 68 2e 55 00 68 2f 6a e2 09 00 00 75 62 61 75 62 68 c0 29 81 72 f4 09 00 00 7d 72 f5 ...(h.U.h/j....ubaubh.).r....}r.
e700 09 00 00 28 68 2e 58 3e 00 00 00 59 6f 75 20 63 61 6e 20 73 74 61 63 6b 20 75 70 20 6d 75 6c 74 ...(h.X>...You.can.stack.up.mult
e720 69 70 6c 65 20 70 61 74 63 68 20 64 65 63 6f 72 61 74 6f 72 73 20 75 73 69 6e 67 20 74 68 69 73 iple.patch.decorators.using.this
e740 20 70 61 74 74 65 72 6e 3a 72 f6 09 00 00 68 2f 6a 18 08 00 00 68 30 68 33 68 35 68 c4 68 37 7d .pattern:r....h/j....h0h3h5h.h7}
e760 72 f7 09 00 00 28 68 39 5d 72 f8 09 00 00 68 3b 5d 72 f9 09 00 00 68 3d 5d 72 fa 09 00 00 68 3f r....(h9]r....h;]r....h=]r....h?
e780 5d 72 fb 09 00 00 68 41 5d 72 fc 09 00 00 75 68 43 4d a9 01 68 44 68 02 68 29 5d 72 fd 09 00 00 ]r....hA]r....uhCM..hDh.h)]r....
e7a0 68 52 58 3e 00 00 00 59 6f 75 20 63 61 6e 20 73 74 61 63 6b 20 75 70 20 6d 75 6c 74 69 70 6c 65 hRX>...You.can.stack.up.multiple
e7c0 20 70 61 74 63 68 20 64 65 63 6f 72 61 74 6f 72 73 20 75 73 69 6e 67 20 74 68 69 73 20 70 61 74 .patch.decorators.using.this.pat
e7e0 74 65 72 6e 3a 72 fe 09 00 00 85 81 72 ff 09 00 00 7d 72 00 0a 00 00 28 68 2e 6a f6 09 00 00 68 tern:r......r....}r....(h.j....h
e800 2f 6a f4 09 00 00 75 62 61 75 62 6a 44 01 00 00 29 81 72 01 0a 00 00 7d 72 02 0a 00 00 28 68 2e /j....ubaubjD...).r....}r....(h.
e820 58 73 01 00 00 3e 3e 3e 20 63 6c 61 73 73 20 4d 79 54 65 73 74 28 75 6e 69 74 74 65 73 74 32 2e Xs...>>>.class.MyTest(unittest2.
e840 54 65 73 74 43 61 73 65 29 3a 0a 2e 2e 2e 20 20 20 20 20 40 70 61 74 63 68 28 27 70 61 63 6b 61 TestCase):.........@patch('packa
e860 67 65 2e 6d 6f 64 75 6c 65 2e 43 6c 61 73 73 4e 61 6d 65 31 27 29 0a 2e 2e 2e 20 20 20 20 20 40 ge.module.ClassName1').........@
e880 70 61 74 63 68 28 27 70 61 63 6b 61 67 65 2e 6d 6f 64 75 6c 65 2e 43 6c 61 73 73 4e 61 6d 65 32 patch('package.module.ClassName2
e8a0 27 29 0a 2e 2e 2e 20 20 20 20 20 64 65 66 20 74 65 73 74 5f 73 6f 6d 65 74 68 69 6e 67 28 73 65 ').........def.test_something(se
e8c0 6c 66 2c 20 4d 6f 63 6b 43 6c 61 73 73 32 2c 20 4d 6f 63 6b 43 6c 61 73 73 31 29 3a 0a 2e 2e 2e lf,.MockClass2,.MockClass1):....
e8e0 20 20 20 20 20 20 20 20 20 73 65 6c 66 2e 61 73 73 65 72 74 54 72 75 65 28 70 61 63 6b 61 67 65 .........self.assertTrue(package
e900 2e 6d 6f 64 75 6c 65 2e 43 6c 61 73 73 4e 61 6d 65 31 20 69 73 20 4d 6f 63 6b 43 6c 61 73 73 31 .module.ClassName1.is.MockClass1
e920 29 0a 2e 2e 2e 20 20 20 20 20 20 20 20 20 73 65 6c 66 2e 61 73 73 65 72 74 54 72 75 65 28 70 61 ).............self.assertTrue(pa
e940 63 6b 61 67 65 2e 6d 6f 64 75 6c 65 2e 43 6c 61 73 73 4e 61 6d 65 32 20 69 73 20 4d 6f 63 6b 43 ckage.module.ClassName2.is.MockC
e960 6c 61 73 73 32 29 0a 2e 2e 2e 0a 3e 3e 3e 20 4d 79 54 65 73 74 28 27 74 65 73 74 5f 73 6f 6d 65 lass2).....>>>.MyTest('test_some
e980 74 68 69 6e 67 27 29 2e 74 65 73 74 5f 73 6f 6d 65 74 68 69 6e 67 28 29 72 03 0a 00 00 68 2f 6a thing').test_something()r....h/j
e9a0 18 08 00 00 68 30 68 33 68 35 6a 48 01 00 00 68 37 7d 72 04 0a 00 00 28 55 0c 74 65 73 74 6e 6f ....h0h3h5jH...h7}r....(U.testno
e9c0 64 65 74 79 70 65 72 05 0a 00 00 58 07 00 00 00 64 6f 63 74 65 73 74 72 06 0a 00 00 68 84 68 85 detyper....X....doctestr....h.h.
e9e0 68 3f 5d 72 07 0a 00 00 68 3d 5d 72 08 0a 00 00 68 39 5d 72 09 0a 00 00 68 3b 5d 72 0a 0a 00 00 h?]r....h=]r....h9]r....h;]r....
ea00 68 41 5d 72 0b 0a 00 00 55 06 67 72 6f 75 70 73 72 0c 0a 00 00 5d 72 0d 0a 00 00 68 8d 61 68 8e hA]r....U.groupsr....]r....h.ah.
ea20 7d 72 0e 0a 00 00 75 68 43 4d ab 01 68 44 68 02 68 29 5d 72 0f 0a 00 00 68 52 58 73 01 00 00 3e }r....uhCM..hDh.h)]r....hRXs...>
ea40 3e 3e 20 63 6c 61 73 73 20 4d 79 54 65 73 74 28 75 6e 69 74 74 65 73 74 32 2e 54 65 73 74 43 61 >>.class.MyTest(unittest2.TestCa
ea60 73 65 29 3a 0a 2e 2e 2e 20 20 20 20 20 40 70 61 74 63 68 28 27 70 61 63 6b 61 67 65 2e 6d 6f 64 se):.........@patch('package.mod
ea80 75 6c 65 2e 43 6c 61 73 73 4e 61 6d 65 31 27 29 0a 2e 2e 2e 20 20 20 20 20 40 70 61 74 63 68 28 ule.ClassName1').........@patch(
eaa0 27 70 61 63 6b 61 67 65 2e 6d 6f 64 75 6c 65 2e 43 6c 61 73 73 4e 61 6d 65 32 27 29 0a 2e 2e 2e 'package.module.ClassName2')....
eac0 20 20 20 20 20 64 65 66 20 74 65 73 74 5f 73 6f 6d 65 74 68 69 6e 67 28 73 65 6c 66 2c 20 4d 6f .....def.test_something(self,.Mo
eae0 63 6b 43 6c 61 73 73 32 2c 20 4d 6f 63 6b 43 6c 61 73 73 31 29 3a 0a 2e 2e 2e 20 20 20 20 20 20 ckClass2,.MockClass1):..........
eb00 20 20 20 73 65 6c 66 2e 61 73 73 65 72 74 54 72 75 65 28 70 61 63 6b 61 67 65 2e 6d 6f 64 75 6c ...self.assertTrue(package.modul
eb20 65 2e 43 6c 61 73 73 4e 61 6d 65 31 20 69 73 20 4d 6f 63 6b 43 6c 61 73 73 31 29 0a 2e 2e 2e 20 e.ClassName1.is.MockClass1).....
eb40 20 20 20 20 20 20 20 20 73 65 6c 66 2e 61 73 73 65 72 74 54 72 75 65 28 70 61 63 6b 61 67 65 2e ........self.assertTrue(package.
eb60 6d 6f 64 75 6c 65 2e 43 6c 61 73 73 4e 61 6d 65 32 20 69 73 20 4d 6f 63 6b 43 6c 61 73 73 32 29 module.ClassName2.is.MockClass2)
eb80 0a 2e 2e 2e 0a 3e 3e 3e 20 4d 79 54 65 73 74 28 27 74 65 73 74 5f 73 6f 6d 65 74 68 69 6e 67 27 .....>>>.MyTest('test_something'
eba0 29 2e 74 65 73 74 5f 73 6f 6d 65 74 68 69 6e 67 28 29 72 10 0a 00 00 85 81 72 11 0a 00 00 7d 72 ).test_something()r......r....}r
ebc0 12 0a 00 00 28 68 2e 55 00 68 2f 6a 01 0a 00 00 75 62 61 75 62 68 c0 29 81 72 13 0a 00 00 7d 72 ....(h.U.h/j....ubaubh.).r....}r
ebe0 14 0a 00 00 28 68 2e 58 19 01 00 00 57 68 65 6e 20 79 6f 75 20 6e 65 73 74 20 70 61 74 63 68 20 ....(h.X....When.you.nest.patch.
ec00 64 65 63 6f 72 61 74 6f 72 73 20 74 68 65 20 6d 6f 63 6b 73 20 61 72 65 20 70 61 73 73 65 64 20 decorators.the.mocks.are.passed.
ec20 69 6e 20 74 6f 20 74 68 65 20 64 65 63 6f 72 61 74 65 64 0a 66 75 6e 63 74 69 6f 6e 20 69 6e 20 in.to.the.decorated.function.in.
ec40 74 68 65 20 73 61 6d 65 20 6f 72 64 65 72 20 74 68 65 79 20 61 70 70 6c 69 65 64 20 28 74 68 65 the.same.order.they.applied.(the
ec60 20 6e 6f 72 6d 61 6c 20 2a 70 79 74 68 6f 6e 2a 20 6f 72 64 65 72 20 74 68 61 74 0a 64 65 63 6f .normal.*python*.order.that.deco
ec80 72 61 74 6f 72 73 20 61 72 65 20 61 70 70 6c 69 65 64 29 2e 20 54 68 69 73 20 6d 65 61 6e 73 20 rators.are.applied)..This.means.
eca0 66 72 6f 6d 20 74 68 65 20 62 6f 74 74 6f 6d 20 75 70 2c 20 73 6f 20 69 6e 20 74 68 65 20 65 78 from.the.bottom.up,.so.in.the.ex
ecc0 61 6d 70 6c 65 0a 61 62 6f 76 65 20 74 68 65 20 6d 6f 63 6b 20 66 6f 72 20 60 74 65 73 74 5f 6d ample.above.the.mock.for.`test_m
ece0 6f 64 75 6c 65 2e 43 6c 61 73 73 4e 61 6d 65 32 60 20 69 73 20 70 61 73 73 65 64 20 69 6e 20 66 odule.ClassName2`.is.passed.in.f
ed00 69 72 73 74 2e 72 15 0a 00 00 68 2f 6a 18 08 00 00 68 30 68 33 68 35 68 c4 68 37 7d 72 16 0a 00 irst.r....h/j....h0h3h5h.h7}r...
ed20 00 28 68 39 5d 72 17 0a 00 00 68 3b 5d 72 18 0a 00 00 68 3d 5d 72 19 0a 00 00 68 3f 5d 72 1a 0a .(h9]r....h;]r....h=]r....h?]r..
ed40 00 00 68 41 5d 72 1b 0a 00 00 75 68 43 4d b6 01 68 44 68 02 68 29 5d 72 1c 0a 00 00 28 68 52 58 ..hA]r....uhCM..hDh.h)]r....(hRX
ed60 7c 00 00 00 57 68 65 6e 20 79 6f 75 20 6e 65 73 74 20 70 61 74 63 68 20 64 65 63 6f 72 61 74 6f |...When.you.nest.patch.decorato
ed80 72 73 20 74 68 65 20 6d 6f 63 6b 73 20 61 72 65 20 70 61 73 73 65 64 20 69 6e 20 74 6f 20 74 68 rs.the.mocks.are.passed.in.to.th
eda0 65 20 64 65 63 6f 72 61 74 65 64 0a 66 75 6e 63 74 69 6f 6e 20 69 6e 20 74 68 65 20 73 61 6d 65 e.decorated.function.in.the.same
edc0 20 6f 72 64 65 72 20 74 68 65 79 20 61 70 70 6c 69 65 64 20 28 74 68 65 20 6e 6f 72 6d 61 6c 20 .order.they.applied.(the.normal.
ede0 72 1d 0a 00 00 85 81 72 1e 0a 00 00 7d 72 1f 0a 00 00 28 68 2e 58 7c 00 00 00 57 68 65 6e 20 79 r......r....}r....(h.X|...When.y
ee00 6f 75 20 6e 65 73 74 20 70 61 74 63 68 20 64 65 63 6f 72 61 74 6f 72 73 20 74 68 65 20 6d 6f 63 ou.nest.patch.decorators.the.moc
ee20 6b 73 20 61 72 65 20 70 61 73 73 65 64 20 69 6e 20 74 6f 20 74 68 65 20 64 65 63 6f 72 61 74 65 ks.are.passed.in.to.the.decorate
ee40 64 0a 66 75 6e 63 74 69 6f 6e 20 69 6e 20 74 68 65 20 73 61 6d 65 20 6f 72 64 65 72 20 74 68 65 d.function.in.the.same.order.the
ee60 79 20 61 70 70 6c 69 65 64 20 28 74 68 65 20 6e 6f 72 6d 61 6c 20 72 20 0a 00 00 68 2f 6a 13 0a y.applied.(the.normal.r....h/j..
ee80 00 00 75 62 6a a4 03 00 00 29 81 72 21 0a 00 00 7d 72 22 0a 00 00 28 68 2e 58 08 00 00 00 2a 70 ..ubj....).r!...}r"...(h.X....*p
eea0 79 74 68 6f 6e 2a 72 23 0a 00 00 68 37 7d 72 24 0a 00 00 28 68 39 5d 72 25 0a 00 00 68 3b 5d 72 ython*r#...h7}r$...(h9]r%...h;]r
eec0 26 0a 00 00 68 3d 5d 72 27 0a 00 00 68 3f 5d 72 28 0a 00 00 68 41 5d 72 29 0a 00 00 75 68 2f 6a &...h=]r'...h?]r(...hA]r)...uh/j
eee0 13 0a 00 00 68 29 5d 72 2a 0a 00 00 68 52 58 06 00 00 00 70 79 74 68 6f 6e 72 2b 0a 00 00 85 81 ....h)]r*...hRX....pythonr+.....
ef00 72 2c 0a 00 00 7d 72 2d 0a 00 00 28 68 2e 55 00 68 2f 6a 21 0a 00 00 75 62 61 68 35 6a b2 03 00 r,...}r-...(h.U.h/j!...ubah5j...
ef20 00 75 62 68 52 58 69 00 00 00 20 6f 72 64 65 72 20 74 68 61 74 0a 64 65 63 6f 72 61 74 6f 72 73 .ubhRXi....order.that.decorators
ef40 20 61 72 65 20 61 70 70 6c 69 65 64 29 2e 20 54 68 69 73 20 6d 65 61 6e 73 20 66 72 6f 6d 20 74 .are.applied)..This.means.from.t
ef60 68 65 20 62 6f 74 74 6f 6d 20 75 70 2c 20 73 6f 20 69 6e 20 74 68 65 20 65 78 61 6d 70 6c 65 0a he.bottom.up,.so.in.the.example.
ef80 61 62 6f 76 65 20 74 68 65 20 6d 6f 63 6b 20 66 6f 72 20 72 2e 0a 00 00 85 81 72 2f 0a 00 00 7d above.the.mock.for.r......r/...}
efa0 72 30 0a 00 00 28 68 2e 58 69 00 00 00 20 6f 72 64 65 72 20 74 68 61 74 0a 64 65 63 6f 72 61 74 r0...(h.Xi....order.that.decorat
efc0 6f 72 73 20 61 72 65 20 61 70 70 6c 69 65 64 29 2e 20 54 68 69 73 20 6d 65 61 6e 73 20 66 72 6f ors.are.applied)..This.means.fro
efe0 6d 20 74 68 65 20 62 6f 74 74 6f 6d 20 75 70 2c 20 73 6f 20 69 6e 20 74 68 65 20 65 78 61 6d 70 m.the.bottom.up,.so.in.the.examp
f000 6c 65 0a 61 62 6f 76 65 20 74 68 65 20 6d 6f 63 6b 20 66 6f 72 20 72 31 0a 00 00 68 2f 6a 13 0a le.above.the.mock.for.r1...h/j..
f020 00 00 75 62 6a 66 01 00 00 29 81 72 32 0a 00 00 7d 72 33 0a 00 00 28 68 2e 58 18 00 00 00 60 74 ..ubjf...).r2...}r3...(h.X....`t
f040 65 73 74 5f 6d 6f 64 75 6c 65 2e 43 6c 61 73 73 4e 61 6d 65 32 60 72 34 0a 00 00 68 37 7d 72 35 est_module.ClassName2`r4...h7}r5
f060 0a 00 00 28 68 39 5d 72 36 0a 00 00 68 3b 5d 72 37 0a 00 00 68 3d 5d 72 38 0a 00 00 68 3f 5d 72 ...(h9]r6...h;]r7...h=]r8...h?]r
f080 39 0a 00 00 68 41 5d 72 3a 0a 00 00 75 68 2f 6a 13 0a 00 00 68 29 5d 72 3b 0a 00 00 68 52 58 16 9...hA]r:...uh/j....h)]r;...hRX.
f0a0 00 00 00 74 65 73 74 5f 6d 6f 64 75 6c 65 2e 43 6c 61 73 73 4e 61 6d 65 32 72 3c 0a 00 00 85 81 ...test_module.ClassName2r<.....
f0c0 72 3d 0a 00 00 7d 72 3e 0a 00 00 28 68 2e 55 00 68 2f 6a 32 0a 00 00 75 62 61 68 35 6a 74 01 00 r=...}r>...(h.U.h/j2...ubah5jt..
f0e0 00 75 62 68 52 58 14 00 00 00 20 69 73 20 70 61 73 73 65 64 20 69 6e 20 66 69 72 73 74 2e 72 3f .ubhRX.....is.passed.in.first.r?
f100 0a 00 00 85 81 72 40 0a 00 00 7d 72 41 0a 00 00 28 68 2e 58 14 00 00 00 20 69 73 20 70 61 73 73 .....r@...}rA...(h.X.....is.pass
f120 65 64 20 69 6e 20 66 69 72 73 74 2e 72 42 0a 00 00 68 2f 6a 13 0a 00 00 75 62 65 75 62 68 c0 29 ed.in.first.rB...h/j....ubeubh.)
f140 81 72 43 0a 00 00 7d 72 44 0a 00 00 28 68 2e 58 9e 00 00 00 54 68 65 72 65 20 69 73 20 61 6c 73 .rC...}rD...(h.X....There.is.als
f160 6f 20 3a 66 75 6e 63 3a 60 70 61 74 63 68 2e 64 69 63 74 60 20 66 6f 72 20 73 65 74 74 69 6e 67 o.:func:`patch.dict`.for.setting
f180 20 76 61 6c 75 65 73 20 69 6e 20 61 20 64 69 63 74 69 6f 6e 61 72 79 20 6a 75 73 74 0a 64 75 72 .values.in.a.dictionary.just.dur
f1a0 69 6e 67 20 61 20 73 63 6f 70 65 20 61 6e 64 20 72 65 73 74 6f 72 69 6e 67 20 74 68 65 20 64 69 ing.a.scope.and.restoring.the.di
f1c0 63 74 69 6f 6e 61 72 79 20 74 6f 20 69 74 73 20 6f 72 69 67 69 6e 61 6c 20 73 74 61 74 65 20 77 ctionary.to.its.original.state.w
f1e0 68 65 6e 20 74 68 65 20 74 65 73 74 0a 65 6e 64 73 3a 72 45 0a 00 00 68 2f 6a 18 08 00 00 68 30 hen.the.test.ends:rE...h/j....h0
f200 68 33 68 35 68 c4 68 37 7d 72 46 0a 00 00 28 68 39 5d 72 47 0a 00 00 68 3b 5d 72 48 0a 00 00 68 h3h5h.h7}rF...(h9]rG...h;]rH...h
f220 3d 5d 72 49 0a 00 00 68 3f 5d 72 4a 0a 00 00 68 41 5d 72 4b 0a 00 00 75 68 43 4d bb 01 68 44 68 =]rI...h?]rJ...hA]rK...uhCM..hDh
f240 02 68 29 5d 72 4c 0a 00 00 28 68 52 58 0e 00 00 00 54 68 65 72 65 20 69 73 20 61 6c 73 6f 20 72 .h)]rL...(hRX....There.is.also.r
f260 4d 0a 00 00 85 81 72 4e 0a 00 00 7d 72 4f 0a 00 00 28 68 2e 58 0e 00 00 00 54 68 65 72 65 20 69 M.....rN...}rO...(h.X....There.i
f280 73 20 61 6c 73 6f 20 72 50 0a 00 00 68 2f 6a 43 0a 00 00 75 62 68 d0 29 81 72 51 0a 00 00 7d 72 s.also.rP...h/jC...ubh.).rQ...}r
f2a0 52 0a 00 00 28 68 2e 58 12 00 00 00 3a 66 75 6e 63 3a 60 70 61 74 63 68 2e 64 69 63 74 60 72 53 R...(h.X....:func:`patch.dict`rS
f2c0 0a 00 00 68 2f 6a 43 0a 00 00 68 30 68 33 68 35 68 d4 68 37 7d 72 54 0a 00 00 28 55 07 72 65 66 ...h/jC...h0h3h5h.h7}rT...(U.ref
f2e0 74 79 70 65 72 55 0a 00 00 58 04 00 00 00 66 75 6e 63 72 56 0a 00 00 68 d8 89 68 d9 58 0a 00 00 typerU...X....funcrV...h..h.X...
f300 00 70 61 74 63 68 2e 64 69 63 74 72 57 0a 00 00 55 09 72 65 66 64 6f 6d 61 69 6e 72 58 0a 00 00 .patch.dictrW...U.refdomainrX...
f320 58 02 00 00 00 70 79 72 59 0a 00 00 68 3f 5d 72 5a 0a 00 00 68 3d 5d 72 5b 0a 00 00 55 0b 72 65 X....pyrY...h?]rZ...h=]r[...U.re
f340 66 65 78 70 6c 69 63 69 74 72 5c 0a 00 00 89 68 39 5d 72 5d 0a 00 00 68 3b 5d 72 5e 0a 00 00 68 fexplicitr\....h9]r]...h;]r^...h
f360 41 5d 72 5f 0a 00 00 68 e3 68 e4 68 e5 4e 68 e6 4e 75 68 43 4d bb 01 68 29 5d 72 60 0a 00 00 68 A]r_...h.h.h.Nh.NuhCM..h)]r`...h
f380 e8 29 81 72 61 0a 00 00 7d 72 62 0a 00 00 28 68 2e 6a 53 0a 00 00 68 37 7d 72 63 0a 00 00 28 68 .).ra...}rb...(h.jS...h7}rc...(h
f3a0 39 5d 72 64 0a 00 00 68 3b 5d 72 65 0a 00 00 28 68 ee 6a 59 0a 00 00 58 07 00 00 00 70 79 2d 66 9]rd...h;]re...(h.jY...X....py-f
f3c0 75 6e 63 72 66 0a 00 00 65 68 3d 5d 72 67 0a 00 00 68 3f 5d 72 68 0a 00 00 68 41 5d 72 69 0a 00 uncrf...eh=]rg...h?]rh...hA]ri..
f3e0 00 75 68 2f 6a 51 0a 00 00 68 29 5d 72 6a 0a 00 00 68 52 58 0c 00 00 00 70 61 74 63 68 2e 64 69 .uh/jQ...h)]rj...hRX....patch.di
f400 63 74 28 29 72 6b 0a 00 00 85 81 72 6c 0a 00 00 7d 72 6d 0a 00 00 28 68 2e 55 00 68 2f 6a 61 0a ct()rk.....rl...}rm...(h.U.h/ja.
f420 00 00 75 62 61 68 35 68 f7 75 62 61 75 62 68 52 58 7e 00 00 00 20 66 6f 72 20 73 65 74 74 69 6e ..ubah5h.ubaubhRX~....for.settin
f440 67 20 76 61 6c 75 65 73 20 69 6e 20 61 20 64 69 63 74 69 6f 6e 61 72 79 20 6a 75 73 74 0a 64 75 g.values.in.a.dictionary.just.du
f460 72 69 6e 67 20 61 20 73 63 6f 70 65 20 61 6e 64 20 72 65 73 74 6f 72 69 6e 67 20 74 68 65 20 64 ring.a.scope.and.restoring.the.d
f480 69 63 74 69 6f 6e 61 72 79 20 74 6f 20 69 74 73 20 6f 72 69 67 69 6e 61 6c 20 73 74 61 74 65 20 ictionary.to.its.original.state.
f4a0 77 68 65 6e 20 74 68 65 20 74 65 73 74 0a 65 6e 64 73 3a 72 6e 0a 00 00 85 81 72 6f 0a 00 00 7d when.the.test.ends:rn.....ro...}
f4c0 72 70 0a 00 00 28 68 2e 58 7e 00 00 00 20 66 6f 72 20 73 65 74 74 69 6e 67 20 76 61 6c 75 65 73 rp...(h.X~....for.setting.values
f4e0 20 69 6e 20 61 20 64 69 63 74 69 6f 6e 61 72 79 20 6a 75 73 74 0a 64 75 72 69 6e 67 20 61 20 73 .in.a.dictionary.just.during.a.s
f500 63 6f 70 65 20 61 6e 64 20 72 65 73 74 6f 72 69 6e 67 20 74 68 65 20 64 69 63 74 69 6f 6e 61 72 cope.and.restoring.the.dictionar
f520 79 20 74 6f 20 69 74 73 20 6f 72 69 67 69 6e 61 6c 20 73 74 61 74 65 20 77 68 65 6e 20 74 68 65 y.to.its.original.state.when.the
f540 20 74 65 73 74 0a 65 6e 64 73 3a 72 71 0a 00 00 68 2f 6a 43 0a 00 00 75 62 65 75 62 6a 44 01 00 .test.ends:rq...h/jC...ubeubjD..
f560 00 29 81 72 72 0a 00 00 7d 72 73 0a 00 00 28 68 2e 58 be 00 00 00 3e 3e 3e 20 66 6f 6f 20 3d 20 .).rr...}rs...(h.X....>>>.foo.=.
f580 7b 27 6b 65 79 27 3a 20 27 76 61 6c 75 65 27 7d 0a 3e 3e 3e 20 6f 72 69 67 69 6e 61 6c 20 3d 20 {'key':.'value'}.>>>.original.=.
f5a0 66 6f 6f 2e 63 6f 70 79 28 29 0a 3e 3e 3e 20 77 69 74 68 20 70 61 74 63 68 2e 64 69 63 74 28 66 foo.copy().>>>.with.patch.dict(f
f5c0 6f 6f 2c 20 7b 27 6e 65 77 6b 65 79 27 3a 20 27 6e 65 77 76 61 6c 75 65 27 7d 2c 20 63 6c 65 61 oo,.{'newkey':.'newvalue'},.clea
f5e0 72 3d 54 72 75 65 29 3a 0a 2e 2e 2e 20 20 20 20 20 61 73 73 65 72 74 20 66 6f 6f 20 3d 3d 20 7b r=True):.........assert.foo.==.{
f600 27 6e 65 77 6b 65 79 27 3a 20 27 6e 65 77 76 61 6c 75 65 27 7d 0a 2e 2e 2e 0a 3e 3e 3e 20 61 73 'newkey':.'newvalue'}.....>>>.as
f620 73 65 72 74 20 66 6f 6f 20 3d 3d 20 6f 72 69 67 69 6e 61 6c 72 74 0a 00 00 68 2f 6a 18 08 00 00 sert.foo.==.originalrt...h/j....
f640 68 30 68 33 68 35 6a 48 01 00 00 68 37 7d 72 75 0a 00 00 28 55 0c 74 65 73 74 6e 6f 64 65 74 79 h0h3h5jH...h7}ru...(U.testnodety
f660 70 65 72 76 0a 00 00 58 07 00 00 00 64 6f 63 74 65 73 74 72 77 0a 00 00 68 84 68 85 68 3f 5d 72 perv...X....doctestrw...h.h.h?]r
f680 78 0a 00 00 68 3d 5d 72 79 0a 00 00 68 39 5d 72 7a 0a 00 00 68 3b 5d 72 7b 0a 00 00 68 41 5d 72 x...h=]ry...h9]rz...h;]r{...hA]r
f6a0 7c 0a 00 00 55 06 67 72 6f 75 70 73 72 7d 0a 00 00 5d 72 7e 0a 00 00 68 8d 61 68 8e 7d 72 7f 0a |...U.groupsr}...]r~...h.ah.}r..
f6c0 00 00 75 68 43 4d bf 01 68 44 68 02 68 29 5d 72 80 0a 00 00 68 52 58 be 00 00 00 3e 3e 3e 20 66 ..uhCM..hDh.h)]r....hRX....>>>.f
f6e0 6f 6f 20 3d 20 7b 27 6b 65 79 27 3a 20 27 76 61 6c 75 65 27 7d 0a 3e 3e 3e 20 6f 72 69 67 69 6e oo.=.{'key':.'value'}.>>>.origin
f700 61 6c 20 3d 20 66 6f 6f 2e 63 6f 70 79 28 29 0a 3e 3e 3e 20 77 69 74 68 20 70 61 74 63 68 2e 64 al.=.foo.copy().>>>.with.patch.d
f720 69 63 74 28 66 6f 6f 2c 20 7b 27 6e 65 77 6b 65 79 27 3a 20 27 6e 65 77 76 61 6c 75 65 27 7d 2c ict(foo,.{'newkey':.'newvalue'},
f740 20 63 6c 65 61 72 3d 54 72 75 65 29 3a 0a 2e 2e 2e 20 20 20 20 20 61 73 73 65 72 74 20 66 6f 6f .clear=True):.........assert.foo
f760 20 3d 3d 20 7b 27 6e 65 77 6b 65 79 27 3a 20 27 6e 65 77 76 61 6c 75 65 27 7d 0a 2e 2e 2e 0a 3e .==.{'newkey':.'newvalue'}.....>
f780 3e 3e 20 61 73 73 65 72 74 20 66 6f 6f 20 3d 3d 20 6f 72 69 67 69 6e 61 6c 72 81 0a 00 00 85 81 >>.assert.foo.==.originalr......
f7a0 72 82 0a 00 00 7d 72 83 0a 00 00 28 68 2e 55 00 68 2f 6a 72 0a 00 00 75 62 61 75 62 68 c0 29 81 r....}r....(h.U.h/jr...ubaubh.).
f7c0 72 84 0a 00 00 7d 72 85 0a 00 00 28 68 2e 58 4d 00 00 00 60 70 61 74 63 68 60 2c 20 60 70 61 74 r....}r....(h.XM...`patch`,.`pat
f7e0 63 68 2e 6f 62 6a 65 63 74 60 20 61 6e 64 20 60 70 61 74 63 68 2e 64 69 63 74 60 20 63 61 6e 20 ch.object`.and.`patch.dict`.can.
f800 61 6c 6c 20 62 65 20 75 73 65 64 20 61 73 20 63 6f 6e 74 65 78 74 20 6d 61 6e 61 67 65 72 73 2e all.be.used.as.context.managers.
f820 72 86 0a 00 00 68 2f 6a 18 08 00 00 68 30 68 33 68 35 68 c4 68 37 7d 72 87 0a 00 00 28 68 39 5d r....h/j....h0h3h5h.h7}r....(h9]
f840 72 88 0a 00 00 68 3b 5d 72 89 0a 00 00 68 3d 5d 72 8a 0a 00 00 68 3f 5d 72 8b 0a 00 00 68 41 5d r....h;]r....h=]r....h?]r....hA]
f860 72 8c 0a 00 00 75 68 43 4d c8 01 68 44 68 02 68 29 5d 72 8d 0a 00 00 28 6a 66 01 00 00 29 81 72 r....uhCM..hDh.h)]r....(jf...).r
f880 8e 0a 00 00 7d 72 8f 0a 00 00 28 68 2e 58 07 00 00 00 60 70 61 74 63 68 60 72 90 0a 00 00 68 37 ....}r....(h.X....`patch`r....h7
f8a0 7d 72 91 0a 00 00 28 68 39 5d 72 92 0a 00 00 68 3b 5d 72 93 0a 00 00 68 3d 5d 72 94 0a 00 00 68 }r....(h9]r....h;]r....h=]r....h
f8c0 3f 5d 72 95 0a 00 00 68 41 5d 72 96 0a 00 00 75 68 2f 6a 84 0a 00 00 68 29 5d 72 97 0a 00 00 68 ?]r....hA]r....uh/j....h)]r....h
f8e0 52 58 05 00 00 00 70 61 74 63 68 72 98 0a 00 00 85 81 72 99 0a 00 00 7d 72 9a 0a 00 00 28 68 2e RX....patchr......r....}r....(h.
f900 55 00 68 2f 6a 8e 0a 00 00 75 62 61 68 35 6a 74 01 00 00 75 62 68 52 58 02 00 00 00 2c 20 72 9b U.h/j....ubah5jt...ubhRX....,.r.
f920 0a 00 00 85 81 72 9c 0a 00 00 7d 72 9d 0a 00 00 28 68 2e 58 02 00 00 00 2c 20 72 9e 0a 00 00 68 .....r....}r....(h.X....,.r....h
f940 2f 6a 84 0a 00 00 75 62 6a 66 01 00 00 29 81 72 9f 0a 00 00 7d 72 a0 0a 00 00 28 68 2e 58 0e 00 /j....ubjf...).r....}r....(h.X..
f960 00 00 60 70 61 74 63 68 2e 6f 62 6a 65 63 74 60 72 a1 0a 00 00 68 37 7d 72 a2 0a 00 00 28 68 39 ..`patch.object`r....h7}r....(h9
f980 5d 72 a3 0a 00 00 68 3b 5d 72 a4 0a 00 00 68 3d 5d 72 a5 0a 00 00 68 3f 5d 72 a6 0a 00 00 68 41 ]r....h;]r....h=]r....h?]r....hA
f9a0 5d 72 a7 0a 00 00 75 68 2f 6a 84 0a 00 00 68 29 5d 72 a8 0a 00 00 68 52 58 0c 00 00 00 70 61 74 ]r....uh/j....h)]r....hRX....pat
f9c0 63 68 2e 6f 62 6a 65 63 74 72 a9 0a 00 00 85 81 72 aa 0a 00 00 7d 72 ab 0a 00 00 28 68 2e 55 00 ch.objectr......r....}r....(h.U.
f9e0 68 2f 6a 9f 0a 00 00 75 62 61 68 35 6a 74 01 00 00 75 62 68 52 58 05 00 00 00 20 61 6e 64 20 72 h/j....ubah5jt...ubhRX.....and.r
fa00 ac 0a 00 00 85 81 72 ad 0a 00 00 7d 72 ae 0a 00 00 28 68 2e 58 05 00 00 00 20 61 6e 64 20 72 af ......r....}r....(h.X.....and.r.
fa20 0a 00 00 68 2f 6a 84 0a 00 00 75 62 6a 66 01 00 00 29 81 72 b0 0a 00 00 7d 72 b1 0a 00 00 28 68 ...h/j....ubjf...).r....}r....(h
fa40 2e 58 0c 00 00 00 60 70 61 74 63 68 2e 64 69 63 74 60 72 b2 0a 00 00 68 37 7d 72 b3 0a 00 00 28 .X....`patch.dict`r....h7}r....(
fa60 68 39 5d 72 b4 0a 00 00 68 3b 5d 72 b5 0a 00 00 68 3d 5d 72 b6 0a 00 00 68 3f 5d 72 b7 0a 00 00 h9]r....h;]r....h=]r....h?]r....
fa80 68 41 5d 72 b8 0a 00 00 75 68 2f 6a 84 0a 00 00 68 29 5d 72 b9 0a 00 00 68 52 58 0a 00 00 00 70 hA]r....uh/j....h)]r....hRX....p
faa0 61 74 63 68 2e 64 69 63 74 72 ba 0a 00 00 85 81 72 bb 0a 00 00 7d 72 bc 0a 00 00 28 68 2e 55 00 atch.dictr......r....}r....(h.U.
fac0 68 2f 6a b0 0a 00 00 75 62 61 68 35 6a 74 01 00 00 75 62 68 52 58 25 00 00 00 20 63 61 6e 20 61 h/j....ubah5jt...ubhRX%....can.a
fae0 6c 6c 20 62 65 20 75 73 65 64 20 61 73 20 63 6f 6e 74 65 78 74 20 6d 61 6e 61 67 65 72 73 2e 72 ll.be.used.as.context.managers.r
fb00 bd 0a 00 00 85 81 72 be 0a 00 00 7d 72 bf 0a 00 00 28 68 2e 58 25 00 00 00 20 63 61 6e 20 61 6c ......r....}r....(h.X%....can.al
fb20 6c 20 62 65 20 75 73 65 64 20 61 73 20 63 6f 6e 74 65 78 74 20 6d 61 6e 61 67 65 72 73 2e 72 c0 l.be.used.as.context.managers.r.
fb40 0a 00 00 68 2f 6a 84 0a 00 00 75 62 65 75 62 68 c0 29 81 72 c1 0a 00 00 7d 72 c2 0a 00 00 28 68 ...h/j....ubeubh.).r....}r....(h
fb60 2e 58 7e 00 00 00 57 68 65 72 65 20 79 6f 75 20 75 73 65 20 60 70 61 74 63 68 60 20 74 6f 20 63 .X~...Where.you.use.`patch`.to.c
fb80 72 65 61 74 65 20 61 20 6d 6f 63 6b 20 66 6f 72 20 79 6f 75 2c 20 79 6f 75 20 63 61 6e 20 67 65 reate.a.mock.for.you,.you.can.ge
fba0 74 20 61 20 72 65 66 65 72 65 6e 63 65 20 74 6f 20 74 68 65 0a 6d 6f 63 6b 20 75 73 69 6e 67 20 t.a.reference.to.the.mock.using.
fbc0 74 68 65 20 22 61 73 22 20 66 6f 72 6d 20 6f 66 20 74 68 65 20 77 69 74 68 20 73 74 61 74 65 6d the."as".form.of.the.with.statem
fbe0 65 6e 74 3a 72 c3 0a 00 00 68 2f 6a 18 08 00 00 68 30 68 33 68 35 68 c4 68 37 7d 72 c4 0a 00 00 ent:r....h/j....h0h3h5h.h7}r....
fc00 28 68 39 5d 72 c5 0a 00 00 68 3b 5d 72 c6 0a 00 00 68 3d 5d 72 c7 0a 00 00 68 3f 5d 72 c8 0a 00 (h9]r....h;]r....h=]r....h?]r...
fc20 00 68 41 5d 72 c9 0a 00 00 75 68 43 4d ca 01 68 44 68 02 68 29 5d 72 ca 0a 00 00 28 68 52 58 0e .hA]r....uhCM..hDh.h)]r....(hRX.
fc40 00 00 00 57 68 65 72 65 20 79 6f 75 20 75 73 65 20 72 cb 0a 00 00 85 81 72 cc 0a 00 00 7d 72 cd ...Where.you.use.r......r....}r.
fc60 0a 00 00 28 68 2e 58 0e 00 00 00 57 68 65 72 65 20 79 6f 75 20 75 73 65 20 72 ce 0a 00 00 68 2f ...(h.X....Where.you.use.r....h/
fc80 6a c1 0a 00 00 75 62 6a 66 01 00 00 29 81 72 cf 0a 00 00 7d 72 d0 0a 00 00 28 68 2e 58 07 00 00 j....ubjf...).r....}r....(h.X...
fca0 00 60 70 61 74 63 68 60 72 d1 0a 00 00 68 37 7d 72 d2 0a 00 00 28 68 39 5d 72 d3 0a 00 00 68 3b .`patch`r....h7}r....(h9]r....h;
fcc0 5d 72 d4 0a 00 00 68 3d 5d 72 d5 0a 00 00 68 3f 5d 72 d6 0a 00 00 68 41 5d 72 d7 0a 00 00 75 68 ]r....h=]r....h?]r....hA]r....uh
fce0 2f 6a c1 0a 00 00 68 29 5d 72 d8 0a 00 00 68 52 58 05 00 00 00 70 61 74 63 68 72 d9 0a 00 00 85 /j....h)]r....hRX....patchr.....
fd00 81 72 da 0a 00 00 7d 72 db 0a 00 00 28 68 2e 55 00 68 2f 6a cf 0a 00 00 75 62 61 68 35 6a 74 01 .r....}r....(h.U.h/j....ubah5jt.
fd20 00 00 75 62 68 52 58 69 00 00 00 20 74 6f 20 63 72 65 61 74 65 20 61 20 6d 6f 63 6b 20 66 6f 72 ..ubhRXi....to.create.a.mock.for
fd40 20 79 6f 75 2c 20 79 6f 75 20 63 61 6e 20 67 65 74 20 61 20 72 65 66 65 72 65 6e 63 65 20 74 6f .you,.you.can.get.a.reference.to
fd60 20 74 68 65 0a 6d 6f 63 6b 20 75 73 69 6e 67 20 74 68 65 20 22 61 73 22 20 66 6f 72 6d 20 6f 66 .the.mock.using.the."as".form.of
fd80 20 74 68 65 20 77 69 74 68 20 73 74 61 74 65 6d 65 6e 74 3a 72 dc 0a 00 00 85 81 72 dd 0a 00 00 .the.with.statement:r......r....
fda0 7d 72 de 0a 00 00 28 68 2e 58 69 00 00 00 20 74 6f 20 63 72 65 61 74 65 20 61 20 6d 6f 63 6b 20 }r....(h.Xi....to.create.a.mock.
fdc0 66 6f 72 20 79 6f 75 2c 20 79 6f 75 20 63 61 6e 20 67 65 74 20 61 20 72 65 66 65 72 65 6e 63 65 for.you,.you.can.get.a.reference
fde0 20 74 6f 20 74 68 65 0a 6d 6f 63 6b 20 75 73 69 6e 67 20 74 68 65 20 22 61 73 22 20 66 6f 72 6d .to.the.mock.using.the."as".form
fe00 20 6f 66 20 74 68 65 20 77 69 74 68 20 73 74 61 74 65 6d 65 6e 74 3a 72 df 0a 00 00 68 2f 6a c1 .of.the.with.statement:r....h/j.
fe20 0a 00 00 75 62 65 75 62 6a 44 01 00 00 29 81 72 e0 0a 00 00 7d 72 e1 0a 00 00 28 68 2e 58 28 01 ...ubeubjD...).r....}r....(h.X(.
fe40 00 00 3e 3e 3e 20 63 6c 61 73 73 20 50 72 6f 64 75 63 74 69 6f 6e 43 6c 61 73 73 28 6f 62 6a 65 ..>>>.class.ProductionClass(obje
fe60 63 74 29 3a 0a 2e 2e 2e 20 20 20 20 20 64 65 66 20 6d 65 74 68 6f 64 28 73 65 6c 66 29 3a 0a 2e ct):.........def.method(self):..
fe80 2e 2e 20 20 20 20 20 20 20 20 20 70 61 73 73 0a 2e 2e 2e 0a 3e 3e 3e 20 77 69 74 68 20 70 61 74 ...........pass.....>>>.with.pat
fea0 63 68 2e 6f 62 6a 65 63 74 28 50 72 6f 64 75 63 74 69 6f 6e 43 6c 61 73 73 2c 20 27 6d 65 74 68 ch.object(ProductionClass,.'meth
fec0 6f 64 27 29 20 61 73 20 6d 6f 63 6b 5f 6d 65 74 68 6f 64 3a 0a 2e 2e 2e 20 20 20 20 20 6d 6f 63 od').as.mock_method:.........moc
fee0 6b 5f 6d 65 74 68 6f 64 2e 72 65 74 75 72 6e 5f 76 61 6c 75 65 20 3d 20 4e 6f 6e 65 0a 2e 2e 2e k_method.return_value.=.None....
ff00 20 20 20 20 20 72 65 61 6c 20 3d 20 50 72 6f 64 75 63 74 69 6f 6e 43 6c 61 73 73 28 29 0a 2e 2e .....real.=.ProductionClass()...
ff20 2e 20 20 20 20 20 72 65 61 6c 2e 6d 65 74 68 6f 64 28 31 2c 20 32 2c 20 33 29 0a 2e 2e 2e 0a 3e ......real.method(1,.2,.3).....>
ff40 3e 3e 20 6d 6f 63 6b 5f 6d 65 74 68 6f 64 2e 61 73 73 65 72 74 5f 63 61 6c 6c 65 64 5f 77 69 74 >>.mock_method.assert_called_wit
ff60 68 28 31 2c 20 32 2c 20 33 29 72 e2 0a 00 00 68 2f 6a 18 08 00 00 68 30 68 33 68 35 6a 48 01 00 h(1,.2,.3)r....h/j....h0h3h5jH..
ff80 00 68 37 7d 72 e3 0a 00 00 28 55 0c 74 65 73 74 6e 6f 64 65 74 79 70 65 72 e4 0a 00 00 58 07 00 .h7}r....(U.testnodetyper....X..
ffa0 00 00 64 6f 63 74 65 73 74 72 e5 0a 00 00 68 84 68 85 68 3f 5d 72 e6 0a 00 00 68 3d 5d 72 e7 0a ..doctestr....h.h.h?]r....h=]r..
ffc0 00 00 68 39 5d 72 e8 0a 00 00 68 3b 5d 72 e9 0a 00 00 68 41 5d 72 ea 0a 00 00 55 06 67 72 6f 75 ..h9]r....h;]r....hA]r....U.grou
ffe0 70 73 72 eb 0a 00 00 5d 72 ec 0a 00 00 68 8d 61 68 8e 7d 72 ed 0a 00 00 75 68 43 4d cd 01 68 44 psr....]r....h.ah.}r....uhCM..hD
10000 68 02 68 29 5d 72 ee 0a 00 00 68 52 58 28 01 00 00 3e 3e 3e 20 63 6c 61 73 73 20 50 72 6f 64 75 h.h)]r....hRX(...>>>.class.Produ
10020 63 74 69 6f 6e 43 6c 61 73 73 28 6f 62 6a 65 63 74 29 3a 0a 2e 2e 2e 20 20 20 20 20 64 65 66 20 ctionClass(object):.........def.
10040 6d 65 74 68 6f 64 28 73 65 6c 66 29 3a 0a 2e 2e 2e 20 20 20 20 20 20 20 20 20 70 61 73 73 0a 2e method(self):.............pass..
10060 2e 2e 0a 3e 3e 3e 20 77 69 74 68 20 70 61 74 63 68 2e 6f 62 6a 65 63 74 28 50 72 6f 64 75 63 74 ...>>>.with.patch.object(Product
10080 69 6f 6e 43 6c 61 73 73 2c 20 27 6d 65 74 68 6f 64 27 29 20 61 73 20 6d 6f 63 6b 5f 6d 65 74 68 ionClass,.'method').as.mock_meth
100a0 6f 64 3a 0a 2e 2e 2e 20 20 20 20 20 6d 6f 63 6b 5f 6d 65 74 68 6f 64 2e 72 65 74 75 72 6e 5f 76 od:.........mock_method.return_v
100c0 61 6c 75 65 20 3d 20 4e 6f 6e 65 0a 2e 2e 2e 20 20 20 20 20 72 65 61 6c 20 3d 20 50 72 6f 64 75 alue.=.None.........real.=.Produ
100e0 63 74 69 6f 6e 43 6c 61 73 73 28 29 0a 2e 2e 2e 20 20 20 20 20 72 65 61 6c 2e 6d 65 74 68 6f 64 ctionClass().........real.method
10100 28 31 2c 20 32 2c 20 33 29 0a 2e 2e 2e 0a 3e 3e 3e 20 6d 6f 63 6b 5f 6d 65 74 68 6f 64 2e 61 73 (1,.2,.3).....>>>.mock_method.as
10120 73 65 72 74 5f 63 61 6c 6c 65 64 5f 77 69 74 68 28 31 2c 20 32 2c 20 33 29 72 ef 0a 00 00 85 81 sert_called_with(1,.2,.3)r......
10140 72 f0 0a 00 00 7d 72 f1 0a 00 00 28 68 2e 55 00 68 2f 6a e0 0a 00 00 75 62 61 75 62 68 c0 29 81 r....}r....(h.U.h/j....ubaubh.).
10160 72 f2 0a 00 00 7d 72 f3 0a 00 00 28 68 2e 58 d5 00 00 00 41 73 20 61 6e 20 61 6c 74 65 72 6e 61 r....}r....(h.X....As.an.alterna
10180 74 69 76 65 20 60 70 61 74 63 68 60 2c 20 60 70 61 74 63 68 2e 6f 62 6a 65 63 74 60 20 61 6e 64 tive.`patch`,.`patch.object`.and
101a0 20 60 70 61 74 63 68 2e 64 69 63 74 60 20 63 61 6e 20 62 65 20 75 73 65 64 20 61 73 0a 63 6c 61 .`patch.dict`.can.be.used.as.cla
101c0 73 73 20 64 65 63 6f 72 61 74 6f 72 73 2e 20 57 68 65 6e 20 75 73 65 64 20 69 6e 20 74 68 69 73 ss.decorators..When.used.in.this
101e0 20 77 61 79 20 69 74 20 69 73 20 74 68 65 20 73 61 6d 65 20 61 73 20 61 70 70 6c 79 69 6e 67 20 .way.it.is.the.same.as.applying.
10200 74 68 65 0a 64 65 63 6f 72 61 74 6f 72 20 69 6e 64 76 69 64 75 61 6c 6c 79 20 74 6f 20 65 76 65 the.decorator.indvidually.to.eve
10220 72 79 20 6d 65 74 68 6f 64 20 77 68 6f 73 65 20 6e 61 6d 65 20 73 74 61 72 74 73 20 77 69 74 68 ry.method.whose.name.starts.with
10240 20 22 74 65 73 74 22 2e 72 f4 0a 00 00 68 2f 6a 18 08 00 00 68 30 68 33 68 35 68 c4 68 37 7d 72 ."test".r....h/j....h0h3h5h.h7}r
10260 f5 0a 00 00 28 68 39 5d 72 f6 0a 00 00 68 3b 5d 72 f7 0a 00 00 68 3d 5d 72 f8 0a 00 00 68 3f 5d ....(h9]r....h;]r....h=]r....h?]
10280 72 f9 0a 00 00 68 41 5d 72 fa 0a 00 00 75 68 43 4d db 01 68 44 68 02 68 29 5d 72 fb 0a 00 00 28 r....hA]r....uhCM..hDh.h)]r....(
102a0 68 52 58 12 00 00 00 41 73 20 61 6e 20 61 6c 74 65 72 6e 61 74 69 76 65 20 72 fc 0a 00 00 85 81 hRX....As.an.alternative.r......
102c0 72 fd 0a 00 00 7d 72 fe 0a 00 00 28 68 2e 58 12 00 00 00 41 73 20 61 6e 20 61 6c 74 65 72 6e 61 r....}r....(h.X....As.an.alterna
102e0 74 69 76 65 20 72 ff 0a 00 00 68 2f 6a f2 0a 00 00 75 62 6a 66 01 00 00 29 81 72 00 0b 00 00 7d tive.r....h/j....ubjf...).r....}
10300 72 01 0b 00 00 28 68 2e 58 07 00 00 00 60 70 61 74 63 68 60 72 02 0b 00 00 68 37 7d 72 03 0b 00 r....(h.X....`patch`r....h7}r...
10320 00 28 68 39 5d 72 04 0b 00 00 68 3b 5d 72 05 0b 00 00 68 3d 5d 72 06 0b 00 00 68 3f 5d 72 07 0b .(h9]r....h;]r....h=]r....h?]r..
10340 00 00 68 41 5d 72 08 0b 00 00 75 68 2f 6a f2 0a 00 00 68 29 5d 72 09 0b 00 00 68 52 58 05 00 00 ..hA]r....uh/j....h)]r....hRX...
10360 00 70 61 74 63 68 72 0a 0b 00 00 85 81 72 0b 0b 00 00 7d 72 0c 0b 00 00 28 68 2e 55 00 68 2f 6a .patchr......r....}r....(h.U.h/j
10380 00 0b 00 00 75 62 61 68 35 6a 74 01 00 00 75 62 68 52 58 02 00 00 00 2c 20 72 0d 0b 00 00 85 81 ....ubah5jt...ubhRX....,.r......
103a0 72 0e 0b 00 00 7d 72 0f 0b 00 00 28 68 2e 58 02 00 00 00 2c 20 72 10 0b 00 00 68 2f 6a f2 0a 00 r....}r....(h.X....,.r....h/j...
103c0 00 75 62 6a 66 01 00 00 29 81 72 11 0b 00 00 7d 72 12 0b 00 00 28 68 2e 58 0e 00 00 00 60 70 61 .ubjf...).r....}r....(h.X....`pa
103e0 74 63 68 2e 6f 62 6a 65 63 74 60 72 13 0b 00 00 68 37 7d 72 14 0b 00 00 28 68 39 5d 72 15 0b 00 tch.object`r....h7}r....(h9]r...
10400 00 68 3b 5d 72 16 0b 00 00 68 3d 5d 72 17 0b 00 00 68 3f 5d 72 18 0b 00 00 68 41 5d 72 19 0b 00 .h;]r....h=]r....h?]r....hA]r...
10420 00 75 68 2f 6a f2 0a 00 00 68 29 5d 72 1a 0b 00 00 68 52 58 0c 00 00 00 70 61 74 63 68 2e 6f 62 .uh/j....h)]r....hRX....patch.ob
10440 6a 65 63 74 72 1b 0b 00 00 85 81 72 1c 0b 00 00 7d 72 1d 0b 00 00 28 68 2e 55 00 68 2f 6a 11 0b jectr......r....}r....(h.U.h/j..
10460 00 00 75 62 61 68 35 6a 74 01 00 00 75 62 68 52 58 05 00 00 00 20 61 6e 64 20 72 1e 0b 00 00 85 ..ubah5jt...ubhRX.....and.r.....
10480 81 72 1f 0b 00 00 7d 72 20 0b 00 00 28 68 2e 58 05 00 00 00 20 61 6e 64 20 72 21 0b 00 00 68 2f .r....}r....(h.X.....and.r!...h/
104a0 6a f2 0a 00 00 75 62 6a 66 01 00 00 29 81 72 22 0b 00 00 7d 72 23 0b 00 00 28 68 2e 58 0c 00 00 j....ubjf...).r"...}r#...(h.X...
104c0 00 60 70 61 74 63 68 2e 64 69 63 74 60 72 24 0b 00 00 68 37 7d 72 25 0b 00 00 28 68 39 5d 72 26 .`patch.dict`r$...h7}r%...(h9]r&
104e0 0b 00 00 68 3b 5d 72 27 0b 00 00 68 3d 5d 72 28 0b 00 00 68 3f 5d 72 29 0b 00 00 68 41 5d 72 2a ...h;]r'...h=]r(...h?]r)...hA]r*
10500 0b 00 00 75 68 2f 6a f2 0a 00 00 68 29 5d 72 2b 0b 00 00 68 52 58 0a 00 00 00 70 61 74 63 68 2e ...uh/j....h)]r+...hRX....patch.
10520 64 69 63 74 72 2c 0b 00 00 85 81 72 2d 0b 00 00 7d 72 2e 0b 00 00 28 68 2e 55 00 68 2f 6a 22 0b dictr,.....r-...}r....(h.U.h/j".
10540 00 00 75 62 61 68 35 6a 74 01 00 00 75 62 68 52 58 9b 00 00 00 20 63 61 6e 20 62 65 20 75 73 65 ..ubah5jt...ubhRX.....can.be.use
10560 64 20 61 73 0a 63 6c 61 73 73 20 64 65 63 6f 72 61 74 6f 72 73 2e 20 57 68 65 6e 20 75 73 65 64 d.as.class.decorators..When.used
10580 20 69 6e 20 74 68 69 73 20 77 61 79 20 69 74 20 69 73 20 74 68 65 20 73 61 6d 65 20 61 73 20 61 .in.this.way.it.is.the.same.as.a
105a0 70 70 6c 79 69 6e 67 20 74 68 65 0a 64 65 63 6f 72 61 74 6f 72 20 69 6e 64 76 69 64 75 61 6c 6c pplying.the.decorator.indviduall
105c0 79 20 74 6f 20 65 76 65 72 79 20 6d 65 74 68 6f 64 20 77 68 6f 73 65 20 6e 61 6d 65 20 73 74 61 y.to.every.method.whose.name.sta
105e0 72 74 73 20 77 69 74 68 20 22 74 65 73 74 22 2e 72 2f 0b 00 00 85 81 72 30 0b 00 00 7d 72 31 0b rts.with."test".r/.....r0...}r1.
10600 00 00 28 68 2e 58 9b 00 00 00 20 63 61 6e 20 62 65 20 75 73 65 64 20 61 73 0a 63 6c 61 73 73 20 ..(h.X.....can.be.used.as.class.
10620 64 65 63 6f 72 61 74 6f 72 73 2e 20 57 68 65 6e 20 75 73 65 64 20 69 6e 20 74 68 69 73 20 77 61 decorators..When.used.in.this.wa
10640 79 20 69 74 20 69 73 20 74 68 65 20 73 61 6d 65 20 61 73 20 61 70 70 6c 79 69 6e 67 20 74 68 65 y.it.is.the.same.as.applying.the
10660 0a 64 65 63 6f 72 61 74 6f 72 20 69 6e 64 76 69 64 75 61 6c 6c 79 20 74 6f 20 65 76 65 72 79 20 .decorator.indvidually.to.every.
10680 6d 65 74 68 6f 64 20 77 68 6f 73 65 20 6e 61 6d 65 20 73 74 61 72 74 73 20 77 69 74 68 20 22 74 method.whose.name.starts.with."t
106a0 65 73 74 22 2e 72 32 0b 00 00 68 2f 6a f2 0a 00 00 75 62 65 75 62 68 c0 29 81 72 33 0b 00 00 7d est".r2...h/j....ubeubh.).r3...}
106c0 72 34 0b 00 00 28 68 2e 58 46 00 00 00 46 6f 72 20 73 6f 6d 65 20 6d 6f 72 65 20 61 64 76 61 6e r4...(h.XF...For.some.more.advan
106e0 63 65 64 20 65 78 61 6d 70 6c 65 73 2c 20 73 65 65 20 74 68 65 20 3a 72 65 66 3a 60 66 75 72 74 ced.examples,.see.the.:ref:`furt
10700 68 65 72 2d 65 78 61 6d 70 6c 65 73 60 20 70 61 67 65 2e 72 35 0b 00 00 68 2f 6a 18 08 00 00 68 her-examples`.page.r5...h/j....h
10720 30 68 33 68 35 68 c4 68 37 7d 72 36 0b 00 00 28 68 39 5d 72 37 0b 00 00 68 3b 5d 72 38 0b 00 00 0h3h5h.h7}r6...(h9]r7...h;]r8...
10740 68 3d 5d 72 39 0b 00 00 68 3f 5d 72 3a 0b 00 00 68 41 5d 72 3b 0b 00 00 75 68 43 4d df 01 68 44 h=]r9...h?]r:...hA]r;...uhCM..hD
10760 68 02 68 29 5d 72 3c 0b 00 00 28 68 52 58 29 00 00 00 46 6f 72 20 73 6f 6d 65 20 6d 6f 72 65 20 h.h)]r<...(hRX)...For.some.more.
10780 61 64 76 61 6e 63 65 64 20 65 78 61 6d 70 6c 65 73 2c 20 73 65 65 20 74 68 65 20 72 3d 0b 00 00 advanced.examples,.see.the.r=...
107a0 85 81 72 3e 0b 00 00 7d 72 3f 0b 00 00 28 68 2e 58 29 00 00 00 46 6f 72 20 73 6f 6d 65 20 6d 6f ..r>...}r?...(h.X)...For.some.mo
107c0 72 65 20 61 64 76 61 6e 63 65 64 20 65 78 61 6d 70 6c 65 73 2c 20 73 65 65 20 74 68 65 20 72 40 re.advanced.examples,.see.the.r@
107e0 0b 00 00 68 2f 6a 33 0b 00 00 75 62 68 d0 29 81 72 41 0b 00 00 7d 72 42 0b 00 00 28 68 2e 58 17 ...h/j3...ubh.).rA...}rB...(h.X.
10800 00 00 00 3a 72 65 66 3a 60 66 75 72 74 68 65 72 2d 65 78 61 6d 70 6c 65 73 60 72 43 0b 00 00 68 ...:ref:`further-examples`rC...h
10820 2f 6a 33 0b 00 00 68 30 68 33 68 35 68 d4 68 37 7d 72 44 0b 00 00 28 55 07 72 65 66 74 79 70 65 /j3...h0h3h5h.h7}rD...(U.reftype
10840 72 45 0b 00 00 58 03 00 00 00 72 65 66 72 46 0b 00 00 68 d8 88 68 d9 58 10 00 00 00 66 75 72 74 rE...X....refrF...h..h.X....furt
10860 68 65 72 2d 65 78 61 6d 70 6c 65 73 72 47 0b 00 00 55 09 72 65 66 64 6f 6d 61 69 6e 72 48 0b 00 her-examplesrG...U.refdomainrH..
10880 00 58 03 00 00 00 73 74 64 72 49 0b 00 00 68 3f 5d 72 4a 0b 00 00 68 3d 5d 72 4b 0b 00 00 55 0b .X....stdrI...h?]rJ...h=]rK...U.
108a0 72 65 66 65 78 70 6c 69 63 69 74 72 4c 0b 00 00 89 68 39 5d 72 4d 0b 00 00 68 3b 5d 72 4e 0b 00 refexplicitrL....h9]rM...h;]rN..
108c0 00 68 41 5d 72 4f 0b 00 00 68 e3 68 e4 75 68 43 4d df 01 68 29 5d 72 50 0b 00 00 6a a4 03 00 00 .hA]rO...h.h.uhCM..h)]rP...j....
108e0 29 81 72 51 0b 00 00 7d 72 52 0b 00 00 28 68 2e 6a 43 0b 00 00 68 37 7d 72 53 0b 00 00 28 68 39 ).rQ...}rR...(h.jC...h7}rS...(h9
10900 5d 72 54 0b 00 00 68 3b 5d 72 55 0b 00 00 28 68 ee 6a 49 0b 00 00 58 07 00 00 00 73 74 64 2d 72 ]rT...h;]rU...(h.jI...X....std-r
10920 65 66 72 56 0b 00 00 65 68 3d 5d 72 57 0b 00 00 68 3f 5d 72 58 0b 00 00 68 41 5d 72 59 0b 00 00 efrV...eh=]rW...h?]rX...hA]rY...
10940 75 68 2f 6a 41 0b 00 00 68 29 5d 72 5a 0b 00 00 68 52 58 10 00 00 00 66 75 72 74 68 65 72 2d 65 uh/jA...h)]rZ...hRX....further-e
10960 78 61 6d 70 6c 65 73 72 5b 0b 00 00 85 81 72 5c 0b 00 00 7d 72 5d 0b 00 00 28 68 2e 55 00 68 2f xamplesr[.....r\...}r]...(h.U.h/
10980 6a 51 0b 00 00 75 62 61 68 35 6a b2 03 00 00 75 62 61 75 62 68 52 58 06 00 00 00 20 70 61 67 65 jQ...ubah5j....ubaubhRX.....page
109a0 2e 72 5e 0b 00 00 85 81 72 5f 0b 00 00 7d 72 60 0b 00 00 28 68 2e 58 06 00 00 00 20 70 61 67 65 .r^.....r_...}r`...(h.X.....page
109c0 2e 72 61 0b 00 00 68 2f 6a 33 0b 00 00 75 62 65 75 62 65 75 62 65 75 62 61 68 2e 55 00 55 0b 74 .ra...h/j3...ubeubeubeubah.U.U.t
109e0 72 61 6e 73 66 6f 72 6d 65 72 72 62 0b 00 00 4e 55 0d 66 6f 6f 74 6e 6f 74 65 5f 72 65 66 73 72 ransformerrb...NU.footnote_refsr
10a00 63 0b 00 00 7d 72 64 0b 00 00 55 08 72 65 66 6e 61 6d 65 73 72 65 0b 00 00 7d 72 66 0b 00 00 55 c...}rd...U.refnamesre...}rf...U
10a20 10 73 79 6d 62 6f 6c 5f 66 6f 6f 74 6e 6f 74 65 73 72 67 0b 00 00 5d 72 68 0b 00 00 55 11 61 75 .symbol_footnotesrg...]rh...U.au
10a40 74 6f 66 6f 6f 74 6e 6f 74 65 5f 72 65 66 73 72 69 0b 00 00 5d 72 6a 0b 00 00 55 14 73 79 6d 62 tofootnote_refsri...]rj...U.symb
10a60 6f 6c 5f 66 6f 6f 74 6e 6f 74 65 5f 72 65 66 73 72 6b 0b 00 00 5d 72 6c 0b 00 00 55 09 63 69 74 ol_footnote_refsrk...]rl...U.cit
10a80 61 74 69 6f 6e 73 72 6d 0b 00 00 5d 72 6e 0b 00 00 68 44 68 02 55 0c 63 75 72 72 65 6e 74 5f 6c ationsrm...]rn...hDh.U.current_l
10aa0 69 6e 65 72 6f 0b 00 00 4e 55 12 74 72 61 6e 73 66 6f 72 6d 5f 6d 65 73 73 61 67 65 73 72 70 0b inero...NU.transform_messagesrp.
10ac0 00 00 5d 72 71 0b 00 00 28 63 64 6f 63 75 74 69 6c 73 2e 6e 6f 64 65 73 0a 73 79 73 74 65 6d 5f ..]rq...(cdocutils.nodes.system_
10ae0 6d 65 73 73 61 67 65 0a 72 72 0b 00 00 29 81 72 73 0b 00 00 7d 72 74 0b 00 00 28 68 2e 55 00 68 message.rr...).rs...}rt...(h.U.h
10b00 37 7d 72 75 0b 00 00 28 68 39 5d 72 76 0b 00 00 55 05 6c 65 76 65 6c 72 77 0b 00 00 4b 01 68 3f 7}ru...(h9]rv...U.levelrw...K.h?
10b20 5d 72 78 0b 00 00 68 3d 5d 72 79 0b 00 00 55 06 73 6f 75 72 63 65 72 7a 0b 00 00 68 33 68 3b 5d ]rx...h=]ry...U.sourcerz...h3h;]
10b40 72 7b 0b 00 00 68 41 5d 72 7c 0b 00 00 55 04 6c 69 6e 65 72 7d 0b 00 00 4b 05 55 04 74 79 70 65 r{...hA]r|...U.liner}...K.U.type
10b60 72 7e 0b 00 00 55 04 49 4e 46 4f 72 7f 0b 00 00 75 68 29 5d 72 80 0b 00 00 68 c0 29 81 72 81 0b r~...U.INFOr....uh)]r....h.).r..
10b80 00 00 7d 72 82 0b 00 00 28 68 2e 55 00 68 37 7d 72 83 0b 00 00 28 68 39 5d 72 84 0b 00 00 68 3b ..}r....(h.U.h7}r....(h9]r....h;
10ba0 5d 72 85 0b 00 00 68 3d 5d 72 86 0b 00 00 68 3f 5d 72 87 0b 00 00 68 41 5d 72 88 0b 00 00 75 68 ]r....h=]r....h?]r....hA]r....uh
10bc0 2f 6a 73 0b 00 00 68 29 5d 72 89 0b 00 00 68 52 58 35 00 00 00 48 79 70 65 72 6c 69 6e 6b 20 74 /js...h)]r....hRX5...Hyperlink.t
10be0 61 72 67 65 74 20 22 67 65 74 74 69 6e 67 2d 73 74 61 72 74 65 64 22 20 69 73 20 6e 6f 74 20 72 arget."getting-started".is.not.r
10c00 65 66 65 72 65 6e 63 65 64 2e 72 8a 0b 00 00 85 81 72 8b 0b 00 00 7d 72 8c 0b 00 00 28 68 2e 55 eferenced.r......r....}r....(h.U
10c20 00 68 2f 6a 81 0b 00 00 75 62 61 68 35 68 c4 75 62 61 68 35 55 0e 73 79 73 74 65 6d 5f 6d 65 73 .h/j....ubah5h.ubah5U.system_mes
10c40 73 61 67 65 72 8d 0b 00 00 75 62 6a 72 0b 00 00 29 81 72 8e 0b 00 00 7d 72 8f 0b 00 00 28 68 2e sager....ubjr...).r....}r....(h.
10c60 55 00 68 37 7d 72 90 0b 00 00 28 68 39 5d 72 91 0b 00 00 55 05 6c 65 76 65 6c 72 92 0b 00 00 4b U.h7}r....(h9]r....U.levelr....K
10c80 01 68 3f 5d 72 93 0b 00 00 68 3d 5d 72 94 0b 00 00 55 06 73 6f 75 72 63 65 72 95 0b 00 00 68 33 .h?]r....h=]r....U.sourcer....h3
10ca0 68 3b 5d 72 96 0b 00 00 68 41 5d 72 97 0b 00 00 55 04 6c 69 6e 65 72 98 0b 00 00 4b 08 55 04 74 h;]r....hA]r....U.liner....K.U.t
10cc0 79 70 65 72 99 0b 00 00 6a 7f 0b 00 00 75 68 29 5d 72 9a 0b 00 00 68 c0 29 81 72 9b 0b 00 00 7d yper....j....uh)]r....h.).r....}
10ce0 72 9c 0b 00 00 28 68 2e 55 00 68 37 7d 72 9d 0b 00 00 28 68 39 5d 72 9e 0b 00 00 68 3b 5d 72 9f r....(h.U.h7}r....(h9]r....h;]r.
10d00 0b 00 00 68 3d 5d 72 a0 0b 00 00 68 3f 5d 72 a1 0b 00 00 68 41 5d 72 a2 0b 00 00 75 68 2f 6a 8e ...h=]r....h?]r....hA]r....uh/j.
10d20 0b 00 00 68 29 5d 72 a3 0b 00 00 68 52 58 2d 00 00 00 48 79 70 65 72 6c 69 6e 6b 20 74 61 72 67 ...h)]r....hRX-...Hyperlink.targ
10d40 65 74 20 22 69 6e 64 65 78 2d 30 22 20 69 73 20 6e 6f 74 20 72 65 66 65 72 65 6e 63 65 64 2e 72 et."index-0".is.not.referenced.r
10d60 a4 0b 00 00 85 81 72 a5 0b 00 00 7d 72 a6 0b 00 00 28 68 2e 55 00 68 2f 6a 9b 0b 00 00 75 62 61 ......r....}r....(h.U.h/j....uba
10d80 68 35 68 c4 75 62 61 68 35 6a 8d 0b 00 00 75 62 65 55 08 72 65 70 6f 72 74 65 72 72 a7 0b 00 00 h5h.ubah5j....ubeU.reporterr....
10da0 4e 55 08 69 64 5f 73 74 61 72 74 72 a8 0b 00 00 4b 01 55 0d 61 75 74 6f 66 6f 6f 74 6e 6f 74 65 NU.id_startr....K.U.autofootnote
10dc0 73 72 a9 0b 00 00 5d 72 aa 0b 00 00 55 0d 63 69 74 61 74 69 6f 6e 5f 72 65 66 73 72 ab 0b 00 00 sr....]r....U.citation_refsr....
10de0 7d 72 ac 0b 00 00 55 10 69 6e 64 69 72 65 63 74 5f 74 61 72 67 65 74 73 72 ad 0b 00 00 5d 72 ae }r....U.indirect_targetsr....]r.
10e00 0b 00 00 55 08 73 65 74 74 69 6e 67 73 72 af 0b 00 00 28 63 64 6f 63 75 74 69 6c 73 2e 66 72 6f ...U.settingsr....(cdocutils.fro
10e20 6e 74 65 6e 64 0a 56 61 6c 75 65 73 0a 72 b0 0b 00 00 6f 72 b1 0b 00 00 7d 72 b2 0b 00 00 28 55 ntend.Values.r....or....}r....(U
10e40 12 66 6f 6f 74 6e 6f 74 65 5f 62 61 63 6b 6c 69 6e 6b 73 72 b3 0b 00 00 4b 01 55 13 72 65 63 6f .footnote_backlinksr....K.U.reco
10e60 72 64 5f 64 65 70 65 6e 64 65 6e 63 69 65 73 72 b4 0b 00 00 4e 55 0c 72 66 63 5f 62 61 73 65 5f rd_dependenciesr....NU.rfc_base_
10e80 75 72 6c 72 b5 0b 00 00 55 1b 68 74 74 70 3a 2f 2f 74 6f 6f 6c 73 2e 69 65 74 66 2e 6f 72 67 2f urlr....U.http://tools.ietf.org/
10ea0 68 74 6d 6c 2f 72 b6 0b 00 00 55 09 74 72 61 63 65 62 61 63 6b 72 b7 0b 00 00 88 55 0e 70 65 70 html/r....U.tracebackr.....U.pep
10ec0 5f 72 65 66 65 72 65 6e 63 65 73 72 b8 0b 00 00 4e 55 0e 73 74 72 69 70 5f 63 6f 6d 6d 65 6e 74 _referencesr....NU.strip_comment
10ee0 73 72 b9 0b 00 00 4e 55 0d 74 6f 63 5f 62 61 63 6b 6c 69 6e 6b 73 72 ba 0b 00 00 55 05 65 6e 74 sr....NU.toc_backlinksr....U.ent
10f00 72 79 72 bb 0b 00 00 55 0d 6c 61 6e 67 75 61 67 65 5f 63 6f 64 65 72 bc 0b 00 00 55 02 65 6e 72 ryr....U.language_coder....U.enr
10f20 bd 0b 00 00 55 09 64 61 74 65 73 74 61 6d 70 72 be 0b 00 00 4e 55 0c 72 65 70 6f 72 74 5f 6c 65 ....U.datestampr....NU.report_le
10f40 76 65 6c 72 bf 0b 00 00 4b 02 55 0c 5f 64 65 73 74 69 6e 61 74 69 6f 6e 72 c0 0b 00 00 4e 55 0a velr....K.U._destinationr....NU.
10f60 68 61 6c 74 5f 6c 65 76 65 6c 72 c1 0b 00 00 4b 05 55 0d 73 74 72 69 70 5f 63 6c 61 73 73 65 73 halt_levelr....K.U.strip_classes
10f80 72 c2 0b 00 00 4e 68 4a 4e 55 1c 65 72 72 6f 72 5f 65 6e 63 6f 64 69 6e 67 5f 65 72 72 6f 72 5f r....NhJNU.error_encoding_error_
10fa0 68 61 6e 64 6c 65 72 72 c3 0b 00 00 55 10 62 61 63 6b 73 6c 61 73 68 72 65 70 6c 61 63 65 72 c4 handlerr....U.backslashreplacer.
10fc0 0b 00 00 55 05 64 65 62 75 67 72 c5 0b 00 00 4e 55 10 65 6d 62 65 64 5f 73 74 79 6c 65 73 68 65 ...U.debugr....NU.embed_styleshe
10fe0 65 74 72 c6 0b 00 00 89 55 1d 6f 75 74 70 75 74 5f 65 6e 63 6f 64 69 6e 67 5f 65 72 72 6f 72 5f etr.....U.output_encoding_error_
11000 68 61 6e 64 6c 65 72 72 c7 0b 00 00 55 06 73 74 72 69 63 74 72 c8 0b 00 00 55 0d 73 65 63 74 6e handlerr....U.strictr....U.sectn
11020 75 6d 5f 78 66 6f 72 6d 72 c9 0b 00 00 4b 01 55 0f 64 75 6d 70 5f 74 72 61 6e 73 66 6f 72 6d 73 um_xformr....K.U.dump_transforms
11040 72 ca 0b 00 00 4e 55 0d 64 6f 63 69 6e 66 6f 5f 78 66 6f 72 6d 72 cb 0b 00 00 4b 01 55 0e 77 61 r....NU.docinfo_xformr....K.U.wa
11060 72 6e 69 6e 67 5f 73 74 72 65 61 6d 72 cc 0b 00 00 4e 55 15 70 65 70 5f 66 69 6c 65 5f 75 72 6c rning_streamr....NU.pep_file_url
11080 5f 74 65 6d 70 6c 61 74 65 72 cd 0b 00 00 55 08 70 65 70 2d 25 30 34 64 72 ce 0b 00 00 55 11 65 _templater....U.pep-%04dr....U.e
110a0 78 69 74 5f 73 74 61 74 75 73 5f 6c 65 76 65 6c 72 cf 0b 00 00 4b 05 55 06 63 6f 6e 66 69 67 72 xit_status_levelr....K.U.configr
110c0 d0 0b 00 00 4e 55 0e 73 74 72 69 63 74 5f 76 69 73 69 74 6f 72 72 d1 0b 00 00 4e 55 15 63 6c 6f ....NU.strict_visitorr....NU.clo
110e0 61 6b 5f 65 6d 61 69 6c 5f 61 64 64 72 65 73 73 65 73 72 d2 0b 00 00 88 55 1d 74 72 69 6d 5f 66 ak_email_addressesr.....U.trim_f
11100 6f 6f 74 6e 6f 74 65 5f 72 65 66 65 72 65 6e 63 65 5f 73 70 61 63 65 72 d3 0b 00 00 89 55 03 65 ootnote_reference_spacer.....U.e
11120 6e 76 72 d4 0b 00 00 4e 55 0f 64 75 6d 70 5f 70 73 65 75 64 6f 5f 78 6d 6c 72 d5 0b 00 00 4e 55 nvr....NU.dump_pseudo_xmlr....NU
11140 10 65 78 70 6f 73 65 5f 69 6e 74 65 72 6e 61 6c 73 72 d6 0b 00 00 4e 55 12 73 65 63 74 73 75 62 .expose_internalsr....NU.sectsub
11160 74 69 74 6c 65 5f 78 66 6f 72 6d 72 d7 0b 00 00 89 55 0b 73 6f 75 72 63 65 5f 6c 69 6e 6b 72 d8 title_xformr.....U.source_linkr.
11180 0b 00 00 4e 55 0e 72 66 63 5f 72 65 66 65 72 65 6e 63 65 73 72 d9 0b 00 00 4e 55 0f 6f 75 74 70 ...NU.rfc_referencesr....NU.outp
111a0 75 74 5f 65 6e 63 6f 64 69 6e 67 72 da 0b 00 00 55 05 75 74 66 2d 38 72 db 0b 00 00 55 0a 73 6f ut_encodingr....U.utf-8r....U.so
111c0 75 72 63 65 5f 75 72 6c 72 dc 0b 00 00 4e 55 0e 69 6e 70 75 74 5f 65 6e 63 6f 64 69 6e 67 72 dd urce_urlr....NU.input_encodingr.
111e0 0b 00 00 55 09 75 74 66 2d 38 2d 73 69 67 72 de 0b 00 00 55 0f 5f 64 69 73 61 62 6c 65 5f 63 6f ...U.utf-8-sigr....U._disable_co
11200 6e 66 69 67 72 df 0b 00 00 4e 55 09 69 64 5f 70 72 65 66 69 78 72 e0 0b 00 00 55 00 55 09 74 61 nfigr....NU.id_prefixr....U.U.ta
11220 62 5f 77 69 64 74 68 72 e1 0b 00 00 4b 08 55 0e 65 72 72 6f 72 5f 65 6e 63 6f 64 69 6e 67 72 e2 b_widthr....K.U.error_encodingr.
11240 0b 00 00 55 09 6d 61 63 2d 72 6f 6d 61 6e 72 e3 0b 00 00 55 07 5f 73 6f 75 72 63 65 72 e4 0b 00 ...U.mac-romanr....U._sourcer...
11260 00 55 26 2f 63 6f 6d 70 69 6c 65 2f 6d 6f 63 6b 2f 64 6f 63 73 2f 67 65 74 74 69 6e 67 2d 73 74 .U&/compile/mock/docs/getting-st
11280 61 72 74 65 64 2e 74 78 74 72 e5 0b 00 00 55 0f 67 65 74 74 65 78 74 5f 63 6f 6d 70 61 63 74 72 arted.txtr....U.gettext_compactr
112a0 e6 0b 00 00 88 55 09 67 65 6e 65 72 61 74 6f 72 72 e7 0b 00 00 4e 55 0e 64 75 6d 70 5f 69 6e 74 .....U.generatorr....NU.dump_int
112c0 65 72 6e 61 6c 73 72 e8 0b 00 00 4e 55 0c 70 65 70 5f 62 61 73 65 5f 75 72 6c 72 e9 0b 00 00 55 ernalsr....NU.pep_base_urlr....U
112e0 1f 68 74 74 70 3a 2f 2f 77 77 77 2e 70 79 74 68 6f 6e 2e 6f 72 67 2f 64 65 76 2f 70 65 70 73 2f .http://www.python.org/dev/peps/
11300 72 ea 0b 00 00 55 10 73 79 6e 74 61 78 5f 68 69 67 68 6c 69 67 68 74 72 eb 0b 00 00 55 05 73 68 r....U.syntax_highlightr....U.sh
11320 6f 72 74 72 ec 0b 00 00 55 1c 69 6e 70 75 74 5f 65 6e 63 6f 64 69 6e 67 5f 65 72 72 6f 72 5f 68 ortr....U.input_encoding_error_h
11340 61 6e 64 6c 65 72 72 ed 0b 00 00 6a c8 0b 00 00 55 0e 61 75 74 6f 5f 69 64 5f 70 72 65 66 69 78 andlerr....j....U.auto_id_prefix
11360 72 ee 0b 00 00 55 02 69 64 72 ef 0b 00 00 55 0e 64 6f 63 74 69 74 6c 65 5f 78 66 6f 72 6d 72 f0 r....U.idr....U.doctitle_xformr.
11380 0b 00 00 89 55 1b 73 74 72 69 70 5f 65 6c 65 6d 65 6e 74 73 5f 77 69 74 68 5f 63 6c 61 73 73 65 ....U.strip_elements_with_classe
113a0 73 72 f1 0b 00 00 4e 55 0d 5f 63 6f 6e 66 69 67 5f 66 69 6c 65 73 72 f2 0b 00 00 5d 72 f3 0b 00 sr....NU._config_filesr....]r...
113c0 00 55 16 66 69 6c 65 5f 69 6e 73 65 72 74 69 6f 6e 5f 65 6e 61 62 6c 65 64 72 f4 0b 00 00 4b 01 .U.file_insertion_enabledr....K.
113e0 55 0b 72 61 77 5f 65 6e 61 62 6c 65 64 72 f5 0b 00 00 4b 01 55 0d 64 75 6d 70 5f 73 65 74 74 69 U.raw_enabledr....K.U.dump_setti
11400 6e 67 73 72 f6 0b 00 00 4e 75 62 55 15 73 79 6d 62 6f 6c 5f 66 6f 6f 74 6e 6f 74 65 5f 73 74 61 ngsr....NubU.symbol_footnote_sta
11420 72 74 72 f7 0b 00 00 4b 00 55 03 69 64 73 72 f8 0b 00 00 7d 72 f9 0b 00 00 28 68 21 6a 18 08 00 rtr....K.U.idsr....}r....(h!j...
11440 00 68 24 6a 80 04 00 00 68 1c 68 57 68 27 6a 44 07 00 00 68 20 68 2c 68 23 6a aa 02 00 00 68 26 .h$j....h.hWh'jD...h.h,h#j....h&
11460 6a 46 05 00 00 68 22 68 aa 68 6f 68 73 68 28 6a 57 06 00 00 68 1f 6a ae 06 00 00 68 1e 6a 80 03 jF...h"h.hohsh(jW...h.j....h.j..
11480 00 00 68 25 6a 4b 04 00 00 68 1d 68 94 75 55 12 73 75 62 73 74 69 74 75 74 69 6f 6e 5f 6e 61 6d ..h%jK...h.h.uU.substitution_nam
114a0 65 73 72 fa 0b 00 00 7d 72 fb 0b 00 00 68 35 68 44 68 37 7d 72 fc 0b 00 00 28 68 39 5d 72 fd 0b esr....}r....h5hDh7}r....(h9]r..
114c0 00 00 68 3f 5d 72 fe 0b 00 00 68 3d 5d 72 ff 0b 00 00 55 06 73 6f 75 72 63 65 72 00 0c 00 00 68 ..h?]r....h=]r....U.sourcer....h
114e0 33 68 3b 5d 72 01 0c 00 00 68 41 5d 72 02 0c 00 00 75 55 09 66 6f 6f 74 6e 6f 74 65 73 72 03 0c 3h;]r....hA]r....uU.footnotesr..
11500 00 00 5d 72 04 0c 00 00 55 06 72 65 66 69 64 73 72 05 0c 00 00 7d 72 06 0c 00 00 75 62 2e ..]r....U.refidsr....}r....ub.