MCPcopy Create free account
hub / github.com/apache/storm / GitPullRequest

Class GitPullRequest

dev-tools/github/__init__.py:33–92  ·  view source on GitHub ↗

Pull Request from Git

Source from the content-addressed store, hash-verified

31
32
33class GitPullRequest:
34 """Pull Request from Git"""
35
36 storm_jira_number = re.compile("STORM-[0-9]+", re.I)
37
38 def __init__(self, data, parent):
39 self.data = data
40 self.parent = parent
41
42 def html_url(self):
43 return self.data["html_url"]
44
45 def title(self):
46 return self.data["title"]
47
48 def trimmed_title(self):
49 limit = 40
50 title = self.data["title"]
51 return title if len(title) < limit else title[0:limit] + "..."
52
53 def number(self):
54 return self.data["number"]
55
56 # TODO def review_comments
57
58 def user(self):
59 return self.data["user"]["login"]
60
61 def from_branch(self):
62 return self.data["head"]["ref"]
63
64 def from_repo(self):
65 return self.data["head"]["repo"]["clone_url"]
66
67 def merged(self):
68 return self.data["merged_at"] is not None
69
70 def raw(self):
71 return self.data
72
73 def created_at(self):
74 return git_time(self.data["created_at"])
75
76 def updated_at(self):
77 return git_time(self.data["updated_at"])
78
79 def merged_at(self):
80 return git_time(self.data["merged_at"])
81
82 def has_jira_id(self):
83 return GitPullRequest.storm_jira_number.search(self.title())
84
85 def jira_id(self):
86 return GitPullRequest.storm_jira_number.search(self.title()).group(0).upper()
87
88 def __str__(self):
89 return self.html_url()
90

Callers 2

pullsMethod · 0.85
pullMethod · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected