def check_analysis_access(user, analysis_id): """Checks whether user has access to an analysis Parameters ---------- user : User object User to check analysis_id : int Analysis to check access for Raises ------ RuntimeError Tried to access analysis that user does not have access to """ if analysis_id not in Analysis.get_public() + user.shared_analyses + \ user.private_analyses: raise HTTPError(403, "Analysis access denied to %s" % (analysis_id))
def test_get_public(self): self.assertEqual(Analysis.get_public(), []) self.analysis.status = "public" self.assertEqual(Analysis.get_public(), [1])