在我的Python 3测试代码中,我有很多这样的语句:
from unittest.mock import patch
user = User(...)
with patch.object(MyAuthenticationClass, 'authenticate', return_value=(user, 'token'):
# do something现在我想把它写成:
with request_user(user):
# do something我如何编写一个作为上下文管理器的request_user方法,以便它以这种方式修补身份验证,并删除with块之后的修补程序?
发布于 2018-01-17 19:18:30
您可以像这样编写一个简单的包装器:
def request_user(user):
return patch.object(MyAuthenticationClass, 'authenticate', return_value=(user, 'token')并使用它:
with request_user(user):
# ...https://stackoverflow.com/questions/48299554
复制相似问题