Skip to content
9 / 15

Как ΠΌΠΎΠΊΠ°Ρ‚ΡŒ зависимости Ρ‡Π΅Ρ€Π΅Π· unittest.mock: MagicMock, patch, side_effect?

unittest.mock.MagicMock β€” Π·Π°Π³Π»ΡƒΡˆΠΊΠ° с автоматичСски ΡΠΎΠ·Π΄Π°ΡŽΡ‰ΠΈΠΌΠΈΡΡ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Π°ΠΌΠΈ/ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌΠΈ ΠΈ магичСскими ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌΠΈ (__len__, __iter__). patch β€” Π΄Π΅ΠΊΠΎΡ€Π°Ρ‚ΠΎΡ€/контСкст, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ подмСняСт Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ модуля Π½Π° mock ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π» послС тСста. side_effect управляСт ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ΠΌ: ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅, ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π²ΠΎΠ·Π²Ρ€Π°Ρ‚ΠΎΠ² ΠΈΠ»ΠΈ функция-Π·Π°ΠΌΠ΅Π½Π°. JS-Π°Π½Π°Π»ΠΎΠ³: vi.fn() + vi.spyOn(module, 'fn').

Как ΠΌΠΎΠΊΠ°Ρ‚ΡŒ зависимости Ρ‡Π΅Ρ€Π΅Π· unittest.mock: MagicMock, patch, side_effect? | JScriptiser