Похоже, корень проблемы в bv_user_model:
app.config['DATABASE'] = {
'name': 'userLogin.db',
'engine': 'peewee.SqliteDatabase',
}
Поскольку вы используете FlaskDB
с приложением, имеющим производственные учетные данные, похоже, что db_wrapper «запомнит», чтои не игнорируйтесь вашими тестами.
Самый простой ответ будет состоять в том, чтобы не использовать ваше приложение для непосредственного создания экземпляра FlaskDB
db = FlaskDB()
А затем инициализировать его в вашем приложении
from models import db
def create_app():
app = ...
app.config["DATABASE"] = ...
db.init_app(app)
...
return app
, которая позволила бы вам иметь отдельную функцию, подобную этой, которую вы можете использовать для тестирования.
def create_test_app():
app = ...
app.config["DATABASE"] = ...test credentials...
db.init_app(app)
...
return app
и при создании моделей используйте экземпляр FlaskDB точно так же, как выбыли уже.
db = FlaskDB()
class Role(db.Model, RoleMixin):
...