From 2b7e01d1efaf78d7d2de20fc7664641a702caa73 Mon Sep 17 00:00:00 2001 From: Oleg Kopysov Date: Thu, 9 May 2024 17:23:19 +0300 Subject: [PATCH] fix: Fix svace issue Redundant null check Signed-off-by: Oleg Kopysov --- .../com/lpvs/service/LPVSGitHubService.java | 6 ++-- .../com/lpvs/service/LPVSLicenseService.java | 6 ++-- .../com/lpvs/service/LPVSQueueService.java | 12 +++---- .../lpvs/service/LPVSGitHubServiceTest.java | 8 ++--- .../lpvs/service/LPVSQueueServiceTest.java | 34 +++++-------------- 5 files changed, 24 insertions(+), 42 deletions(-) diff --git a/src/main/java/com/lpvs/service/LPVSGitHubService.java b/src/main/java/com/lpvs/service/LPVSGitHubService.java index e45edac7..8aee6ba4 100644 --- a/src/main/java/com/lpvs/service/LPVSGitHubService.java +++ b/src/main/java/com/lpvs/service/LPVSGitHubService.java @@ -366,7 +366,7 @@ public void commentResults( * Retrieves the license of the GitHub repository associated with the pull request. * * @param webhookConfig LPVSQueue configuration for the pull request. - * @return License key of the GitHub repository or "Proprietary" if not available. + * @return License key of the GitHub repository or null if not available. */ public String getRepositoryLicense(LPVSQueue webhookConfig) { try { @@ -378,14 +378,14 @@ public String getRepositoryLicense(LPVSQueue webhookConfig) { gitHub.getRepository(repositoryOrganization + "/" + repositoryName); GHLicense license = repository.getLicense(); if (license == null) { - return "Proprietary"; + return null; } else { return license.getKey(); } } catch (IOException | IllegalArgumentException e) { log.error("Can't authorize getRepositoryLicense(): " + e.getMessage()); } - return "Proprietary"; + return null; } /** diff --git a/src/main/java/com/lpvs/service/LPVSLicenseService.java b/src/main/java/com/lpvs/service/LPVSLicenseService.java index 6110b6a2..a03287fc 100644 --- a/src/main/java/com/lpvs/service/LPVSLicenseService.java +++ b/src/main/java/com/lpvs/service/LPVSLicenseService.java @@ -200,7 +200,7 @@ public void reloadFromTables() { * @param name SPDX identifier of the license. * @return LPVSLicense object if found, otherwise null. */ - public LPVSLicense findLicenseBySPDX(String name) { + protected LPVSLicense findLicenseBySPDX(String name) { for (LPVSLicense license : licenses) { if (license.getSpdxId().equalsIgnoreCase(name)) { return license; @@ -214,7 +214,7 @@ public LPVSLicense findLicenseBySPDX(String name) { * * @param license The license to add. */ - public void addLicenseToList(LPVSLicense license) { + protected void addLicenseToList(LPVSLicense license) { if (!licenses.contains(license)) { licenses.add(license); } @@ -226,7 +226,7 @@ public void addLicenseToList(LPVSLicense license) { * @param name The name of the license. * @return LPVSLicense object if found, otherwise null. */ - public LPVSLicense findLicenseByName(String name) { + protected LPVSLicense findLicenseByName(String name) { for (LPVSLicense license : licenses) { if (license.getLicenseName().equalsIgnoreCase(name)) { return license; diff --git a/src/main/java/com/lpvs/service/LPVSQueueService.java b/src/main/java/com/lpvs/service/LPVSQueueService.java index def0fa0b..97a98513 100644 --- a/src/main/java/com/lpvs/service/LPVSQueueService.java +++ b/src/main/java/com/lpvs/service/LPVSQueueService.java @@ -229,14 +229,12 @@ public void processWebHook(LPVSQueue webhookConfig) { } // check repository license String repositoryLicense = gitHubService.getRepositoryLicense(webhookConfig); - LPVSLicense repoLicense = - licenseService.getLicenseBySpdxIdAndName( - repositoryLicense, Optional.empty()); - if (repoLicense != null) { + + if (repositoryLicense != null) { + LPVSLicense repoLicense = + licenseService.getLicenseBySpdxIdAndName( + repositoryLicense, Optional.empty()); webhookConfig.setRepositoryLicense(repoLicense.getSpdxId()); - } else if (licenseService.findLicenseByName(repositoryLicense) != null) { - webhookConfig.setRepositoryLicense( - licenseService.findLicenseByName(repositoryLicense).getSpdxId()); } else { webhookConfig.setRepositoryLicense(null); } diff --git a/src/test/java/com/lpvs/service/LPVSGitHubServiceTest.java b/src/test/java/com/lpvs/service/LPVSGitHubServiceTest.java index 9bcadb92..ed0fb87d 100644 --- a/src/test/java/com/lpvs/service/LPVSGitHubServiceTest.java +++ b/src/test/java/com/lpvs/service/LPVSGitHubServiceTest.java @@ -3757,7 +3757,7 @@ public void testGetRepositoryLicense__ApiUrlAbsentLisenceAbsent() { .thenReturn(mocked_instance_gh); // main test - assertEquals("Proprietary", gh_service.getRepositoryLicense(webhookConfig)); + assertNull(gh_service.getRepositoryLicense(webhookConfig)); // verification of calling methods on `Mock`s // `mocked_static_gh` verify @@ -3955,7 +3955,7 @@ public void testGetRepositoryLicense__ApiUrlPresentLisenceAbsent() { .thenReturn(mocked_instance_gh); // main test - assertEquals("Proprietary", gh_service.getRepositoryLicense(webhookConfig)); + assertNull(gh_service.getRepositoryLicense(webhookConfig)); // verification of calling methods on `Mock`s // `mocked_static_gh` verify @@ -4033,7 +4033,7 @@ public void testGetRepositoryLicense__ApiUrlAbsentCantAuthorize() { .thenThrow(new IOException("test cant authorize")); // main test - assertEquals("Proprietary", gh_service.getRepositoryLicense(webhookConfig)); + assertNull(gh_service.getRepositoryLicense(webhookConfig)); // verification of calling methods on `Mock`s // `mocked_static_gh` verify @@ -4086,7 +4086,7 @@ public void testGetRepositoryLicense__ApiUrlPresentCantAuthorize() { .thenThrow(new IOException("test cant authorize")); // main test - assertEquals("Proprietary", gh_service.getRepositoryLicense(webhookConfig)); + assertNull(gh_service.getRepositoryLicense(webhookConfig)); // verification of calling methods on `Mock`s // `mocked_static_gh` verify diff --git a/src/test/java/com/lpvs/service/LPVSQueueServiceTest.java b/src/test/java/com/lpvs/service/LPVSQueueServiceTest.java index 97cccb30..e718d1b0 100644 --- a/src/test/java/com/lpvs/service/LPVSQueueServiceTest.java +++ b/src/test/java/com/lpvs/service/LPVSQueueServiceTest.java @@ -516,8 +516,7 @@ void setUp() { mockLicenseService = mock(LPVSLicenseService.class); when(mockLicenseService.getLicenseBySpdxIdAndName(licenseNameTest, Optional.empty())) - .thenReturn(null); - when(mockLicenseService.findLicenseByName(licenseNameTest)).thenReturn(lpvsLicenseTest); + .thenReturn(lpvsLicenseTest); mockDetectService = mock(LPVSDetectService.class); try { @@ -553,7 +552,8 @@ public void testProcessWebHook__DeletionAbsentLicenseFound() throws Exception { verify(mockGitHubService, times(1)).getRepositoryLicense(webhookConfigMain); verify(mockLicenseService, times(1)) .getLicenseBySpdxIdAndName(licenseNameTest, Optional.empty()); - verify(mockLicenseService, times(2)).findLicenseByName(licenseNameTest); + verify(mockLicenseService, times(1)) + .getLicenseBySpdxIdAndName(licenseNameTest, Optional.empty()); try { verify(mockDetectService, times(1)) .runScan(webhookConfigMain, filePathTestNoDeletion); @@ -616,8 +616,7 @@ void setUp() { mockLicenseService = mock(LPVSLicenseService.class); when(mockLicenseService.getLicenseBySpdxIdAndName(licenseNameTest, Optional.empty())) - .thenReturn(null); - when(mockLicenseService.findLicenseByName(licenseNameTest)).thenReturn(lpvsLicenseTest); + .thenReturn(lpvsLicenseTest); mockDetectService = mock(LPVSDetectService.class); try { @@ -651,12 +650,13 @@ public void testProcessWebHook__DeletionPresentLicenseFound() throws Exception { verify(mockGitHubService, times(1)).getRepositoryLicense(webhookConfigMain); verify(mockLicenseService, times(1)) .getLicenseBySpdxIdAndName(licenseNameTest, Optional.empty()); - verify(mockLicenseService, times(2)).findLicenseByName(licenseNameTest); + verify(mockLicenseService, times(1)) + .getLicenseBySpdxIdAndName(licenseNameTest, Optional.empty()); try { verify(mockDetectService, times(1)) .runScan(webhookConfigMain, filePathTestWithDeletionTruncated); } catch (Exception e) { - log.error("TestProcessWebHook__DeletionAbsentLicensePresent: Exception: " + e); + log.error("TestProcessWebHook__DeletionPresentLicenseFound: Exception: " + e); fail(); } verify(mockLicenseService, times(1)).findConflicts(webhookConfigMain, LPVSFilesTest); @@ -709,14 +709,9 @@ void setUp() { mockGitHubService = mock(LPVSGitHubService.class); when(mockGitHubService.getPullRequestFiles(webhookConfigMain)) .thenReturn(filePathTestNoDeletion); - when(mockGitHubService.getRepositoryLicense(webhookConfigMain)) - .thenReturn(licenseNameTest); + when(mockGitHubService.getRepositoryLicense(webhookConfigMain)).thenReturn(null); mockLicenseService = mock(LPVSLicenseService.class); - when(mockLicenseService.getLicenseBySpdxIdAndName(licenseNameTest, Optional.empty())) - .thenReturn(null); - when(mockLicenseService.findLicenseByName(licenseNameTest)).thenReturn(null); - mockDetectService = mock(LPVSDetectService.class); try { when(mockDetectService.runScan(webhookConfigMain, filePathTestNoDeletion)) @@ -746,9 +741,6 @@ public void testProcessWebHook__DeletionAbsentLicenseNull() throws Exception { verify(mockGitHubService, times(1)).getPullRequestFiles(webhookConfigMain); verify(mockGitHubService, times(1)).getRepositoryLicense(webhookConfigMain); - verify(mockLicenseService, times(1)) - .getLicenseBySpdxIdAndName(licenseNameTest, Optional.empty()); - verify(mockLicenseService, times(1)).findLicenseByName(licenseNameTest); try { verify(mockDetectService, times(1)) .runScan(webhookConfigMain, filePathTestNoDeletion); @@ -806,14 +798,9 @@ void setUp() { mockGitHubService = mock(LPVSGitHubService.class); when(mockGitHubService.getPullRequestFiles(webhookConfigMain)) .thenReturn(filePathTestWithDeletion); - when(mockGitHubService.getRepositoryLicense(webhookConfigMain)) - .thenReturn(licenseNameTest); + when(mockGitHubService.getRepositoryLicense(webhookConfigMain)).thenReturn(null); mockLicenseService = mock(LPVSLicenseService.class); - when(mockLicenseService.getLicenseBySpdxIdAndName(licenseNameTest, Optional.empty())) - .thenReturn(null); - when(mockLicenseService.findLicenseByName(licenseNameTest)).thenReturn(null); - mockDetectService = mock(LPVSDetectService.class); try { when(mockDetectService.runScan( @@ -844,9 +831,6 @@ public void testProcessWebHook__DeletionAbsentLicenseNull() throws Exception { verify(mockGitHubService, times(1)).getPullRequestFiles(webhookConfigMain); verify(mockGitHubService, times(1)).getRepositoryLicense(webhookConfigMain); - verify(mockLicenseService, times(1)) - .getLicenseBySpdxIdAndName(licenseNameTest, Optional.empty()); - verify(mockLicenseService, times(1)).findLicenseByName(licenseNameTest); try { verify(mockDetectService, times(1)) .runScan(webhookConfigMain, filePathTestWithDeletionTruncated);