Coverage for middle_layer/review/domain_layer/services/is_srp_in_consensus_phase_service.py: 100.00%

5 statements  

« prev     ^ index     » next       coverage.py v7.10.5, created at 2026-04-13 06:13 +0000

1# Copyright 2024 Associated Universities, Inc. 

2# 

3# This file is part of Telescope Time Allocation Tools (TTAT). 

4# 

5# TTAT is free software: you can redistribute it and/or modify 

6# it under the terms of the GNU General Public License as published by 

7# the Free Software Foundation, either version 3 of the License, or 

8# any later version. 

9# 

10# TTAT is distributed in the hope that it will be useful, 

11# but WITHOUT ANY WARRANTY; without even the implied warranty of 

12# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 

13# GNU General Public License for more details. 

14# 

15# You should have received a copy of the GNU General Public License 

16# along with TTAT. If not, see <https://www.gnu.org/licenses/>. 

17 

18from common.application_layer.orm_repositories.orm_repository import ORMRepository 

19from review.domain_layer.entities.science_review_panel import ScienceReviewPanel 

20 

21 

22def is_in_consensus_phase(science_review_panel: ScienceReviewPanel, repo: ORMRepository) -> bool: 

23 """Check whether or not a given ScienceReviewPanel is in Consensus phase 

24 

25 :param science_review_panel: ScienceReviewPanel to check 

26 :param repo: Repository for database querying 

27 :return: Whether or not science_review_panel is in Consensus phase 

28 """ 

29 ppr_prop_reviews = repo.ppr_proposal_review_repo.list_by_srp_id(science_review_panel.science_review_panel_id) 

30 return bool(ppr_prop_reviews)