我有一个使用过的Flask应用,
我正在努力验证到服务器的所有流量(/login
和另一个终结点除外)
我使用@app.before_request
装饰器实现了这一点,就像这样:
@app.before_request
def authenticate():
if any(request.path in s for s in NO_AUTH_ENDPOINTS):
return
# authentication process....
这可以正常工作,但是当我进入由于身份验证而失败的烧瓶单元测试时,我没有设法修补该功能,并且所有测试都不断出现未经授权的错误。
我尝试了以下操作:
@patch('authentication.authenticate')
def post(self, body, mock_auth, id=None, token='test_token', **params):
mock_auth.return_value = None
return self.app.post(self._get_url(id, params),
data=json.dumps(body),
follow_redirects=True,
content_type='application/json',
headers={'Token': token})
还有:
@patch('autoai.server.app.before_request')
def post(self, body, mock_request, id=None, token='test_token', **params):
mock_request.return_value = None
return self.app.post(self._get_url(id, params),
data=json.dumps(body),
follow_redirects=True,
content_type='application/json',
headers={'Token': token})
我使用flast test_app可能是相关的,但我仍然不知道如何正确修补begfore_request(self.app = app.test_client
)