Coverage for src / mesh / views / viewmodel / submission_version_proxy.py: 100%

11 statements  

« prev     ^ index     » next       coverage.py v7.13.1, created at 2026-05-04 12:41 +0000

1from mesh.models.orm.submission_models import SubmissionVersion 

2from mesh.views.viewmodel.model_proxy import RoleModelProxy 

3from mesh.views.viewmodel.review_proxy import ReviewProxy 

4 

5 

6class SubmissionVersionProxy(RoleModelProxy[SubmissionVersion]): 

7 """ 

8 Proxy for the `SubmissionVersion` model with restricted data according to the user role. 

9 """ 

10 

11 model = SubmissionVersion 

12 

13 def __init__(self, instance, role, submission_proxy=None) -> None: 

14 super().__init__(instance, role) 

15 self.created_by = instance.created_by_censored 

16 self.reviews = [ 

17 ReviewProxy(review, self.role, version=self) for review in instance.reviews_censored 

18 ] 

19 

20 if submission_proxy: 

21 self.submission = submission_proxy