diff --git a/src/main/java/com/lpvs/service/LPVSQueueService.java b/src/main/java/com/lpvs/service/LPVSQueueService.java index 195718eb..39001c8d 100644 --- a/src/main/java/com/lpvs/service/LPVSQueueService.java +++ b/src/main/java/com/lpvs/service/LPVSQueueService.java @@ -146,40 +146,7 @@ public BlockingDeque getQueue() { public void checkForQueue() throws InterruptedException { log.debug("Checking for previous queue"); List webhookConfigList = queueRepository.getQueueList(); - if (webhookConfigList.size() > 0) { - LPVSQueue webhookConfig = getLatestScan(webhookConfigList); - webhookConfig.setAttempts(webhookConfig.getAttempts() + 1); - queueRepository.save(webhookConfig); - } for (LPVSQueue webhook : webhookConfigList) { - log.info("PROCESSING WebHook id = " + webhook.getId()); - if (webhook.getAttempts() > maxAttempts) { - LPVSPullRequest pullRequest = new LPVSPullRequest(); - pullRequest.setPullRequestUrl(webhook.getPullRequestUrl()); - pullRequest.setUser(webhook.getUserId()); - pullRequest.setPullRequestFilesUrl(webhook.getPullRequestFilesUrl()); - pullRequest.setRepositoryName( - LPVSWebhookUtil.getRepositoryOrganization(webhook) - + "/" - + LPVSWebhookUtil.getRepositoryName(webhook)); - pullRequest.setDate(webhook.getDate()); - pullRequest.setStatus(LPVSPullRequestStatus.NO_ACCESS.toString()); - pullRequest.setPullRequestHead(webhook.getPullRequestHead()); - pullRequest.setPullRequestBase(webhook.getPullRequestBase()); - pullRequest.setSender(webhook.getSender()); - pullRequest = lpvsPullRequestRepository.saveAndFlush(pullRequest); - - if (webhook.getUserId().equals("GitHub hook")) { - gitHubService.setErrorCheck(webhook); - } - queueRepository.deleteById(webhook.getId()); - log.info( - "Webhook id = " - + webhook.getId() - + " is deleted. Details on PR #" - + pullRequest.getId()); - continue; - } log.info("Add WebHook id = " + webhook.getId() + " to the queue."); QUEUE.putFirst(webhook); } @@ -258,6 +225,7 @@ public void processWebHook(LPVSQueue webhookConfig) { log.debug("Creating comment"); gitHubService.commentResults(webhookConfig, files, detectedConflicts, pullRequest); log.debug("Results posted on GitHub"); + delete(webhookConfig); } else { log.warn("Files are not found. Probably pull request is not exists."); gitHubService.commentResults(webhookConfig, null, null, pullRequest); @@ -265,7 +233,6 @@ public void processWebHook(LPVSQueue webhookConfig) { throw new Exception( "Files are not found. Probably pull request does not exist. Terminating."); } - delete(webhookConfig); } catch (Exception | Error e) { pullRequest.setStatus(LPVSPullRequestStatus.INTERNAL_ERROR.toString()); pullRequest = lpvsPullRequestRepository.saveAndFlush(pullRequest); diff --git a/src/test/java/com/lpvs/service/LPVSQueueServiceTest.java b/src/test/java/com/lpvs/service/LPVSQueueServiceTest.java index 8882c8a5..01537c1b 100644 --- a/src/test/java/com/lpvs/service/LPVSQueueServiceTest.java +++ b/src/test/java/com/lpvs/service/LPVSQueueServiceTest.java @@ -841,26 +841,11 @@ void setUp() { @Test public void testCheckForQueue() { - LPVSQueue webhookConfig = new LPVSQueue(); - webhookConfig.setAttempts(0); - webhookConfig.setDate(new Date()); - when(mocked_queueRepository.getQueueList()).thenReturn(List.of(webhookConfig)); - assertDoesNotThrow(() -> queueService.checkForQueue()); - verify(mocked_queueRepository).save(webhookConfig); - } - - @Test - public void testCheckForQueue__Alternative() { LPVSQueue webhookConfig = new LPVSQueue(); webhookConfig.setAttempts(100); webhookConfig.setDate(new Date()); - webhookConfig.setUserId("id"); - webhookConfig.setRepositoryUrl("https://github.com/Samsung/LPVS"); when(mocked_queueRepository.getQueueList()).thenReturn(List.of(webhookConfig)); - when(mocked_lpvsPullRequestRepository.saveAndFlush(Mockito.any(LPVSPullRequest.class))) - .thenAnswer(i -> i.getArguments()[0]); assertDoesNotThrow(() -> queueService.checkForQueue()); - verify(mocked_queueRepository).save(webhookConfig); } @Test