diff options
Diffstat (limited to 'kodereviewer/network_manager.py')
-rw-r--r-- | kodereviewer/network_manager.py | 39 |
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()) |