база данных насмешливый Python - PullRequest
0 голосов
/ 20 марта 2019

Я пишу контрольные примеры для файла с именем api.py, и app.py создает экземпляр моего приложения.

app.py

from d import db

def create():
    d = db()
    # here I create db instance and pass to my application
    api = API(d)
app = create()

api.py

from app import app
class API1:
    pass
class API2
    pass

Я хочу исправить свою базу данных.

Ниже приведен мой тестовый файл, здесь я настраиваю свое приложение в setUp один раз.

#from app.app import app doesn't work here
class TestCase(testing):
    @patch("/path/db")
    def setUp(self):
       # when I import my app here I am able to patch db but doesn't when I have import at file level
       from app.app import app
       self.app = app.create()

Я пытаюсь пропатчить всю базу данных, чтобы избежать настройки базы данных для каждого теста. Как я могу исправить при импорте на уровне файла?

...