monkeypatchのサンプルです。

目次

  1. サンプル
    1. テスト対象
    2. テスト
  2. できること

サンプル

テスト対象

class Cls():
def func1(self):
return '1'

テスト

フィクスチャとしてmonkeypatchを使用する。

from clsfile import Cls

def test_func(monkeypatch):
def func2():
return '2'
monkeypatch.setattr(Cls,"func1",func2)
assert Cls.func1() == 2 # true

できること

  • monkeypatch.setattr(obj, name, value, raising=True)
  • monkeypatch.delattr(obj, name, raising=True)
  • monkeypatch.setitem(mapping, name, value)
  • monkeypatch.delitem(obj, name, raising=True)
  • monkeypatch.setenv(name, value, prepend=None)
  • monkeypatch.delenv(name, raising=True)
  • monkeypatch.syspath_prepend(path)
  • monkeypatch.chdir(path)
  • monkeypatch.context()