diff options
author | Julien HENRY <julien.henry@sonarsource.com> | 2013-12-02 17:53:32 +0100 |
---|---|---|
committer | Julien HENRY <julien.henry@sonarsource.com> | 2013-12-02 17:53:55 +0100 |
commit | b9dd1505c80e7acf40a415b995eed30fe23d1e1d (patch) | |
tree | 0ef6840d72e56fbfd21fa86038b1286e46d2a512 | |
parent | 9774b1e57f8a947591e32fcab63bb7bee6147378 (diff) | |
download | sonarqube-b9dd1505c80e7acf40a415b995eed30fe23d1e1d.tar.gz sonarqube-b9dd1505c80e7acf40a415b995eed30fe23d1e1d.zip |
Fix some quality flaws
4 files changed, 7 insertions, 15 deletions
diff --git a/sonar-server/src/main/java/org/sonar/server/issue/IssueService.java b/sonar-server/src/main/java/org/sonar/server/issue/IssueService.java index e1aa16fb324..9729c7c69f0 100644 --- a/sonar-server/src/main/java/org/sonar/server/issue/IssueService.java +++ b/sonar-server/src/main/java/org/sonar/server/issue/IssueService.java @@ -116,8 +116,9 @@ public class IssueService implements ServerComponent { List<Transition> allowedTransitions = new ArrayList<Transition>(); for (Transition transition : outTransitions) { DefaultIssue defaultIssue = (DefaultIssue) issue; + String projectKey = defaultIssue.projectKey(); if (StringUtils.isBlank(transition.requiredProjectPermission()) || - userSession.hasProjectPermission(UserRole.ISSUE_ADMIN, defaultIssue.projectKey())) { + (projectKey != null && userSession.hasProjectPermission(UserRole.ISSUE_ADMIN, projectKey))) { allowedTransitions.add(transition); } } diff --git a/sonar-server/src/main/java/org/sonar/server/permission/InternalPermissionService.java b/sonar-server/src/main/java/org/sonar/server/permission/InternalPermissionService.java index ddc4c682cf0..a16c329fe66 100644 --- a/sonar-server/src/main/java/org/sonar/server/permission/InternalPermissionService.java +++ b/sonar-server/src/main/java/org/sonar/server/permission/InternalPermissionService.java @@ -113,6 +113,9 @@ public class InternalPermissionService implements ServerComponent { for (String componentKey : query.getSelectedComponents()) { ComponentDto component = (ComponentDto) resourceDao.findByKey(componentKey); + if (component == null) { + throw new IllegalStateException("Unable to find component with key " + componentKey); + } permissionFacade.applyPermissionTemplate(query.getTemplateKey(), component.getId()); } } diff --git a/sonar-server/src/main/java/org/sonar/server/permission/InternalPermissionTemplateService.java b/sonar-server/src/main/java/org/sonar/server/permission/InternalPermissionTemplateService.java index 71b5d3e000d..3dee4ad4a79 100644 --- a/sonar-server/src/main/java/org/sonar/server/permission/InternalPermissionTemplateService.java +++ b/sonar-server/src/main/java/org/sonar/server/permission/InternalPermissionTemplateService.java @@ -27,7 +27,6 @@ import org.slf4j.LoggerFactory; import org.sonar.api.ServerComponent; import org.sonar.core.permission.PermissionTemplateDao; import org.sonar.core.permission.PermissionTemplateDto; -import org.sonar.core.resource.ResourceDao; import org.sonar.core.user.UserDao; import org.sonar.server.exceptions.BadRequestException; import org.sonar.server.exceptions.ServerErrorException; @@ -48,12 +47,10 @@ public class InternalPermissionTemplateService implements ServerComponent { private final PermissionTemplateDao permissionTemplateDao; private final UserDao userDao; - private final ResourceDao resourceDao; - public InternalPermissionTemplateService(PermissionTemplateDao permissionTemplateDao, UserDao userDao, ResourceDao resourceDao) { + public InternalPermissionTemplateService(PermissionTemplateDao permissionTemplateDao, UserDao userDao) { this.permissionTemplateDao = permissionTemplateDao; this.userDao = userDao; - this.resourceDao = resourceDao; } @CheckForNull diff --git a/sonar-server/src/test/java/org/sonar/server/permission/InternalPermissionTemplateServiceTest.java b/sonar-server/src/test/java/org/sonar/server/permission/InternalPermissionTemplateServiceTest.java index f020bcfad2f..054dc6bf68a 100644 --- a/sonar-server/src/test/java/org/sonar/server/permission/InternalPermissionTemplateServiceTest.java +++ b/sonar-server/src/test/java/org/sonar/server/permission/InternalPermissionTemplateServiceTest.java @@ -31,9 +31,6 @@ import org.sonar.core.permission.PermissionTemplateDao; import org.sonar.core.permission.PermissionTemplateDto; import org.sonar.core.permission.PermissionTemplateGroupDto; import org.sonar.core.permission.PermissionTemplateUserDto; -import org.sonar.core.resource.ResourceDao; -import org.sonar.core.resource.ResourceDto; -import org.sonar.core.resource.ResourceQuery; import org.sonar.core.user.GroupDto; import org.sonar.core.user.UserDao; import org.sonar.core.user.UserDto; @@ -43,7 +40,6 @@ import org.sonar.server.user.MockUserSession; import java.util.List; import static org.fest.assertions.Assertions.assertThat; -import static org.mockito.Matchers.any; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.times; import static org.mockito.Mockito.verify; @@ -61,7 +57,6 @@ public class InternalPermissionTemplateServiceTest { private PermissionTemplateDao permissionTemplateDao; private UserDao userDao; - private ResourceDao resourceDao; private InternalPermissionTemplateService permissionTemplateService; @@ -73,8 +68,7 @@ public class InternalPermissionTemplateServiceTest { MockUserSession.set().setLogin("admin").setGlobalPermissions(GlobalPermissions.SYSTEM_ADMIN); permissionTemplateDao = mock(PermissionTemplateDao.class); userDao = mock(UserDao.class); - resourceDao = mock(ResourceDao.class); - permissionTemplateService = new InternalPermissionTemplateService(permissionTemplateDao, userDao, resourceDao); + permissionTemplateService = new InternalPermissionTemplateService(permissionTemplateDao, userDao); } @Test @@ -185,9 +179,6 @@ public class InternalPermissionTemplateServiceTest { new PermissionTemplateDto().setId(2L).setName("template2").setDescription("template2"); when(permissionTemplateDao.selectAllPermissionTemplates()).thenReturn(Lists.newArrayList(template1, template2)); - when(resourceDao.getResource(any(ResourceQuery.class))).thenReturn( - new ResourceDto().setId(10L).setKey("org.sample.Sample")); - List<PermissionTemplate> templates = permissionTemplateService.selectAllPermissionTemplates("org.sample.Sample"); assertThat(templates).hasSize(2); |