aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--server/sonar-webserver-webapi/src/main/java/org/sonar/server/usergroups/ws/GroupService.java5
-rw-r--r--server/sonar-webserver-webapi/src/test/java/org/sonar/server/usergroups/ws/GroupServiceTest.java4
2 files changed, 9 insertions, 0 deletions
diff --git a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/usergroups/ws/GroupService.java b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/usergroups/ws/GroupService.java
index 37fef76d14f..95cbbd3750c 100644
--- a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/usergroups/ws/GroupService.java
+++ b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/usergroups/ws/GroupService.java
@@ -60,6 +60,8 @@ public class GroupService {
removeGroupFromQualityGateEdit(dbSession, group);
removeGroupScimLink(dbSession, group);
removeExternalGroupMapping(dbSession, group);
+ removeGithubOrganizationGroupDao(dbSession, group);
+
removeGroup(dbSession, group);
}
@@ -162,6 +164,9 @@ public class GroupService {
private void removeExternalGroupMapping(DbSession dbSession, GroupDto group) {
dbClient.externalGroupDao().deleteByGroupUuid(dbSession, group.getUuid());
}
+ private void removeGithubOrganizationGroupDao(DbSession dbSession, GroupDto group) {
+ dbClient.githubOrganizationGroupDao().deleteByGroupUuid(dbSession, group.getUuid());
+ }
private void removeGroup(DbSession dbSession, GroupDto group) {
dbClient.groupDao().deleteByUuid(dbSession, group.getUuid(), group.getName());
diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/usergroups/ws/GroupServiceTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/usergroups/ws/GroupServiceTest.java
index b9513fe3dbf..998a5095015 100644
--- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/usergroups/ws/GroupServiceTest.java
+++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/usergroups/ws/GroupServiceTest.java
@@ -39,6 +39,7 @@ import org.sonar.db.DbSession;
import org.sonar.db.permission.AuthorizationDao;
import org.sonar.db.permission.GlobalPermission;
import org.sonar.db.permission.template.PermissionTemplateDao;
+import org.sonar.db.provisioning.GithubOrganizationGroupDao;
import org.sonar.db.qualitygate.QualityGateGroupPermissionsDao;
import org.sonar.db.qualityprofile.QProfileEditGroupsDao;
import org.sonar.db.scim.ScimGroupDao;
@@ -95,6 +96,7 @@ public class GroupServiceTest {
when(dbClient.scimGroupDao()).thenReturn(mock(ScimGroupDao.class));
when(dbClient.externalGroupDao()).thenReturn(mock(ExternalGroupDao.class));
when(dbClient.groupDao()).thenReturn(mock(GroupDao.class));
+ when(dbClient.githubOrganizationGroupDao()).thenReturn(mock(GithubOrganizationGroupDao.class));
}
@Test
@@ -320,6 +322,7 @@ public class GroupServiceTest {
verify(dbClient.qualityGateGroupPermissionsDao(), never()).deleteByGroup(dbSession, groupDto);
verify(dbClient.scimGroupDao(), never()).deleteByGroupUuid(dbSession, groupDto.getUuid());
verify(dbClient.groupDao(), never()).deleteByUuid(dbSession, groupDto.getUuid(), groupDto.getName());
+ verify(dbClient.githubOrganizationGroupDao(), never()).deleteByGroupUuid(dbSession, groupDto.getUuid());
}
private void verifyGroupDelete(DbSession dbSession, GroupDto groupDto) {
@@ -331,5 +334,6 @@ public class GroupServiceTest {
verify(dbClient.scimGroupDao()).deleteByGroupUuid(dbSession, groupDto.getUuid());
verify(dbClient.externalGroupDao()).deleteByGroupUuid(dbSession, groupDto.getUuid());
verify(dbClient.groupDao()).deleteByUuid(dbSession, groupDto.getUuid(), groupDto.getName());
+ verify(dbClient.githubOrganizationGroupDao()).deleteByGroupUuid(dbSession, groupDto.getUuid());
}
}