Coverage for chalicelib/core/issue_tracking/base_issue.py: 72%

32 statements  

« prev     ^ index     » next       coverage.py v7.15.2, created at 2026-10-10 12:56 +0000

1import logging 

2from abc import ABC, abstractmethod 

3 

4from chalicelib.utils.log import sanitize 

5 

6logger = logging.getLogger(__name__) 

7 

8 

9class RequestException(Exception): 

10 pass 

11 

12 

13def proxy_issues_handler(e): 

14 logger.error("=======__proxy_issues_handler=======") 

15 logger.error(sanitize(str(e))) 

16 return {"errors": [str(e)]} 

17 

18 

19class BaseIntegrationIssue(ABC): 

20 def __init__(self, provider, integration_token): 

21 self.provider = provider 

22 self.integration_token = integration_token 

23 

24 @abstractmethod 

25 def create_new_assignment(self, integration_project_id, title, description, assignee, issue_type): 

26 pass 

27 

28 @abstractmethod 

29 def get_by_ids(self, saved_issues): 

30 pass 

31 

32 @abstractmethod 

33 def get(self, integration_project_id, assignment_id): 

34 pass 

35 

36 @abstractmethod 

37 def comment(self, integration_project_id, assignment_id, comment): 

38 pass 

39 

40 @abstractmethod 

41 def get_metas(self, integration_project_id): 

42 pass 

43 

44 @abstractmethod 

45 def get_projects(self): 

46 pass