1
我正在測試一個Flask應用程序,該應用程序使用Flask-Principal進行基於角色的權限以及粒度資源保護。我不確定如何處理在發佈請求中設置身份。我正在使用此其他Flask-Principal post中概述的測試策略。我正在使用查詢字符串方法獲取請求,並在發佈請求中將query_string更改爲標頭。獲取請求通過,但所有發佈請求都會因拒絕權限而失敗。你如何在單元測試中設置Flask-Principal身份?
def test_admin(self):
r = self.client.get('/admin')
self.assertEqual(r.status_code, 403)
#
r = self.client.get('/admin', query_string={'idname': "member"})
self.assertEqual(r.status_code, 403)
#
r = self.client.get('/admin', query_string={'idname': "admin"})
self.assertEqual(r.status_code, 200)
self.assertEqual(r.data, "OK")
任何幫助或見解,將不勝感激。我認爲我的問題的一部分是對身份設置的方式和位置缺乏理解。