2
:テスト目的でsqliteデータベースをmonkeypatchする方法は? ORM.pyファイルで
from peewee import *
db = SqliteDatabase('database.db')
class Device(Model):
uid = CharField(unique=True, max_length=17)
class Meta:
database = db
今私はtest.db
from _pytest.monkeypatch import MonkeyPatch
@pytest.fixture(scope="session")
def monkeysession(request):
mp = MonkeyPatch()
yield mp
mp.undo()
@pytest.fixture(scope='session', autouse=True)
def create_db(monkeysession, request):
monkeysession.setattr(ORM, 'db', SqliteDatabase('test.db'))
しかし、私のエラー(peewee.OperationalErrorでorginalデータベースdatabase.db
をモンキーパッチしたいtest.pyに:テーブル "デバイス"既に存在している)は、Monkeypatchが失敗したことを示唆します。