From: Sébastien Lesaint Date: Wed, 11 Jan 2017 17:48:03 +0000 (+0100) Subject: SONAR-8595 make ComponentMapper.selectByKey retrieve organization's key X-Git-Tag: 6.3-RC1~532 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=e4a15037fe69bdb81ecdf50049bdeda431980ec1;p=sonarqube.git SONAR-8595 make ComponentMapper.selectByKey retrieve organization's key by joining on table ORGANIZATIONS --- diff --git a/server/sonar-server/src/test/java/org/sonar/server/batch/ProjectDataLoaderTest.java b/server/sonar-server/src/test/java/org/sonar/server/batch/ProjectDataLoaderTest.java index 5b64e57beb7..0028f9f778e 100644 --- a/server/sonar-server/src/test/java/org/sonar/server/batch/ProjectDataLoaderTest.java +++ b/server/sonar-server/src/test/java/org/sonar/server/batch/ProjectDataLoaderTest.java @@ -31,6 +31,7 @@ import org.sonar.db.DbClient; import org.sonar.db.DbSession; import org.sonar.db.DbTester; import org.sonar.db.component.ComponentDto; +import org.sonar.db.organization.OrganizationDto; import org.sonar.server.exceptions.BadRequestException; import org.sonar.server.exceptions.NotFoundException; import org.sonar.server.user.UserSession; @@ -94,13 +95,14 @@ public class ProjectDataLoaderTest { {Scopes.PROJECT, "DEV_PRJ"} }; + OrganizationDto organizationDto = dbTester.organizations().insert(); for (String[] scopeAndQualifier : allScopesAndQualifierButProjectAndModule) { String scope = scopeAndQualifier[0]; String qualifier = scopeAndQualifier[1]; String key = "theKey_" + scope + "_" + qualifier; String uuid = "uuid_" + uuidCounter++; dbClient.componentDao().insert(dbSession, new ComponentDto() - .setOrganizationUuid("org1") + .setOrganizationUuid(organizationDto.getUuid()) .setUuid(uuid) .setUuidPath(uuid + ".") .setRootUuid(uuid) diff --git a/server/sonar-server/src/test/java/org/sonar/server/component/ComponentServiceTest.java b/server/sonar-server/src/test/java/org/sonar/server/component/ComponentServiceTest.java index 682a168111e..21a886bfd85 100644 --- a/server/sonar-server/src/test/java/org/sonar/server/component/ComponentServiceTest.java +++ b/server/sonar-server/src/test/java/org/sonar/server/component/ComponentServiceTest.java @@ -65,8 +65,6 @@ import static org.sonar.server.component.es.ProjectMeasuresIndexDefinition.TYPE_ public class ComponentServiceTest { - private static final String ORGANIZATION_UUID = "org 1A"; - private System2 system2 = System2.INSTANCE; @Rule @@ -84,6 +82,7 @@ public class ComponentServiceTest { private I18nRule i18n = new I18nRule(); private ProjectMeasuresIndexer projectMeasuresIndexer = new ProjectMeasuresIndexer(system2, dbClient, es.client()); + private OrganizationDto organization; private ComponentService underTest; @Before @@ -91,6 +90,7 @@ public class ComponentServiceTest { i18n.put("qualifier.TRK", "Project"); underTest = new ComponentService(dbClient, i18n, userSession, system2, new ComponentFinder(dbClient), projectMeasuresIndexer); + organization = dbTester.organizations().insert(); } @Test @@ -126,14 +126,14 @@ public class ComponentServiceTest { String key = underTest.create( dbSession, newComponentBuilder() - .setOrganizationUuid(ORGANIZATION_UUID) + .setOrganizationUuid(organization.getUuid()) .setKey("struts") .setName("Struts project") .build()) .getKey(); ComponentDto project = underTest.getNullableByKey(key); - assertThat(project.getOrganizationUuid()).isEqualTo(ORGANIZATION_UUID); + assertThat(project.getOrganizationUuid()).isEqualTo(organization.getUuid()); assertThat(project.key()).isEqualTo("struts"); assertThat(project.deprecatedKey()).isEqualTo("struts"); assertThat(project.uuid()).isNotNull(); @@ -156,7 +156,7 @@ public class ComponentServiceTest { String key = underTest.create( dbSession, newComponentBuilder() - .setOrganizationUuid(ORGANIZATION_UUID) + .setOrganizationUuid(organization.getUuid()) .setKey("struts") .setName("Struts project") .setBranch("origin/branch") @@ -164,7 +164,7 @@ public class ComponentServiceTest { .getKey(); ComponentDto project = underTest.getNullableByKey(key); - assertThat(project.getOrganizationUuid()).isEqualTo(ORGANIZATION_UUID); + assertThat(project.getOrganizationUuid()).isEqualTo(organization.getUuid()); assertThat(project.key()).isEqualTo("struts:origin/branch"); assertThat(project.deprecatedKey()).isEqualTo("struts:origin/branch"); } @@ -176,7 +176,7 @@ public class ComponentServiceTest { String key = underTest.create( dbSession, newComponentBuilder() - .setOrganizationUuid(ORGANIZATION_UUID) + .setOrganizationUuid(organization.getUuid()) .setKey("all-project") .setName("All Projects") .setQualifier(Qualifiers.VIEW) @@ -184,7 +184,7 @@ public class ComponentServiceTest { .getKey(); ComponentDto project = underTest.getNullableByKey(key); - assertThat(project.getOrganizationUuid()).isEqualTo(ORGANIZATION_UUID); + assertThat(project.getOrganizationUuid()).isEqualTo(organization.getUuid()); assertThat(project.key()).isEqualTo("all-project"); assertThat(project.deprecatedKey()).isEqualTo("all-project"); assertThat(project.uuid()).isNotNull(); @@ -208,7 +208,7 @@ public class ComponentServiceTest { String key = underTest.createDeveloper( dbSession, newComponentBuilder() - .setOrganizationUuid(ORGANIZATION_UUID) + .setOrganizationUuid(organization.getUuid()) .setKey("DEV:jon.name@mail.com") .setName("John") .setQualifier("DEV") @@ -217,7 +217,7 @@ public class ComponentServiceTest { dbTester.getSession().commit(); ComponentDto dev = underTest.getNullableByKey(key); - assertThat(dev.getOrganizationUuid()).isEqualTo(ORGANIZATION_UUID); + assertThat(dev.getOrganizationUuid()).isEqualTo(organization.getUuid()); assertThat(dev.key()).isEqualTo("DEV:jon.name@mail.com"); assertThat(dev.deprecatedKey()).isEqualTo("DEV:jon.name@mail.com"); assertThat(dev.uuid()).isNotNull(); @@ -242,7 +242,7 @@ public class ComponentServiceTest { underTest.create( dbSession, newComponentBuilder() - .setOrganizationUuid(ORGANIZATION_UUID) + .setOrganizationUuid(organization.getUuid()) .setKey("struts?parent") .setName("Struts project") .build()); @@ -258,7 +258,7 @@ public class ComponentServiceTest { underTest.create( dbSession, newComponentBuilder() - .setOrganizationUuid(ORGANIZATION_UUID) + .setOrganizationUuid(organization.getUuid()) .setKey("struts") .setName("Struts project") .setBranch("origin?branch") @@ -278,7 +278,7 @@ public class ComponentServiceTest { underTest.create( dbSession, newComponentBuilder() - .setOrganizationUuid(ORGANIZATION_UUID) + .setOrganizationUuid(organization.getUuid()) .setKey("struts") .setName("Struts project") .build()); @@ -315,7 +315,7 @@ public class ComponentServiceTest { underTest.create( session, newComponentBuilder() - .setOrganizationUuid(ORGANIZATION_UUID) + .setOrganizationUuid(organization.getUuid()) .setKey(projectKey) .setName(projectKey) .build()); diff --git a/server/sonar-server/src/test/java/org/sonar/server/computation/task/projectanalysis/step/ReportPersistComponentsStepTest.java b/server/sonar-server/src/test/java/org/sonar/server/computation/task/projectanalysis/step/ReportPersistComponentsStepTest.java index eefb3ee52fc..ecb1ec7253e 100644 --- a/server/sonar-server/src/test/java/org/sonar/server/computation/task/projectanalysis/step/ReportPersistComponentsStepTest.java +++ b/server/sonar-server/src/test/java/org/sonar/server/computation/task/projectanalysis/step/ReportPersistComponentsStepTest.java @@ -79,6 +79,7 @@ public class ReportPersistComponentsStepTest extends BaseStepTest { now = DATE_FORMAT.parse("2015-06-02"); when(system2.now()).thenReturn(now.getTime()); + dbTester.organizations().insertForUuid(ORGANIZATION_UUID); underTest = new PersistComponentsStep(dbClient, treeRootHolder, dbIdsRepository, system2, disabledComponentsHolder, analysisMetadataHolder); } @@ -231,7 +232,7 @@ public class ReportPersistComponentsStepTest extends BaseStepTest { @Test public void persist_only_new_components() { - // Project amd module already exists + // Project and module already exists ComponentDto project = ComponentTesting.newProjectDto(dbTester.getDefaultOrganization(), "ABCD").setKey(PROJECT_KEY).setName("Project"); dbClient.componentDao().insert(dbTester.getSession(), project); ComponentDto module = ComponentTesting.newModuleDto("BCDE", project).setKey(MODULE_KEY).setName("Module"); diff --git a/server/sonar-server/src/test/java/org/sonar/server/computation/task/projectanalysis/step/ViewsPersistComponentsStepTest.java b/server/sonar-server/src/test/java/org/sonar/server/computation/task/projectanalysis/step/ViewsPersistComponentsStepTest.java index 2f1d0bb39e0..c147d2fbd1e 100644 --- a/server/sonar-server/src/test/java/org/sonar/server/computation/task/projectanalysis/step/ViewsPersistComponentsStepTest.java +++ b/server/sonar-server/src/test/java/org/sonar/server/computation/task/projectanalysis/step/ViewsPersistComponentsStepTest.java @@ -76,7 +76,7 @@ public class ViewsPersistComponentsStepTest extends BaseStepTest { public MutableDbIdsRepositoryRule dbIdsRepository = MutableDbIdsRepositoryRule.create(treeRootHolder); @Rule public AnalysisMetadataHolderRule analysisMetadataHolder = new AnalysisMetadataHolderRule() - .setOrganizationUuid(ORGANIZATION_UUID); + .setOrganizationUuid(ORGANIZATION_UUID); private System2 system2 = mock(System2.class); private DbClient dbClient = dbTester.getDbClient(); @@ -90,6 +90,7 @@ public class ViewsPersistComponentsStepTest extends BaseStepTest { now = DATE_FORMAT.parse("2015-06-02"); when(system2.now()).thenReturn(now.getTime()); + dbTester.organizations().insertForUuid(ORGANIZATION_UUID); underTest = new PersistComponentsStep(dbClient, treeRootHolder, dbIdsRepository, system2, disabledComponentsHolder, analysisMetadataHolder); } diff --git a/server/sonar-server/src/test/java/org/sonar/server/projectlink/ws/CreateActionTest.java b/server/sonar-server/src/test/java/org/sonar/server/projectlink/ws/CreateActionTest.java index 92a84a21ce7..c8fcd53f8a6 100644 --- a/server/sonar-server/src/test/java/org/sonar/server/projectlink/ws/CreateActionTest.java +++ b/server/sonar-server/src/test/java/org/sonar/server/projectlink/ws/CreateActionTest.java @@ -33,6 +33,7 @@ import org.sonar.db.DbSession; import org.sonar.db.DbTester; import org.sonar.db.component.ComponentDto; import org.sonar.db.component.ComponentLinkDto; +import org.sonar.db.organization.OrganizationDto; import org.sonar.server.component.ComponentFinder; import org.sonar.server.exceptions.ForbiddenException; import org.sonar.server.exceptions.NotFoundException; @@ -207,15 +208,11 @@ public class CreateActionTest { } private ComponentDto insertProject() { - ComponentDto project = new ComponentDto() - .setOrganizationUuid("org1") - .setUuid(PROJECT_UUID) - .setKey(PROJECT_KEY) - .setUuidPath("") - .setRootUuid(""); - dbClient.componentDao().insert(dbSession, project); - dbSession.commit(); - return project; + OrganizationDto organizationDto = db.organizations().insert(); + return db.components().insertProject( + organizationDto, + (t) -> t.setUuid(PROJECT_UUID) + .setKey(PROJECT_KEY)); } private void createAndTest(String name, String url, String type) throws IOException { diff --git a/server/sonar-server/src/test/resources/org/sonar/server/computation/task/projectanalysis/step/LoadPeriodsStepTest/no_previous_version.xml b/server/sonar-server/src/test/resources/org/sonar/server/computation/task/projectanalysis/step/LoadPeriodsStepTest/no_previous_version.xml index f864c0eb27d..0d3e4cf9395 100644 --- a/server/sonar-server/src/test/resources/org/sonar/server/computation/task/projectanalysis/step/LoadPeriodsStepTest/no_previous_version.xml +++ b/server/sonar-server/src/test/resources/org/sonar/server/computation/task/projectanalysis/step/LoadPeriodsStepTest/no_previous_version.xml @@ -1,5 +1,11 @@ + + + + + + + + + + + + + + + + + + + + + + + + + SELECT - + , + o.kee as organizationKey FROM projects p - - AND p.kee=#{key} - + inner join organizations o on + o.uuid = p.organization_uuid + where + p.kee=#{key}