aboutsummaryrefslogtreecommitdiff
path: root/kodereviewer/network_manager.py
diff options
context:
space:
mode:
Diffstat (limited to 'kodereviewer/network_manager.py')
-rw-r--r--kodereviewer/network_manager.py39
1 files changed, 37 insertions, 2 deletions
diff --git a/kodereviewer/network_manager.py b/kodereviewer/network_manager.py
index cbe5160..faee87e 100644
--- a/kodereviewer/network_manager.py
+++ b/kodereviewer/network_manager.py
@@ -51,7 +51,6 @@ class NetworkManager(QObject):
headers.append(QHttpHeaders.WellKnownHeader.Authorization,
f'Bearer {github_token}')
headers.append(QHttpHeaders.WellKnownHeader.UserAgent, "kodereviewer")
- print(f'Authorization: Bearer {github_token}')
self._request_factory.setCommonHeaders(headers)
self._manager.finished.connect(self.reply_finished)
@@ -66,6 +65,7 @@ class NetworkManager(QObject):
self.projectChanged.emit()
base_url = f'https://api.github.com/repos/{self._project.owner}/{self._project.name}'
+ logger.info(f'got base url: "{base_url}"')
self._request_factory.setBaseUrl(base_url)
project = Property(Project, fget=project, fset=set_project)
@@ -102,7 +102,13 @@ class NetworkManager(QObject):
pull_request_number = int(match.groups()[0])
pull_request: Optional[PullRequest] = self._project.find_pull_request(pull_request_number)
if pull_request is not None:
- pull_request.load_reviews(response_body)
+
+ if reply.operation() == QNetworkAccessManager.Operation.GetOperation:
+ pull_request.load_reviews(response_body)
+ elif reply.operation() == QNetworkAccessManager.Operation.PostOperation:
+ logger.info(response_body)
+ else:
+ logger.info(f'Unknown operation: {reply.operation()}')
else:
logger.info(f"Can't handle {reply.url()}")
@@ -134,6 +140,8 @@ class NetworkManager(QObject):
)
)
+ # Reviews
+
@Slot(int)
def getPullRequestReviews(self, pull_request_number: int) -> None:
self._manager.get(
@@ -157,3 +165,30 @@ class NetworkManager(QObject):
'comments': []
}
self._manager.post(request, json.dumps(data).encode())
+
+ @Slot(int, str, str, str, int, int)
+ def createReviewComment(
+ self,
+ pull_request_number: int,
+ body: str,
+ path: str,
+ commit_id: str,
+ line: int,
+ start_line: int,
+ ) -> None:
+ request = self._request_factory.createRequest(
+ f'/pulls/{pull_request_number}/comments'
+ )
+ data = {
+ 'body': body,
+ 'commit_id': commit_id,
+ 'path': path,
+ 'start_line': start_line,
+ 'start_side': 'RIGHT',
+ 'line': line,
+ 'side': 'RIGHT'
+
+ }
+ logger.info('Creating review comment')
+ logger.info(data)
+ self._manager.post(request, json.dumps(data).encode())