aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLéo Geoffroy <leo.geoffroy@sonarsource.com>2023-06-30 11:42:57 +0200
committersonartech <sonartech@sonarsource.com>2023-07-03 20:03:13 +0000
commitebece82669c46e8657d10407ee1d5dc957af3a6c (patch)
tree1569745006df20ebcea3f565597ddd3610dd649d
parentb819971ea23f4d63feed5147608a570f026d7906 (diff)
downloadsonarqube-ebece82669c46e8657d10407ee1d5dc957af3a6c.tar.gz
sonarqube-ebece82669c46e8657d10407ee1d5dc957af3a6c.zip
SONAR-19558 Update rest of tests for other modules
-rw-r--r--server/sonar-auth-github/src/test/java/org/sonar/auth/github/GitHubSettingsTest.java2
-rw-r--r--server/sonar-auth-github/src/test/java/org/sonar/auth/github/IntegrationTest.java2
-rw-r--r--server/sonar-auth-saml/src/it/java/org/sonar/auth/saml/SamlIdentityProviderIT.java2
-rw-r--r--server/sonar-auth-saml/src/it/java/org/sonar/auth/saml/SamlMessageIdCheckerIT.java2
-rw-r--r--server/sonar-ce-common/src/it/java/org/sonar/ce/queue/CeQueueImplIT.java2
-rw-r--r--server/sonar-ce-task/src/it/java/org/sonar/ce/task/log/CeTaskMessagesImplIT.java2
-rw-r--r--server/sonar-ce/src/it/java/org/sonar/ce/analysis/cache/cleaning/AnalysisCacheCleaningSchedulerImplIT.java2
-rw-r--r--server/sonar-ce/src/it/java/org/sonar/ce/container/ComputeEngineContainerImplIT.java2
-rw-r--r--server/sonar-ce/src/it/java/org/sonar/ce/monitoring/CeDatabaseMBeanImplIT.java2
-rw-r--r--server/sonar-ce/src/it/java/org/sonar/ce/queue/InternalCeQueueImplIT.java4
-rw-r--r--server/sonar-ce/src/it/java/org/sonar/ce/queue/NextPendingTaskPickerIT.java2
-rw-r--r--server/sonar-ce/src/it/java/org/sonar/ce/taskprocessor/CeWorkerImplIT.java2
-rw-r--r--server/sonar-db-dao/src/it/java/org/sonar/db/component/AnalysisPropertiesDaoIT.java7
-rw-r--r--server/sonar-db-dao/src/main/resources/org/sonar/db/component/AnalysisPropertiesMapper.xml2
-rw-r--r--server/sonar-server-common/src/it/java/org/sonar/server/webhook/AsynchronousWebHooksImplIT.java9
-rw-r--r--server/sonar-webserver-api/src/it/java/org/sonar/server/plugins/DetectPluginChangeIT.java2
-rw-r--r--server/sonar-webserver-api/src/it/java/org/sonar/server/rule/CachingRuleFinderIT.java2
-rw-r--r--server/sonar-webserver-api/src/test/java/org/sonar/server/plugins/PluginConsentVerifierTest.java2
-rw-r--r--server/sonar-webserver-api/src/test/java/org/sonar/server/project/ProjectDefaultVisibilityTest.java2
-rw-r--r--server/sonar-webserver-core/src/it/java/org/sonar/server/platform/PersistentSettingsIT.java2
-rw-r--r--server/sonar-webserver-core/src/it/java/org/sonar/server/platform/StartupMetadataPersisterIT.java2
-rw-r--r--server/sonar-webserver-core/src/it/java/org/sonar/server/platform/serverid/ServerIdManagerIT.java2
-rw-r--r--server/sonar-webserver-core/src/it/java/org/sonar/server/startup/RegisterMetricsIT.java2
-rw-r--r--server/sonar-webserver-core/src/it/java/org/sonar/server/startup/RegisterPluginsIT.java2
-rw-r--r--server/sonar-webserver-core/src/it/java/org/sonar/server/startup/UpgradeSuggestionsCleanerIT.java2
-rw-r--r--server/sonar-webserver-core/src/it/java/org/sonar/server/webhook/WebhookQGChangeEventListenerIT.java9
-rw-r--r--server/sonar-webserver-core/src/test/java/org/sonar/server/issue/index/AsyncIssueIndexingImplTest.java2
-rw-r--r--server/sonar-webserver-core/src/test/java/org/sonar/server/platform/db/CheckAnyonePermissionsAtStartupTest.java7
-rw-r--r--server/sonar-webserver-core/src/test/java/org/sonar/server/platform/db/CheckLanguageSpecificParamsAtStartupTest.java2
-rw-r--r--server/sonar-webserver-core/src/test/java/org/sonar/server/platform/monitoring/AlmConfigurationSectionTest.java2
-rw-r--r--server/sonar-webserver-core/src/test/java/org/sonar/server/platform/monitoring/DbConnectionSectionIT.java2
-rw-r--r--server/sonar-webserver-core/src/test/java/org/sonar/server/platform/monitoring/SettingsSectionTest.java2
-rw-r--r--server/sonar-webserver-core/src/test/java/org/sonar/server/qualitygate/ProjectsInWarningDaemonTest.java18
-rw-r--r--server/sonar-webserver-core/src/test/java/org/sonar/server/rule/RegisterRulesTest.java2
-rw-r--r--server/sonar-webserver-core/src/test/java/org/sonar/server/startup/RegisterPermissionTemplatesTest.java2
-rw-r--r--server/sonar-webserver-core/src/test/java/org/sonar/server/telemetry/TelemetryDataLoaderImplTest.java134
-rw-r--r--server/sonar-webserver-es/src/test/java/org/sonar/server/component/index/ComponentIndexSearchTest.java64
-rw-r--r--server/sonar-webserver-es/src/test/java/org/sonar/server/es/RecoveryIndexerTest.java2
-rw-r--r--server/sonar-webserver-es/src/test/java/org/sonar/server/issue/index/IssueIndexSyncProgressCheckerTest.java81
-rw-r--r--server/sonar-webserver-es/src/test/java/org/sonar/server/issue/index/IssueIndexTestCommon.java2
-rw-r--r--server/sonar-webserver-es/src/test/java/org/sonar/server/issue/index/IssueQueryFactoryTest.java70
-rw-r--r--server/sonar-webserver-pushapi/src/it/java/org/sonar/server/pushapi/scheduler/purge/PushEventsPurgeSchedulerAndExecutorIT.java2
-rw-r--r--server/sonar-webserver-pushapi/src/test/java/org/sonar/server/pushapi/hotspots/HotspotChangeEventServiceImplTest.java2
-rw-r--r--server/sonar-webserver-pushapi/src/test/java/org/sonar/server/pushapi/qualityprofile/QualityProfileChangeEventServiceImplTest.java52
-rw-r--r--server/sonar-webserver-pushapi/src/test/java/org/sonar/server/pushapi/scheduler/polling/PushEventPollSchedulerTest.java2
-rw-r--r--server/sonar-webserver-webapi/src/it/java/org/sonar/server/ce/ws/ActivityActionIT.java2
-rw-r--r--server/sonar-webserver/src/it/java/org/sonar/server/platform/web/SonarLintConnectionFilterIT.java2
47 files changed, 278 insertions, 249 deletions
diff --git a/server/sonar-auth-github/src/test/java/org/sonar/auth/github/GitHubSettingsTest.java b/server/sonar-auth-github/src/test/java/org/sonar/auth/github/GitHubSettingsTest.java
index 5edd93d982c..c2ddf5cf2cd 100644
--- a/server/sonar-auth-github/src/test/java/org/sonar/auth/github/GitHubSettingsTest.java
+++ b/server/sonar-auth-github/src/test/java/org/sonar/auth/github/GitHubSettingsTest.java
@@ -39,7 +39,7 @@ import static org.mockito.Mockito.when;
public class GitHubSettingsTest {
@Rule
- public DbTester db = DbTester.create(System2.INSTANCE);
+ public DbTester db = DbTester.create(System2.INSTANCE, true);
private MapSettings settings = new MapSettings(new PropertyDefinitions(System2.INSTANCE, GitHubSettings.definitions()));
private InternalProperties internalProperties = mock(InternalProperties.class);
diff --git a/server/sonar-auth-github/src/test/java/org/sonar/auth/github/IntegrationTest.java b/server/sonar-auth-github/src/test/java/org/sonar/auth/github/IntegrationTest.java
index f7ba8e35dd7..ef39a34c06d 100644
--- a/server/sonar-auth-github/src/test/java/org/sonar/auth/github/IntegrationTest.java
+++ b/server/sonar-auth-github/src/test/java/org/sonar/auth/github/IntegrationTest.java
@@ -59,7 +59,7 @@ public class IntegrationTest {
public MockWebServer github = new MockWebServer();
@Rule
- public DbTester db = DbTester.create(System2.INSTANCE);
+ public DbTester db = DbTester.create(System2.INSTANCE, true);
// load settings with default values
private MapSettings settings = new MapSettings(new PropertyDefinitions(System2.INSTANCE, GitHubSettings.definitions()));
diff --git a/server/sonar-auth-saml/src/it/java/org/sonar/auth/saml/SamlIdentityProviderIT.java b/server/sonar-auth-saml/src/it/java/org/sonar/auth/saml/SamlIdentityProviderIT.java
index ea83ab6ad49..4318530e2b8 100644
--- a/server/sonar-auth-saml/src/it/java/org/sonar/auth/saml/SamlIdentityProviderIT.java
+++ b/server/sonar-auth-saml/src/it/java/org/sonar/auth/saml/SamlIdentityProviderIT.java
@@ -68,7 +68,7 @@ public class SamlIdentityProviderIT {
private static final String SP_PRIVATE_KEY = "-----BEGIN PRIVATE KEY-----MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDSFoT371C0/klZuPgvKbGItkmTaf5CweNXL8u389d98aOXRpDQ7maTXdV/W+VcL8vUWg8yG6nn8CRwweYnGTNdn9UAdhgknvxQe3pq3EwOJyls4Fpiq6YTh+DQfiZUQizjFjDOr/GG5O2lNvTRkI4XZj/XnWjRqVZwttiA5tm1sKkvGdyOQljwn4Jja/VbITdV8GASumx66Bil/wamSsqIzm2RjsOOGSsf5VjYUPwDobpuSf+j4DLtWjem/9vIzI2wcE30uC8LBAgO3JAlIS9NQrchjS9xhMJRohOoitaSPmqsOy7D2BH0h7XX6TNgv/WYTkBY4eZPao3PsL2A6AmhAgMBAAECggEBAJj11HJAR96/leBBkFGmZaBIOGGgNoOcb023evfADhGgsZ8evamhKgX5t8w2uFPaaOl/eLje82Hvslh2lH+7FW8BRDBFy2Y+ay6d+I99PdLAKKUg5C4bE5v8vm6OqpGGbPAZ5AdYit3QKEa2MKG0QgA/bhQqg3rDdDA0sIWJjtF9MLv7LI7Tm0qgiHOKsI0MEBFk+ZoibgKWYh/dnfGDRWyC3Puqe13rdSheNJYUDR/0QMkd/EJNpLWv06uk+w8w2lU4RgN6TiV76ZZUIGZAAHFgMELJysgtBTCkOQY5roPu17OmMZjKfxngeIfNyd42q3/T6DmUbbwNYfP2HRMoiMECgYEA6SVc1mZ4ykytC9M61rZwT+2zXtJKudQVa0qpTtkf0aznRmnDOuc1bL7ewKIIIp9r5HKVteO6SKgpHmrP+qmvbwZ0Pz51Zg0MetoSmT9m0599/tOU2k6OI09dvQ4Xa3ccN5Czl61Q/HkMeAIDny8MrhGVBwhallE4J4fm/OjuVK0CgYEA5q6IVgqZtfcV1azIF6uOFt6blfn142zrwq0fF39jog2f+4jXaBKw6L4aP0HvIL83UArGppYY31894bLb6YL4EjS2JNbABM2VnJpJd4oGopOE42GCZlZRpf751zOptYAN23NFSujLlfaUfMbyrqIbRFC2DCdzNTU50GT5SAXX80UCgYEAlyvQvHwJCjMZaTd3SU1WGZ1o1qzIIyHvGXh5u1Rxm0TfWPquyfys2WwRhxoI6FoyXRgnFp8oZIAU2VIstL1dsUGgEnnvKVKAqw/HS3Keu80IpziNpdeVtjN59mGysc2zkBvVNx38Cxh6Cz5TFt4s/JkN5ld2VU0oeglWrtph3qkCgYALszZ/BrKdJBcba1QKv0zJpCjIBpGOI2whx54YFwH6qi4/F8W1JZ2LcHjsVG/IfWpUyPciY+KHEdGVrPiyc04Zvkquu6WpmLPJ6ZloUrvbaxgGYF+4yRADF1ecrqYg6onJY6NUFVKeHI+TdJPCf75aTK2vGCEjxbtU8ooiOQmm8QKBgEGe9ZdrwTP9rMQ35jYtzU+dT06k1r9BE9Q8CmrXl0HwK717ZWboX4J0YoFjxZC8PDsMl3p46MJ83rKbLU728uKig1AkZo7/OedxTWvezjZ1+lDyjC2EguXbgY1ecSC2HbJh9g+v8RUuhWxuA7RYoW92xVtKj+6l4vMadVP4Myp8-----END PRIVATE KEY-----";
@Rule
- public DbTester db = DbTester.create();
+ public DbTester db = DbTester.create(true);
@Rule
public LogTester log = new LogTester();
diff --git a/server/sonar-auth-saml/src/it/java/org/sonar/auth/saml/SamlMessageIdCheckerIT.java b/server/sonar-auth-saml/src/it/java/org/sonar/auth/saml/SamlMessageIdCheckerIT.java
index 517269fe80a..59c759fe877 100644
--- a/server/sonar-auth-saml/src/it/java/org/sonar/auth/saml/SamlMessageIdCheckerIT.java
+++ b/server/sonar-auth-saml/src/it/java/org/sonar/auth/saml/SamlMessageIdCheckerIT.java
@@ -38,7 +38,7 @@ import static org.mockito.Mockito.when;
public class SamlMessageIdCheckerIT {
@Rule
- public DbTester db = DbTester.create();
+ public DbTester db = DbTester.create(true);
private DbSession dbSession = db.getSession();
diff --git a/server/sonar-ce-common/src/it/java/org/sonar/ce/queue/CeQueueImplIT.java b/server/sonar-ce-common/src/it/java/org/sonar/ce/queue/CeQueueImplIT.java
index 32f62b39957..6f2d78562db 100644
--- a/server/sonar-ce-common/src/it/java/org/sonar/ce/queue/CeQueueImplIT.java
+++ b/server/sonar-ce-common/src/it/java/org/sonar/ce/queue/CeQueueImplIT.java
@@ -70,7 +70,7 @@ public class CeQueueImplIT {
private System2 system2 = new TestSystem2().setNow(NOW);
@Rule
- public DbTester db = DbTester.create(system2);
+ public DbTester db = DbTester.create(system2, true);
private DbSession session = db.getSession();
diff --git a/server/sonar-ce-task/src/it/java/org/sonar/ce/task/log/CeTaskMessagesImplIT.java b/server/sonar-ce-task/src/it/java/org/sonar/ce/task/log/CeTaskMessagesImplIT.java
index aab0384acf5..22ad11a1512 100644
--- a/server/sonar-ce-task/src/it/java/org/sonar/ce/task/log/CeTaskMessagesImplIT.java
+++ b/server/sonar-ce-task/src/it/java/org/sonar/ce/task/log/CeTaskMessagesImplIT.java
@@ -48,7 +48,7 @@ import static org.mockito.Mockito.when;
public class CeTaskMessagesImplIT {
@Rule
- public DbTester dbTester = DbTester.create(System2.INSTANCE);
+ public DbTester dbTester = DbTester.create(System2.INSTANCE, true);
private DbClient dbClient = dbTester.getDbClient();
private UuidFactory uuidFactory = mock(UuidFactory.class);
diff --git a/server/sonar-ce/src/it/java/org/sonar/ce/analysis/cache/cleaning/AnalysisCacheCleaningSchedulerImplIT.java b/server/sonar-ce/src/it/java/org/sonar/ce/analysis/cache/cleaning/AnalysisCacheCleaningSchedulerImplIT.java
index fe6683c7753..2b049fe59fe 100644
--- a/server/sonar-ce/src/it/java/org/sonar/ce/analysis/cache/cleaning/AnalysisCacheCleaningSchedulerImplIT.java
+++ b/server/sonar-ce/src/it/java/org/sonar/ce/analysis/cache/cleaning/AnalysisCacheCleaningSchedulerImplIT.java
@@ -47,7 +47,7 @@ public class AnalysisCacheCleaningSchedulerImplIT {
private System2 system2 = mock(System2.class);
private final static UuidFactory uuidFactory = new SequenceUuidFactory();
@Rule
- public DbTester dbTester = DbTester.create(system2);
+ public DbTester dbTester = DbTester.create(system2, true);
private DbSession dbSession = dbTester.getSession();
private ScannerAnalysisCacheDao scannerAnalysisCacheDao = dbTester.getDbClient().scannerAnalysisCacheDao();
diff --git a/server/sonar-ce/src/it/java/org/sonar/ce/container/ComputeEngineContainerImplIT.java b/server/sonar-ce/src/it/java/org/sonar/ce/container/ComputeEngineContainerImplIT.java
index 8a57a3f413a..529c1478a45 100644
--- a/server/sonar-ce/src/it/java/org/sonar/ce/container/ComputeEngineContainerImplIT.java
+++ b/server/sonar-ce/src/it/java/org/sonar/ce/container/ComputeEngineContainerImplIT.java
@@ -62,7 +62,7 @@ public class ComputeEngineContainerImplIT {
public TemporaryFolder tempFolder = new TemporaryFolder();
@Rule
- public DbTester db = DbTester.create(System2.INSTANCE);
+ public DbTester db = DbTester.create(System2.INSTANCE, true);
private final ServiceLoaderWrapper serviceLoaderWrapper = mock(ServiceLoaderWrapper.class);
private final ProcessProperties processProperties = new ProcessProperties(serviceLoaderWrapper);
diff --git a/server/sonar-ce/src/it/java/org/sonar/ce/monitoring/CeDatabaseMBeanImplIT.java b/server/sonar-ce/src/it/java/org/sonar/ce/monitoring/CeDatabaseMBeanImplIT.java
index 8f43bd9b081..5d1e6df57bb 100644
--- a/server/sonar-ce/src/it/java/org/sonar/ce/monitoring/CeDatabaseMBeanImplIT.java
+++ b/server/sonar-ce/src/it/java/org/sonar/ce/monitoring/CeDatabaseMBeanImplIT.java
@@ -37,7 +37,7 @@ import static org.assertj.core.api.Assertions.assertThat;
public class CeDatabaseMBeanImplIT {
@Rule
- public DbTester dbTester = DbTester.create(System2.INSTANCE);
+ public DbTester dbTester = DbTester.create(System2.INSTANCE, true);
private final CeDatabaseMBeanImpl underTest = new CeDatabaseMBeanImpl(dbTester.getDbClient());
diff --git a/server/sonar-ce/src/it/java/org/sonar/ce/queue/InternalCeQueueImplIT.java b/server/sonar-ce/src/it/java/org/sonar/ce/queue/InternalCeQueueImplIT.java
index 3eb49dbfde1..a5e7cc459ee 100644
--- a/server/sonar-ce/src/it/java/org/sonar/ce/queue/InternalCeQueueImplIT.java
+++ b/server/sonar-ce/src/it/java/org/sonar/ce/queue/InternalCeQueueImplIT.java
@@ -76,7 +76,7 @@ public class InternalCeQueueImplIT {
private final System2 system2 = new AlwaysIncreasingSystem2();
@Rule
- public DbTester db = DbTester.create(system2);
+ public DbTester db = DbTester.create(system2, true);
private final DbSession session = db.getSession();
private final UuidFactory uuidFactory = UuidFactoryImpl.INSTANCE;
@@ -376,7 +376,7 @@ public class InternalCeQueueImplIT {
assertThat(peek.get().getUuid()).isEqualTo(task.getUuid());
assertThat(peek.get().getType()).isEqualTo(CeTaskTypes.REPORT);
assertThat(peek.get().getComponent()).contains(new CeTask.Component(mainBranchComponent.uuid(), mainBranchComponent.getKey(), mainBranchComponent.name()));
- assertThat(peek.get().getEntity()).contains(peek.get().getComponent().get());
+ assertThat(peek.get().getEntity()).contains(new CeTask.Component(projectData.getProjectDto().getUuid(), projectData.getProjectDto().getKey(), projectData.getProjectDto().getName()));
// no more pending tasks
peek = underTest.peek(WORKER_UUID_2, true);
diff --git a/server/sonar-ce/src/it/java/org/sonar/ce/queue/NextPendingTaskPickerIT.java b/server/sonar-ce/src/it/java/org/sonar/ce/queue/NextPendingTaskPickerIT.java
index e4cda8dc5e1..4b90610038d 100644
--- a/server/sonar-ce/src/it/java/org/sonar/ce/queue/NextPendingTaskPickerIT.java
+++ b/server/sonar-ce/src/it/java/org/sonar/ce/queue/NextPendingTaskPickerIT.java
@@ -58,7 +58,7 @@ public class NextPendingTaskPickerIT {
private NextPendingTaskPicker underTest;
@Rule
- public DbTester db = DbTester.create(alwaysIncreasingSystem2);
+ public DbTester db = DbTester.create(alwaysIncreasingSystem2, true);
@Before
public void before() {
diff --git a/server/sonar-ce/src/it/java/org/sonar/ce/taskprocessor/CeWorkerImplIT.java b/server/sonar-ce/src/it/java/org/sonar/ce/taskprocessor/CeWorkerImplIT.java
index 1fbc8fd3a47..5081a7e27d1 100644
--- a/server/sonar-ce/src/it/java/org/sonar/ce/taskprocessor/CeWorkerImplIT.java
+++ b/server/sonar-ce/src/it/java/org/sonar/ce/taskprocessor/CeWorkerImplIT.java
@@ -85,7 +85,7 @@ public class CeWorkerImplIT {
@Rule
public LogTester logTester = new LogTester();
@Rule
- public DbTester db = DbTester.create(system2);
+ public DbTester db = DbTester.create(system2, true);
private DbSession session = db.getSession();
diff --git a/server/sonar-db-dao/src/it/java/org/sonar/db/component/AnalysisPropertiesDaoIT.java b/server/sonar-db-dao/src/it/java/org/sonar/db/component/AnalysisPropertiesDaoIT.java
index b82888d7c64..f76141792cb 100644
--- a/server/sonar-db-dao/src/it/java/org/sonar/db/component/AnalysisPropertiesDaoIT.java
+++ b/server/sonar-db-dao/src/it/java/org/sonar/db/component/AnalysisPropertiesDaoIT.java
@@ -161,7 +161,7 @@ public class AnalysisPropertiesDaoIT {
String analysisUuid = randomAlphanumeric(40);
List<AnalysisPropertyDto> propertyDtos = Arrays.asList(
- newAnalysisPropertyDto(random.nextInt(10), "key1",analysisUuid),
+ newAnalysisPropertyDto(random.nextInt(10), "key1", analysisUuid),
newAnalysisPropertyDto(random.nextInt(10), "key2", analysisUuid),
newAnalysisPropertyDto(random.nextInt(10), "key3", analysisUuid)
);
@@ -182,7 +182,8 @@ public class AnalysisPropertiesDaoIT {
final String analysisPropertyKey = "key";
for (int i = 0; i < 7; i++) {
String uuid = "uuid" + i;
- ProjectDto project = dbTester.components().insertPrivateProject(p -> p.setUuid(uuid).setBranchUuid(uuid)).getProjectDto();
+ ProjectDto project = dbTester.components().insertPrivateProject(c -> {
+ }, p -> p.setUuid(uuid)).getProjectDto();
dbTester.components().insertSnapshot(project, s -> s.setLast(true).setUuid(uuid));
// branches shouldn't be taken into account
dbTester.components().insertProjectBranch(project);
@@ -206,7 +207,7 @@ public class AnalysisPropertiesDaoIT {
tuple("uuid3", "undetected"),
tuple("uuid4", "git"),
tuple("uuid5", "git")
- );
+ );
}
private AnalysisPropertyDto insertAnalysisPropertyDto(int valueLength) {
diff --git a/server/sonar-db-dao/src/main/resources/org/sonar/db/component/AnalysisPropertiesMapper.xml b/server/sonar-db-dao/src/main/resources/org/sonar/db/component/AnalysisPropertiesMapper.xml
index b356165dcd1..d085e0fd203 100644
--- a/server/sonar-db-dao/src/main/resources/org/sonar/db/component/AnalysisPropertiesMapper.xml
+++ b/server/sonar-db-dao/src/main/resources/org/sonar/db/component/AnalysisPropertiesMapper.xml
@@ -33,7 +33,7 @@
<select id="selectAnalysisPropertyValueInLastAnalysisPerProject" parameterType="string" resultType="AnalysisPropertyValuePerProject">
select
- cp.uuid as "projectUuid", ap.text_value as "propertyValue"
+ pb.project_uuid as "projectUuid", ap.text_value as "propertyValue"
from components cp
inner join snapshots s on s.root_component_uuid = cp.uuid
inner join analysis_properties ap on ap.analysis_uuid = s.uuid
diff --git a/server/sonar-server-common/src/it/java/org/sonar/server/webhook/AsynchronousWebHooksImplIT.java b/server/sonar-server-common/src/it/java/org/sonar/server/webhook/AsynchronousWebHooksImplIT.java
index b903fe82604..5d1c8141b4f 100644
--- a/server/sonar-server-common/src/it/java/org/sonar/server/webhook/AsynchronousWebHooksImplIT.java
+++ b/server/sonar-server-common/src/it/java/org/sonar/server/webhook/AsynchronousWebHooksImplIT.java
@@ -29,6 +29,7 @@ import org.sonar.api.utils.System2;
import org.sonar.db.DbTester;
import org.sonar.db.component.ComponentDbTester;
import org.sonar.db.component.ComponentDto;
+import org.sonar.db.project.ProjectDto;
import org.sonar.db.webhook.WebhookDbTester;
import org.sonar.server.async.AsyncExecution;
@@ -47,7 +48,7 @@ public class AsynchronousWebHooksImplIT {
private final System2 system2 = mock(System2.class);
@Rule
- public DbTester db = create(system2);
+ public DbTester db = create(system2, true);
private final WebhookDbTester webhookDbTester = db.webhooks();
private final ComponentDbTester componentDbTester = db.components();
@@ -62,14 +63,14 @@ public class AsynchronousWebHooksImplIT {
@Test
public void send_global_webhooks() {
- ComponentDto project = componentDbTester.insertPrivateProject().getMainBranchComponent();
+ ProjectDto project = componentDbTester.insertPrivateProject().getProjectDto();
webhookDbTester.insert(newGlobalWebhook().setName("First").setUrl("http://url1"), null, null);
webhookDbTester.insert(newGlobalWebhook().setName("Second").setUrl("http://url2"), null, null);
caller.enqueueSuccess(NOW, 200, 1_234);
caller.enqueueFailure(NOW, new IOException("Fail to connect"));
- underTest.sendProjectAnalysisUpdate(new WebHooks.Analysis(project.uuid(), "1", "#1"), () -> mock, mock(LogStatistics.class));
+ underTest.sendProjectAnalysisUpdate(new WebHooks.Analysis(project.getUuid(), "1", "#1"), () -> mock, mock(LogStatistics.class));
assertThat(caller.countSent()).isZero();
verifyNoInteractions(deliveryStorage);
@@ -78,7 +79,7 @@ public class AsynchronousWebHooksImplIT {
assertThat(caller.countSent()).isEqualTo(2);
verify(deliveryStorage, times(2)).persist(any(WebhookDelivery.class));
- verify(deliveryStorage).purge(project.uuid());
+ verify(deliveryStorage).purge(project.getUuid());
}
private static class RecordingAsyncExecution implements AsyncExecution {
diff --git a/server/sonar-webserver-api/src/it/java/org/sonar/server/plugins/DetectPluginChangeIT.java b/server/sonar-webserver-api/src/it/java/org/sonar/server/plugins/DetectPluginChangeIT.java
index 412565ae931..ef36ce7140f 100644
--- a/server/sonar-webserver-api/src/it/java/org/sonar/server/plugins/DetectPluginChangeIT.java
+++ b/server/sonar-webserver-api/src/it/java/org/sonar/server/plugins/DetectPluginChangeIT.java
@@ -35,7 +35,7 @@ import static org.mockito.Mockito.when;
public class DetectPluginChangeIT {
@Rule
- public DbTester dbTester = DbTester.create();
+ public DbTester dbTester = DbTester.create(true);
private final ServerPluginRepository pluginRepository = new ServerPluginRepository();
private final DetectPluginChange detectPluginChange = new DetectPluginChange(pluginRepository, dbTester.getDbClient());
diff --git a/server/sonar-webserver-api/src/it/java/org/sonar/server/rule/CachingRuleFinderIT.java b/server/sonar-webserver-api/src/it/java/org/sonar/server/rule/CachingRuleFinderIT.java
index 5d0134b6f29..df8b85bbbe8 100644
--- a/server/sonar-webserver-api/src/it/java/org/sonar/server/rule/CachingRuleFinderIT.java
+++ b/server/sonar-webserver-api/src/it/java/org/sonar/server/rule/CachingRuleFinderIT.java
@@ -49,7 +49,7 @@ import static org.mockito.Mockito.when;
public class CachingRuleFinderIT {
@org.junit.Rule
- public DbTester dbTester = DbTester.create(System2.INSTANCE);
+ public DbTester dbTester = DbTester.create(System2.INSTANCE, true);
private final DbClient dbClient = dbTester.getDbClient();
private final AlwaysIncreasingSystem2 system2 = new AlwaysIncreasingSystem2();
diff --git a/server/sonar-webserver-api/src/test/java/org/sonar/server/plugins/PluginConsentVerifierTest.java b/server/sonar-webserver-api/src/test/java/org/sonar/server/plugins/PluginConsentVerifierTest.java
index 813bac5d10d..86fcf4eb1c0 100644
--- a/server/sonar-webserver-api/src/test/java/org/sonar/server/plugins/PluginConsentVerifierTest.java
+++ b/server/sonar-webserver-api/src/test/java/org/sonar/server/plugins/PluginConsentVerifierTest.java
@@ -42,7 +42,7 @@ import static org.sonar.core.plugin.PluginType.EXTERNAL;
public class PluginConsentVerifierTest {
@Rule
- public DbTester db = DbTester.create(System2.INSTANCE);
+ public DbTester db = DbTester.create(System2.INSTANCE, true);
@Rule
public LogTester logTester = new LogTester();
diff --git a/server/sonar-webserver-api/src/test/java/org/sonar/server/project/ProjectDefaultVisibilityTest.java b/server/sonar-webserver-api/src/test/java/org/sonar/server/project/ProjectDefaultVisibilityTest.java
index 3622ea583e4..acf6c291849 100644
--- a/server/sonar-webserver-api/src/test/java/org/sonar/server/project/ProjectDefaultVisibilityTest.java
+++ b/server/sonar-webserver-api/src/test/java/org/sonar/server/project/ProjectDefaultVisibilityTest.java
@@ -30,7 +30,7 @@ import static org.assertj.core.api.Assertions.assertThatThrownBy;
public class ProjectDefaultVisibilityTest {
@Rule
- public final DbTester db = DbTester.create();
+ public final DbTester db = DbTester.create(true);
private final ProjectDefaultVisibility underTest = new ProjectDefaultVisibility(db.getDbClient());
diff --git a/server/sonar-webserver-core/src/it/java/org/sonar/server/platform/PersistentSettingsIT.java b/server/sonar-webserver-core/src/it/java/org/sonar/server/platform/PersistentSettingsIT.java
index efa71811800..2fb88e57f69 100644
--- a/server/sonar-webserver-core/src/it/java/org/sonar/server/platform/PersistentSettingsIT.java
+++ b/server/sonar-webserver-core/src/it/java/org/sonar/server/platform/PersistentSettingsIT.java
@@ -33,7 +33,7 @@ import static org.mockito.Mockito.verify;
public class PersistentSettingsIT {
@Rule
- public DbTester dbTester = DbTester.create(System2.INSTANCE);
+ public DbTester dbTester = DbTester.create(System2.INSTANCE, true);
private Settings delegate = new MapSettings();
private SettingsChangeNotifier changeNotifier = mock(SettingsChangeNotifier.class);
private PersistentSettings underTest = new PersistentSettings(delegate, dbTester.getDbClient(), changeNotifier);
diff --git a/server/sonar-webserver-core/src/it/java/org/sonar/server/platform/StartupMetadataPersisterIT.java b/server/sonar-webserver-core/src/it/java/org/sonar/server/platform/StartupMetadataPersisterIT.java
index 89d7050a583..3b31f020c8f 100644
--- a/server/sonar-webserver-core/src/it/java/org/sonar/server/platform/StartupMetadataPersisterIT.java
+++ b/server/sonar-webserver-core/src/it/java/org/sonar/server/platform/StartupMetadataPersisterIT.java
@@ -32,7 +32,7 @@ import static org.assertj.core.api.Assertions.assertThat;
public class StartupMetadataPersisterIT {
@Rule
- public DbTester dbTester = DbTester.create(System2.INSTANCE);
+ public DbTester dbTester = DbTester.create(System2.INSTANCE, true);
private StartupMetadata metadata = new StartupMetadata(123_456_789L);
private StartupMetadataPersister underTest = new StartupMetadataPersister(metadata, dbTester.getDbClient());
diff --git a/server/sonar-webserver-core/src/it/java/org/sonar/server/platform/serverid/ServerIdManagerIT.java b/server/sonar-webserver-core/src/it/java/org/sonar/server/platform/serverid/ServerIdManagerIT.java
index 85754d2e20e..178d99ea61f 100644
--- a/server/sonar-webserver-core/src/it/java/org/sonar/server/platform/serverid/ServerIdManagerIT.java
+++ b/server/sonar-webserver-core/src/it/java/org/sonar/server/platform/serverid/ServerIdManagerIT.java
@@ -60,7 +60,7 @@ public class ServerIdManagerIT {
private static final String CHECKSUM_1 = randomAlphanumeric(12);
@Rule
- public final DbTester dbTester = DbTester.create(System2.INSTANCE);
+ public final DbTester dbTester = DbTester.create(System2.INSTANCE, true);
private final ServerIdChecksum serverIdChecksum = mock(ServerIdChecksum.class);
private final ServerIdFactory serverIdFactory = mock(ServerIdFactory.class);
diff --git a/server/sonar-webserver-core/src/it/java/org/sonar/server/startup/RegisterMetricsIT.java b/server/sonar-webserver-core/src/it/java/org/sonar/server/startup/RegisterMetricsIT.java
index 1f1b1db9017..15ceb3456d4 100644
--- a/server/sonar-webserver-core/src/it/java/org/sonar/server/startup/RegisterMetricsIT.java
+++ b/server/sonar-webserver-core/src/it/java/org/sonar/server/startup/RegisterMetricsIT.java
@@ -44,7 +44,7 @@ import static org.sonar.core.util.stream.MoreCollectors.uniqueIndex;
public class RegisterMetricsIT {
@Rule
- public DbTester dbTester = DbTester.create(System2.INSTANCE);
+ public DbTester dbTester = DbTester.create(System2.INSTANCE, true);
private final UuidFactory uuidFactory = new SequenceUuidFactory();
private final DbClient dbClient = dbTester.getDbClient();
diff --git a/server/sonar-webserver-core/src/it/java/org/sonar/server/startup/RegisterPluginsIT.java b/server/sonar-webserver-core/src/it/java/org/sonar/server/startup/RegisterPluginsIT.java
index 52f24f023df..a52df0e30f4 100644
--- a/server/sonar-webserver-core/src/it/java/org/sonar/server/startup/RegisterPluginsIT.java
+++ b/server/sonar-webserver-core/src/it/java/org/sonar/server/startup/RegisterPluginsIT.java
@@ -51,7 +51,7 @@ public class RegisterPluginsIT {
@Rule
public TemporaryFolder temp = new TemporaryFolder();
@Rule
- public DbTester dbTester = DbTester.create(System2.INSTANCE);
+ public DbTester dbTester = DbTester.create(System2.INSTANCE, true);
private final long now = 12345L;
private final DbClient dbClient = dbTester.getDbClient();
diff --git a/server/sonar-webserver-core/src/it/java/org/sonar/server/startup/UpgradeSuggestionsCleanerIT.java b/server/sonar-webserver-core/src/it/java/org/sonar/server/startup/UpgradeSuggestionsCleanerIT.java
index b621a7e8238..6ad7798b84f 100644
--- a/server/sonar-webserver-core/src/it/java/org/sonar/server/startup/UpgradeSuggestionsCleanerIT.java
+++ b/server/sonar-webserver-core/src/it/java/org/sonar/server/startup/UpgradeSuggestionsCleanerIT.java
@@ -47,7 +47,7 @@ public class UpgradeSuggestionsCleanerIT {
private static final String TASK_UUID = "b8d564dd-4ceb-4dba-8a3d-5fafa2d72cdf";
@Rule
- public DbTester dbTester = DbTester.create(System2.INSTANCE);
+ public DbTester dbTester = DbTester.create(System2.INSTANCE, true);
private final SonarRuntime sonarRuntime = mock(SonarRuntime.class);
private final UpgradeSuggestionsCleaner underTest = new UpgradeSuggestionsCleaner(dbTester.getDbClient(), sonarRuntime);
diff --git a/server/sonar-webserver-core/src/it/java/org/sonar/server/webhook/WebhookQGChangeEventListenerIT.java b/server/sonar-webserver-core/src/it/java/org/sonar/server/webhook/WebhookQGChangeEventListenerIT.java
index c5b95aa2292..da1561f6320 100644
--- a/server/sonar-webserver-core/src/it/java/org/sonar/server/webhook/WebhookQGChangeEventListenerIT.java
+++ b/server/sonar-webserver-core/src/it/java/org/sonar/server/webhook/WebhookQGChangeEventListenerIT.java
@@ -44,6 +44,7 @@ import org.sonar.db.DbTester;
import org.sonar.db.component.AnalysisPropertyDto;
import org.sonar.db.component.BranchDto;
import org.sonar.db.component.BranchType;
+import org.sonar.db.component.ProjectData;
import org.sonar.db.component.SnapshotDto;
import org.sonar.db.project.ProjectDto;
import org.sonar.server.qualitygate.EvaluatedQualityGate;
@@ -71,7 +72,7 @@ public class WebhookQGChangeEventListenerIT {
private static final Set<QGChangeEventListener.ChangedIssue> CHANGED_ISSUES_ARE_IGNORED = emptySet();
@Rule
- public DbTester dbTester = DbTester.create(System2.INSTANCE);
+ public DbTester dbTester = DbTester.create(System2.INSTANCE, true);
private DbClient dbClient = dbTester.getDbClient();
@@ -267,10 +268,8 @@ public class WebhookQGChangeEventListenerIT {
}
public ProjectAndBranch insertMainBranch() {
- ProjectDto project = dbTester.components().insertPrivateProject().getProjectDto();
- BranchDto branch = dbTester.getDbClient().branchDao().selectByUuid(dbTester.getSession(), project.getUuid()).get();
- dbTester.commit();
- return new ProjectAndBranch(project, branch);
+ ProjectData project = dbTester.components().insertPrivateProject();
+ return new ProjectAndBranch(project.getProjectDto(), project.getMainBranchDto());
}
public ProjectAndBranch insertBranch(BranchType type, String branchKey) {
diff --git a/server/sonar-webserver-core/src/test/java/org/sonar/server/issue/index/AsyncIssueIndexingImplTest.java b/server/sonar-webserver-core/src/test/java/org/sonar/server/issue/index/AsyncIssueIndexingImplTest.java
index fca9cbc6ae2..0618cc255bf 100644
--- a/server/sonar-webserver-core/src/test/java/org/sonar/server/issue/index/AsyncIssueIndexingImplTest.java
+++ b/server/sonar-webserver-core/src/test/java/org/sonar/server/issue/index/AsyncIssueIndexingImplTest.java
@@ -65,7 +65,7 @@ import static org.sonar.db.component.SnapshotDto.STATUS_PROCESSED;
public class AsyncIssueIndexingImplTest {
@Rule
- public DbTester dbTester = DbTester.create(System2.INSTANCE);
+ public DbTester dbTester = DbTester.create(System2.INSTANCE, true);
@Rule
public LogTester logTester = new LogTester();
diff --git a/server/sonar-webserver-core/src/test/java/org/sonar/server/platform/db/CheckAnyonePermissionsAtStartupTest.java b/server/sonar-webserver-core/src/test/java/org/sonar/server/platform/db/CheckAnyonePermissionsAtStartupTest.java
index 381a9f7aa91..db0b42ec19f 100644
--- a/server/sonar-webserver-core/src/test/java/org/sonar/server/platform/db/CheckAnyonePermissionsAtStartupTest.java
+++ b/server/sonar-webserver-core/src/test/java/org/sonar/server/platform/db/CheckAnyonePermissionsAtStartupTest.java
@@ -32,6 +32,7 @@ import org.sonar.api.utils.log.LoggerLevel;
import org.sonar.db.DbClient;
import org.sonar.db.DbTester;
import org.sonar.db.component.ComponentDto;
+import org.sonar.db.project.ProjectDto;
import org.sonar.db.user.GroupDto;
import static org.assertj.core.api.Assertions.assertThat;
@@ -41,7 +42,7 @@ public class CheckAnyonePermissionsAtStartupTest {
@ClassRule
public static LogTester logTester = new LogTester().setLevel(LoggerLevel.WARN);
@Rule
- public final DbTester dbTester = DbTester.create(System2.INSTANCE);
+ public final DbTester dbTester = DbTester.create(System2.INSTANCE, true);
private final DbClient dbClient = dbTester.getDbClient();
private final MapSettings settings = new MapSettings();
private final CheckAnyonePermissionsAtStartup underTest = new CheckAnyonePermissionsAtStartup(dbClient, settings.asConfig());
@@ -157,9 +158,9 @@ public class CheckAnyonePermissionsAtStartupTest {
private void createPublicProjects(int projectCount, boolean includeAnyonePerm) {
IntStream.rangeClosed(1, projectCount).forEach(i -> {
- ComponentDto project = dbTester.components().insertPublicProject(p -> p.setKey("key-" + i)).getMainBranchComponent();
+ ProjectDto project = dbTester.components().insertPublicProject(p -> p.setKey("key-" + i)).getProjectDto();
if (includeAnyonePerm) {
- dbTester.users().insertProjectPermissionOnAnyone("perm-" + i, project);
+ dbTester.users().insertEntityPermissionOnAnyone("perm-" + i, project);
}
});
underTest.start();
diff --git a/server/sonar-webserver-core/src/test/java/org/sonar/server/platform/db/CheckLanguageSpecificParamsAtStartupTest.java b/server/sonar-webserver-core/src/test/java/org/sonar/server/platform/db/CheckLanguageSpecificParamsAtStartupTest.java
index 5c2c8fa06fd..99521ea0844 100644
--- a/server/sonar-webserver-core/src/test/java/org/sonar/server/platform/db/CheckLanguageSpecificParamsAtStartupTest.java
+++ b/server/sonar-webserver-core/src/test/java/org/sonar/server/platform/db/CheckLanguageSpecificParamsAtStartupTest.java
@@ -42,7 +42,7 @@ public class CheckLanguageSpecificParamsAtStartupTest {
@ClassRule
public static LogTester logTester = new LogTester().setLevel(LoggerLevel.WARN);
@Rule
- public final DbTester dbTester = DbTester.create(System2.INSTANCE);
+ public final DbTester dbTester = DbTester.create(System2.INSTANCE, true);
private final MapSettings settings = new MapSettings();
private final CheckLanguageSpecificParamsAtStartup underTest = new CheckLanguageSpecificParamsAtStartup(settings.asConfig());
diff --git a/server/sonar-webserver-core/src/test/java/org/sonar/server/platform/monitoring/AlmConfigurationSectionTest.java b/server/sonar-webserver-core/src/test/java/org/sonar/server/platform/monitoring/AlmConfigurationSectionTest.java
index 21a7b6ca663..508d982c16b 100644
--- a/server/sonar-webserver-core/src/test/java/org/sonar/server/platform/monitoring/AlmConfigurationSectionTest.java
+++ b/server/sonar-webserver-core/src/test/java/org/sonar/server/platform/monitoring/AlmConfigurationSectionTest.java
@@ -32,7 +32,7 @@ import static org.assertj.core.api.Assertions.tuple;
public class AlmConfigurationSectionTest {
@Rule
- public DbTester db = DbTester.create();
+ public DbTester db = DbTester.create(true);
private AlmConfigurationSection underTest = new AlmConfigurationSection(db.getDbClient());
diff --git a/server/sonar-webserver-core/src/test/java/org/sonar/server/platform/monitoring/DbConnectionSectionIT.java b/server/sonar-webserver-core/src/test/java/org/sonar/server/platform/monitoring/DbConnectionSectionIT.java
index f5f0e5241d8..3a6407b2d8e 100644
--- a/server/sonar-webserver-core/src/test/java/org/sonar/server/platform/monitoring/DbConnectionSectionIT.java
+++ b/server/sonar-webserver-core/src/test/java/org/sonar/server/platform/monitoring/DbConnectionSectionIT.java
@@ -36,7 +36,7 @@ import static org.sonar.process.systeminfo.SystemInfoUtils.attribute;
public class DbConnectionSectionIT {
@Rule
- public DbTester dbTester = DbTester.create(System2.INSTANCE);
+ public DbTester dbTester = DbTester.create(System2.INSTANCE, true);
private final DatabaseVersion databaseVersion = mock(DatabaseVersion.class);
private final SonarRuntime runtime = mock(SonarRuntime.class);
diff --git a/server/sonar-webserver-core/src/test/java/org/sonar/server/platform/monitoring/SettingsSectionTest.java b/server/sonar-webserver-core/src/test/java/org/sonar/server/platform/monitoring/SettingsSectionTest.java
index a402a307134..9b6aca552c7 100644
--- a/server/sonar-webserver-core/src/test/java/org/sonar/server/platform/monitoring/SettingsSectionTest.java
+++ b/server/sonar-webserver-core/src/test/java/org/sonar/server/platform/monitoring/SettingsSectionTest.java
@@ -49,7 +49,7 @@ public class SettingsSectionTest {
private static final String PASSWORD_PROPERTY = "sonar.password";
@Rule
- public DbTester dbTester = DbTester.create(System2.INSTANCE);
+ public DbTester dbTester = DbTester.create(System2.INSTANCE, true);
private PropertyDefinitions defs = new PropertyDefinitions(System2.INSTANCE, PropertyDefinition.builder(PASSWORD_PROPERTY).type(PropertyType.PASSWORD).build());
private Settings settings = new MapSettings(defs);
diff --git a/server/sonar-webserver-core/src/test/java/org/sonar/server/qualitygate/ProjectsInWarningDaemonTest.java b/server/sonar-webserver-core/src/test/java/org/sonar/server/qualitygate/ProjectsInWarningDaemonTest.java
index 3d4d17d1ecc..ca64dfb02b4 100644
--- a/server/sonar-webserver-core/src/test/java/org/sonar/server/qualitygate/ProjectsInWarningDaemonTest.java
+++ b/server/sonar-webserver-core/src/test/java/org/sonar/server/qualitygate/ProjectsInWarningDaemonTest.java
@@ -32,7 +32,9 @@ import org.sonar.api.utils.System2;
import org.sonar.api.utils.log.LoggerLevel;
import org.sonar.db.DbTester;
import org.sonar.db.component.ComponentDto;
+import org.sonar.db.component.ProjectData;
import org.sonar.db.metric.MetricDto;
+import org.sonar.db.project.ProjectDto;
import org.sonar.server.es.EsTester;
import org.sonar.server.measure.index.ProjectMeasuresIndex;
import org.sonar.server.measure.index.ProjectMeasuresIndexer;
@@ -53,7 +55,7 @@ import static org.sonar.server.qualitygate.ProjectsInWarningDaemon.PROJECTS_IN_W
public class ProjectsInWarningDaemonTest {
@Rule
- public DbTester db = DbTester.create();
+ public DbTester db = DbTester.create(true);
@Rule
public EsTester es = EsTester.create();
@Rule
@@ -115,15 +117,15 @@ public class ProjectsInWarningDaemonTest {
public void stop_thread_when_number_of_projects_in_warning_reach_zero() throws InterruptedException {
allowLockToBeAcquired();
MetricDto qualityGateStatus = insertQualityGateStatusMetric();
- ComponentDto project = insertProjectInWarning(qualityGateStatus);
+ ProjectData project = insertProjectInWarning(qualityGateStatus);
underTest.notifyStart();
assertProjectsInWarningValue(1L);
// Set quality gate status of the project to OK => No more projects in warning
db.getDbClient().liveMeasureDao().insertOrUpdate(db.getSession(),
- newLiveMeasure(project, qualityGateStatus).setData(Metric.Level.OK.name()).setValue(null));
+ newLiveMeasure(project.getMainBranchComponent(), qualityGateStatus).setData(Metric.Level.OK.name()).setValue(null));
db.commit();
- projectMeasuresIndexer.indexOnAnalysis(project.uuid());
+ projectMeasuresIndexer.indexOnAnalysis(project.projectUuid());
assertProjectsInWarningValue(0L);
assertThat(logger.logs(Level.INFO))
@@ -208,11 +210,11 @@ public class ProjectsInWarningDaemonTest {
.orElse(0L);
}
- private ComponentDto insertProjectInWarning(MetricDto qualityGateStatus) {
- ComponentDto project = db.components().insertPrivateProject().getMainBranchComponent();
+ private ProjectData insertProjectInWarning(MetricDto qualityGateStatus) {
+ ProjectData project = db.components().insertPrivateProject();
db.measures().insertLiveMeasure(project, qualityGateStatus, lm -> lm.setData(WARN.name()).setValue(null));
- authorizationIndexerTester.allowOnlyAnyone(project);
- projectMeasuresIndexer.indexOnAnalysis(project.uuid());
+ authorizationIndexerTester.allowOnlyAnyone(project.getProjectDto());
+ projectMeasuresIndexer.indexOnAnalysis(project.projectUuid());
return project;
}
diff --git a/server/sonar-webserver-core/src/test/java/org/sonar/server/rule/RegisterRulesTest.java b/server/sonar-webserver-core/src/test/java/org/sonar/server/rule/RegisterRulesTest.java
index 89a8a76de27..dd1ca1e7cfe 100644
--- a/server/sonar-webserver-core/src/test/java/org/sonar/server/rule/RegisterRulesTest.java
+++ b/server/sonar-webserver-core/src/test/java/org/sonar/server/rule/RegisterRulesTest.java
@@ -130,7 +130,7 @@ public class RegisterRulesTest {
private final TestSystem2 system = new TestSystem2().setNow(DATE1.getTime());
@org.junit.Rule
- public DbTester db = DbTester.create(system);
+ public DbTester db = DbTester.create(system, true);
@org.junit.Rule
public EsTester es = EsTester.create();
@org.junit.Rule
diff --git a/server/sonar-webserver-core/src/test/java/org/sonar/server/startup/RegisterPermissionTemplatesTest.java b/server/sonar-webserver-core/src/test/java/org/sonar/server/startup/RegisterPermissionTemplatesTest.java
index 113fcaeb441..3ed6b292343 100644
--- a/server/sonar-webserver-core/src/test/java/org/sonar/server/startup/RegisterPermissionTemplatesTest.java
+++ b/server/sonar-webserver-core/src/test/java/org/sonar/server/startup/RegisterPermissionTemplatesTest.java
@@ -43,7 +43,7 @@ import static org.sonar.server.property.InternalProperties.DEFAULT_PROJECT_TEMPL
public class RegisterPermissionTemplatesTest {
@Rule
- public DbTester db = DbTester.create(System2.INSTANCE);
+ public DbTester db = DbTester.create(System2.INSTANCE, true);
@Rule
public LogTester logTester = new LogTester();
diff --git a/server/sonar-webserver-core/src/test/java/org/sonar/server/telemetry/TelemetryDataLoaderImplTest.java b/server/sonar-webserver-core/src/test/java/org/sonar/server/telemetry/TelemetryDataLoaderImplTest.java
index fe33ad00647..52755ce7ca7 100644
--- a/server/sonar-webserver-core/src/test/java/org/sonar/server/telemetry/TelemetryDataLoaderImplTest.java
+++ b/server/sonar-webserver-core/src/test/java/org/sonar/server/telemetry/TelemetryDataLoaderImplTest.java
@@ -48,6 +48,7 @@ import org.sonar.db.DbTester;
import org.sonar.db.alm.setting.AlmSettingDto;
import org.sonar.db.component.AnalysisPropertyDto;
import org.sonar.db.component.ComponentDto;
+import org.sonar.db.component.ProjectData;
import org.sonar.db.component.SnapshotDto;
import org.sonar.db.metric.MetricDto;
import org.sonar.db.newcodeperiod.NewCodePeriodType;
@@ -102,7 +103,7 @@ public class TelemetryDataLoaderImplTest {
private final TestSystem2 system2 = new TestSystem2().setNow(NOW);
@Rule
- public DbTester db = DbTester.create(system2);
+ public DbTester db = DbTester.create(system2, true);
private final FakeServer server = new FakeServer();
private final PluginRepository pluginRepository = mock(PluginRepository.class);
@@ -166,27 +167,29 @@ public class TelemetryDataLoaderImplTest {
MetricDto coverage = db.measures().insertMetric(m -> m.setKey(COVERAGE_KEY));
MetricDto nclocDistrib = db.measures().insertMetric(m -> m.setKey(NCLOC_LANGUAGE_DISTRIBUTION_KEY));
- ComponentDto project1 = db.components().insertPrivateProject().getMainBranchComponent();
- db.measures().insertLiveMeasure(project1, lines, m -> m.setValue(110d));
- db.measures().insertLiveMeasure(project1, ncloc, m -> m.setValue(110d));
- db.measures().insertLiveMeasure(project1, coverage, m -> m.setValue(80d));
- db.measures().insertLiveMeasure(project1, nclocDistrib, m -> m.setValue(null).setData("java=70;js=30;kotlin=10"));
- db.measures().insertLiveMeasure(project1, bugsDto, m -> m.setValue(1d));
- db.measures().insertLiveMeasure(project1, vulnerabilitiesDto, m -> m.setValue(1d).setData((String) null));
- db.measures().insertLiveMeasure(project1, securityHotspotsDto, m -> m.setValue(1d).setData((String) null));
- db.measures().insertLiveMeasure(project1, developmentCostDto, m -> m.setData("50").setValue(null));
- db.measures().insertLiveMeasure(project1, technicalDebtDto, m -> m.setValue(5d).setData((String) null));
-
- ComponentDto project2 = db.components().insertPrivateProject().getMainBranchComponent();
- db.measures().insertLiveMeasure(project2, lines, m -> m.setValue(200d));
- db.measures().insertLiveMeasure(project2, ncloc, m -> m.setValue(200d));
- db.measures().insertLiveMeasure(project2, coverage, m -> m.setValue(80d));
- db.measures().insertLiveMeasure(project2, nclocDistrib, m -> m.setValue(null).setData("java=180;js=20"));
-
- SnapshotDto project1Analysis = db.components().insertSnapshot(project1, t -> t.setLast(true).setBuildDate(analysisDate));
- SnapshotDto project2Analysis = db.components().insertSnapshot(project2, t -> t.setLast(true).setBuildDate(analysisDate));
- db.measures().insertMeasure(project1, project1Analysis, nclocDistrib, m -> m.setData("java=70;js=30;kotlin=10"));
- db.measures().insertMeasure(project2, project2Analysis, nclocDistrib, m -> m.setData("java=180;js=20"));
+ ProjectData projectData1 = db.components().insertPrivateProject();
+ ComponentDto mainBranch1 = projectData1.getMainBranchComponent();
+ db.measures().insertLiveMeasure(mainBranch1, lines, m -> m.setValue(110d));
+ db.measures().insertLiveMeasure(mainBranch1, ncloc, m -> m.setValue(110d));
+ db.measures().insertLiveMeasure(mainBranch1, coverage, m -> m.setValue(80d));
+ db.measures().insertLiveMeasure(mainBranch1, nclocDistrib, m -> m.setValue(null).setData("java=70;js=30;kotlin=10"));
+ db.measures().insertLiveMeasure(mainBranch1, bugsDto, m -> m.setValue(1d));
+ db.measures().insertLiveMeasure(mainBranch1, vulnerabilitiesDto, m -> m.setValue(1d).setData((String) null));
+ db.measures().insertLiveMeasure(mainBranch1, securityHotspotsDto, m -> m.setValue(1d).setData((String) null));
+ db.measures().insertLiveMeasure(mainBranch1, developmentCostDto, m -> m.setData("50").setValue(null));
+ db.measures().insertLiveMeasure(mainBranch1, technicalDebtDto, m -> m.setValue(5d).setData((String) null));
+
+ ProjectData projectData2 = db.components().insertPrivateProject();
+ ComponentDto mainBranch2 = projectData2.getMainBranchComponent();
+ db.measures().insertLiveMeasure(mainBranch2, lines, m -> m.setValue(200d));
+ db.measures().insertLiveMeasure(mainBranch2, ncloc, m -> m.setValue(200d));
+ db.measures().insertLiveMeasure(mainBranch2, coverage, m -> m.setValue(80d));
+ db.measures().insertLiveMeasure(mainBranch2, nclocDistrib, m -> m.setValue(null).setData("java=180;js=20"));
+
+ SnapshotDto project1Analysis = db.components().insertSnapshot(mainBranch1, t -> t.setLast(true).setBuildDate(analysisDate));
+ SnapshotDto project2Analysis = db.components().insertSnapshot(mainBranch2, t -> t.setLast(true).setBuildDate(analysisDate));
+ db.measures().insertMeasure(mainBranch1, project1Analysis, nclocDistrib, m -> m.setData("java=70;js=30;kotlin=10"));
+ db.measures().insertMeasure(mainBranch2, project2Analysis, nclocDistrib, m -> m.setData("java=180;js=20"));
insertAnalysisProperty(project1Analysis, "prop-uuid-1", SONAR_ANALYSIS_DETECTEDCI, "ci-1");
insertAnalysisProperty(project2Analysis, "prop-uuid-2", SONAR_ANALYSIS_DETECTEDCI, "ci-2");
@@ -198,21 +201,21 @@ public class TelemetryDataLoaderImplTest {
db.almSettings().insertGitHubAlmSetting();
AlmSettingDto almSettingDto = db.almSettings().insertAzureAlmSetting(a -> a.setUrl("https://dev.azure.com"));
AlmSettingDto gitHubAlmSetting = db.almSettings().insertGitHubAlmSetting(a -> a.setUrl("https://api.github.com"));
- db.almSettings().insertAzureProjectAlmSetting(almSettingDto, db.components().getProjectDtoByMainBranch(project1));
- db.almSettings().insertGitlabProjectAlmSetting(gitHubAlmSetting, db.components().getProjectDtoByMainBranch(project2));
+ db.almSettings().insertAzureProjectAlmSetting(almSettingDto, projectData1.getProjectDto());
+ db.almSettings().insertGitlabProjectAlmSetting(gitHubAlmSetting, projectData2.getProjectDto());
// quality gates
QualityGateDto qualityGate1 = db.qualityGates().insertQualityGate(qg -> qg.setName("QG1").setBuiltIn(true));
QualityGateDto qualityGate2 = db.qualityGates().insertQualityGate(qg -> qg.setName("QG2"));
// link one project to a non-default QG
- db.qualityGates().associateProjectToQualityGate(db.components().getProjectDtoByMainBranch(project1), qualityGate1);
+ db.qualityGates().associateProjectToQualityGate(db.components().getProjectDtoByMainBranch(mainBranch1), qualityGate1);
- var branch1 = db.components().insertProjectBranch(project1, branchDto -> branchDto.setKey("reference"));
- var branch2 = db.components().insertProjectBranch(project1, branchDto -> branchDto.setKey("custom"));
+ var branch1 = db.components().insertProjectBranch(mainBranch1, branchDto -> branchDto.setKey("reference"));
+ var branch2 = db.components().insertProjectBranch(mainBranch1, branchDto -> branchDto.setKey("custom"));
- var ncd1 = db.newCodePeriods().insert(project1.uuid(), NewCodePeriodType.NUMBER_OF_DAYS, "30");
- var ncd2 = db.newCodePeriods().insert(project1.uuid(), branch2.branchUuid(), NewCodePeriodType.REFERENCE_BRANCH, "reference");
+ var ncd1 = db.newCodePeriods().insert(projectData1.projectUuid(), NewCodePeriodType.NUMBER_OF_DAYS, "30");
+ var ncd2 = db.newCodePeriods().insert(projectData1.projectUuid(), branch2.branchUuid(), NewCodePeriodType.REFERENCE_BRANCH, "reference");
var instanceNcdId = NewCodeDefinition.getInstanceDefault().hashCode();
var projectNcdId = new NewCodeDefinition(NewCodePeriodType.NUMBER_OF_DAYS.name(), "30", "project").hashCode();
@@ -240,11 +243,11 @@ public class TelemetryDataLoaderImplTest {
assertThat(data.getProjects())
.extracting(TelemetryData.Project::projectUuid, TelemetryData.Project::language, TelemetryData.Project::loc, TelemetryData.Project::lastAnalysis)
.containsExactlyInAnyOrder(
- tuple(project1.uuid(), "java", 70L, analysisDate),
- tuple(project1.uuid(), "js", 30L, analysisDate),
- tuple(project1.uuid(), "kotlin", 10L, analysisDate),
- tuple(project2.uuid(), "java", 180L, analysisDate),
- tuple(project2.uuid(), "js", 20L, analysisDate));
+ tuple(projectData1.projectUuid(), "java", 70L, analysisDate),
+ tuple(projectData1.projectUuid(), "js", 30L, analysisDate),
+ tuple(projectData1.projectUuid(), "kotlin", 10L, analysisDate),
+ tuple(projectData2.projectUuid(), "java", 180L, analysisDate),
+ tuple(projectData2.projectUuid(), "js", 20L, analysisDate));
assertThat(data.getProjectStatistics())
.extracting(ProjectStatistics::getBranchCount, ProjectStatistics::getPullRequestCount, ProjectStatistics::getQualityGate,
ProjectStatistics::getScm, ProjectStatistics::getCi, ProjectStatistics::getDevopsPlatform,
@@ -261,8 +264,8 @@ public class TelemetryDataLoaderImplTest {
.containsExactlyInAnyOrder(
tuple(branch1.uuid(), projectNcdId),
tuple(branch2.uuid(), branchNcdId),
- tuple(project1.uuid(), projectNcdId),
- tuple(project2.uuid(), instanceNcdId));
+ tuple(mainBranch1.uuid(), projectNcdId),
+ tuple(mainBranch2.uuid(), instanceNcdId));
assertThat(data.getNewCodeDefinitions())
.extracting(NewCodeDefinition::scope, NewCodeDefinition::type, NewCodeDefinition::value)
@@ -286,22 +289,24 @@ public class TelemetryDataLoaderImplTest {
MetricDto qg = db.measures().insertMetric(m -> m.setKey(ALERT_STATUS_KEY));
- ComponentDto project1 = db.components().insertPrivateProject().getMainBranchComponent();
+ ProjectData projectData1 = db.components().insertPrivateProject();
+ ComponentDto mainBranch1 = projectData1.getMainBranchComponent();
- ComponentDto project2 = db.components().insertPrivateProject().getMainBranchComponent();
+ ProjectData projectData2 = db.components().insertPrivateProject();
+ ComponentDto mainBranch2 = projectData2.getMainBranchComponent();
- SnapshotDto project1Analysis1 = db.components().insertSnapshot(project1, t -> t.setLast(true).setBuildDate(analysisDate));
- SnapshotDto project1Analysis2 = db.components().insertSnapshot(project1, t -> t.setLast(true).setBuildDate(analysisDate));
- SnapshotDto project2Analysis = db.components().insertSnapshot(project2, t -> t.setLast(true).setBuildDate(analysisDate));
- db.measures().insertMeasure(project1, project1Analysis1, qg, pm -> pm.setData("OK"));
- db.measures().insertMeasure(project1, project1Analysis2, qg, pm -> pm.setData("ERROR"));
- db.measures().insertMeasure(project2, project2Analysis, qg, pm -> pm.setData("ERROR"));
+ SnapshotDto project1Analysis1 = db.components().insertSnapshot(mainBranch1, t -> t.setLast(true).setBuildDate(analysisDate));
+ SnapshotDto project1Analysis2 = db.components().insertSnapshot(mainBranch1, t -> t.setLast(true).setBuildDate(analysisDate));
+ SnapshotDto project2Analysis = db.components().insertSnapshot(mainBranch2, t -> t.setLast(true).setBuildDate(analysisDate));
+ db.measures().insertMeasure(mainBranch1, project1Analysis1, qg, pm -> pm.setData("OK"));
+ db.measures().insertMeasure(mainBranch1, project1Analysis2, qg, pm -> pm.setData("ERROR"));
+ db.measures().insertMeasure(mainBranch2, project2Analysis, qg, pm -> pm.setData("ERROR"));
- var branch1 = db.components().insertProjectBranch(project1, branchDto -> branchDto.setKey("reference"));
- var branch2 = db.components().insertProjectBranch(project1, branchDto -> branchDto.setKey("custom"));
+ var branch1 = db.components().insertProjectBranch(mainBranch1, branchDto -> branchDto.setKey("reference"));
+ var branch2 = db.components().insertProjectBranch(mainBranch1, branchDto -> branchDto.setKey("custom"));
- db.newCodePeriods().insert(project1.uuid(), NewCodePeriodType.NUMBER_OF_DAYS, "30");
- db.newCodePeriods().insert(project1.uuid(), branch2.branchUuid(), NewCodePeriodType.REFERENCE_BRANCH, "reference");
+ db.newCodePeriods().insert(projectData1.projectUuid(), NewCodePeriodType.NUMBER_OF_DAYS, "30");
+ db.newCodePeriods().insert(projectData1.projectUuid(), branch2.branchUuid(), NewCodePeriodType.REFERENCE_BRANCH, "reference");
var instanceNcdId = NewCodeDefinition.getInstanceDefault().hashCode();
var projectNcdId = new NewCodeDefinition(NewCodePeriodType.NUMBER_OF_DAYS.name(), "30", "project").hashCode();
@@ -314,8 +319,8 @@ public class TelemetryDataLoaderImplTest {
.containsExactlyInAnyOrder(
tuple(branch1.uuid(), projectNcdId, 0, 0),
tuple(branch2.uuid(), branchNcdId, 0, 0),
- tuple(project1.uuid(), projectNcdId, 1, 2),
- tuple(project2.uuid(), instanceNcdId, 0, 1));
+ tuple(mainBranch1.uuid(), projectNcdId, 1, 2),
+ tuple(mainBranch2.uuid(), instanceNcdId, 0, 1));
}
@@ -349,30 +354,31 @@ public class TelemetryDataLoaderImplTest {
MetricDto coverage = db.measures().insertMetric(m -> m.setKey(COVERAGE_KEY));
MetricDto nclocDistrib = db.measures().insertMetric(m -> m.setKey(NCLOC_LANGUAGE_DISTRIBUTION_KEY));
- ComponentDto project = db.components().insertPublicProject().getMainBranchComponent();
- db.measures().insertLiveMeasure(project, lines, m -> m.setValue(110d));
- db.measures().insertLiveMeasure(project, ncloc, m -> m.setValue(110d));
- db.measures().insertLiveMeasure(project, coverage, m -> m.setValue(80d));
- db.measures().insertLiveMeasure(project, nclocDistrib, m -> m.setValue(null).setData("java=70;js=30;kotlin=10"));
+ ProjectData projectData = db.components().insertPublicProject();
+ ComponentDto mainBranch = projectData.getMainBranchComponent();
+ db.measures().insertLiveMeasure(mainBranch, lines, m -> m.setValue(110d));
+ db.measures().insertLiveMeasure(mainBranch, ncloc, m -> m.setValue(110d));
+ db.measures().insertLiveMeasure(mainBranch, coverage, m -> m.setValue(80d));
+ db.measures().insertLiveMeasure(mainBranch, nclocDistrib, m -> m.setValue(null).setData("java=70;js=30;kotlin=10"));
- ComponentDto branch = db.components().insertProjectBranch(project, b -> b.setBranchType(BRANCH));
+ ComponentDto branch = db.components().insertProjectBranch(mainBranch, b -> b.setBranchType(BRANCH));
db.measures().insertLiveMeasure(branch, lines, m -> m.setValue(180d));
db.measures().insertLiveMeasure(branch, ncloc, m -> m.setValue(180d));
db.measures().insertLiveMeasure(branch, coverage, m -> m.setValue(80d));
db.measures().insertLiveMeasure(branch, nclocDistrib, m -> m.setValue(null).setData("java=100;js=50;kotlin=30"));
- SnapshotDto project1Analysis = db.components().insertSnapshot(project, t -> t.setLast(true));
+ SnapshotDto project1Analysis = db.components().insertSnapshot(mainBranch, t -> t.setLast(true));
SnapshotDto project2Analysis = db.components().insertSnapshot(branch, t -> t.setLast(true));
- db.measures().insertMeasure(project, project1Analysis, nclocDistrib, m -> m.setData("java=70;js=30;kotlin=10"));
+ db.measures().insertMeasure(mainBranch, project1Analysis, nclocDistrib, m -> m.setData("java=70;js=30;kotlin=10"));
db.measures().insertMeasure(branch, project2Analysis, nclocDistrib, m -> m.setData("java=100;js=50;kotlin=30"));
TelemetryData data = communityUnderTest.load();
assertThat(data.getProjects()).extracting(TelemetryData.Project::projectUuid, TelemetryData.Project::language, TelemetryData.Project::loc)
.containsExactlyInAnyOrder(
- tuple(project.uuid(), "java", 100L),
- tuple(project.uuid(), "js", 50L),
- tuple(project.uuid(), "kotlin", 30L));
+ tuple(projectData.projectUuid(), "java", 100L),
+ tuple(projectData.projectUuid(), "js", 50L),
+ tuple(projectData.projectUuid(), "kotlin", 30L));
assertThat(data.getProjectStatistics())
.extracting(ProjectStatistics::getBranchCount, ProjectStatistics::getPullRequestCount,
ProjectStatistics::getScm, ProjectStatistics::getCi)
@@ -385,11 +391,11 @@ public class TelemetryDataLoaderImplTest {
server.setId("AU-TpxcB-iU5OvuD2FL7").setVersion("7.5.4");
when(editionProvider.get()).thenReturn(Optional.of(COMMUNITY));
- ComponentDto project = db.components().insertPublicProject().getMainBranchComponent();
+ ProjectData project = db.components().insertPublicProject();
- ComponentDto branch = db.components().insertProjectBranch(project, b -> b.setBranchType(BRANCH));
+ ComponentDto branch = db.components().insertProjectBranch(project.getMainBranchComponent(), b -> b.setBranchType(BRANCH));
- db.newCodePeriods().insert(project.uuid(), branch.branchUuid(), NewCodePeriodType.NUMBER_OF_DAYS, "30");
+ db.newCodePeriods().insert(project.projectUuid(), branch.branchUuid(), NewCodePeriodType.NUMBER_OF_DAYS, "30");
var projectNcdId = new NewCodeDefinition(NewCodePeriodType.NUMBER_OF_DAYS.name(), "30", "project").hashCode();
diff --git a/server/sonar-webserver-es/src/test/java/org/sonar/server/component/index/ComponentIndexSearchTest.java b/server/sonar-webserver-es/src/test/java/org/sonar/server/component/index/ComponentIndexSearchTest.java
index 7d32bcd743d..9f0414d5e4b 100644
--- a/server/sonar-webserver-es/src/test/java/org/sonar/server/component/index/ComponentIndexSearchTest.java
+++ b/server/sonar-webserver-es/src/test/java/org/sonar/server/component/index/ComponentIndexSearchTest.java
@@ -28,6 +28,9 @@ import org.sonar.api.resources.Qualifiers;
import org.sonar.api.utils.System2;
import org.sonar.db.DbTester;
import org.sonar.db.component.ComponentDto;
+import org.sonar.db.component.ProjectData;
+import org.sonar.db.entity.EntityDto;
+import org.sonar.db.project.ProjectDto;
import org.sonar.server.es.EsTester;
import org.sonar.server.es.SearchIdResult;
import org.sonar.server.es.SearchOptions;
@@ -43,7 +46,7 @@ public class ComponentIndexSearchTest {
@Rule
public EsTester es = EsTester.create();
@Rule
- public DbTester db = DbTester.create(System2.INSTANCE);
+ public DbTester db = DbTester.create(System2.INSTANCE, true);
@Rule
public UserSessionRule userSession = UserSessionRule.standalone().logIn();
@Rule
@@ -55,79 +58,84 @@ public class ComponentIndexSearchTest {
@Test
public void filter_by_name() {
- ComponentDto ignoredProject = db.components().insertPrivateProject(p -> p.setName("ignored project")).getMainBranchComponent();
- ComponentDto project = db.components().insertPrivateProject(p -> p.setName("Project Shiny name")).getMainBranchComponent();
- index(ignoredProject, project);
+ ProjectData ignoredProject = db.components().insertPrivateProject(p -> p.setName("ignored project"));
+ ProjectData project = db.components().insertPrivateProject(p -> p.setName("Project Shiny name"));
+ index(ignoredProject.getProjectDto(), project.getProjectDto());
SearchIdResult<String> result = underTest.search(ComponentQuery.builder().setQuery("shiny").build(), new SearchOptions());
- assertThat(result.getUuids()).containsExactlyInAnyOrder(project.uuid());
+ assertThat(result.getUuids()).containsExactlyInAnyOrder(project.projectUuid());
}
@Test
public void filter_by_key_with_exact_match() {
- ComponentDto ignoredProject = db.components().insertPrivateProject(p -> p.setKey("ignored-project")).getMainBranchComponent();
- ComponentDto project = db.components().insertPrivateProject(p -> p.setKey("shiny-project")).getMainBranchComponent();
+ ProjectData ignoredProject = db.components().insertPrivateProject(p -> p.setKey("ignored-project"));
+ ProjectData project = db.components().insertPrivateProject(p -> p.setKey("shiny-project"));
db.components().insertPrivateProject(p -> p.setKey("another-shiny-project")).getMainBranchComponent();
- index(ignoredProject, project);
+ index(ignoredProject.getProjectDto(), project.getProjectDto());
SearchIdResult<String> result = underTest.search(ComponentQuery.builder().setQuery("shiny-project").build(), new SearchOptions());
- assertThat(result.getUuids()).containsExactlyInAnyOrder(project.uuid());
+ assertThat(result.getUuids()).containsExactlyInAnyOrder(project.projectUuid());
}
@Test
public void filter_by_qualifier() {
- ComponentDto project = db.components().insertPrivateProject().getMainBranchComponent();
+ ProjectData project = db.components().insertPrivateProject();
ComponentDto portfolio = db.components().insertPrivatePortfolio();
- index(project);
- index(portfolio);
+ index(project.getProjectDto());
+ index(db.components().getPortfolioDto(portfolio));
SearchIdResult<String> result = underTest.search(ComponentQuery.builder().setQualifiers(singleton(Qualifiers.PROJECT)).build(), new SearchOptions());
- assertThat(result.getUuids()).containsExactlyInAnyOrder(project.uuid());
+ assertThat(result.getUuids()).containsExactlyInAnyOrder(project.projectUuid());
}
@Test
public void order_by_name_case_insensitive() {
- ComponentDto project2 = db.components().insertPrivateProject(p -> p.setName("PROJECT 2")).getMainBranchComponent();
- ComponentDto project3 = db.components().insertPrivateProject(p -> p.setName("project 3")).getMainBranchComponent();
- ComponentDto project1 = db.components().insertPrivateProject(p -> p.setName("Project 1")).getMainBranchComponent();
- index(project1, project2, project3);
+ ProjectData project2 = db.components().insertPrivateProject(p -> p.setName("PROJECT 2"));
+ ProjectData project3 = db.components().insertPrivateProject(p -> p.setName("project 3"));
+ ProjectData project1 = db.components().insertPrivateProject(p -> p.setName("Project 1"));
+ index(project1.getProjectDto(), project2.getProjectDto(), project3.getProjectDto());
SearchIdResult<String> result = underTest.search(ComponentQuery.builder().build(), new SearchOptions());
- assertThat(result.getUuids()).containsExactly(project1.uuid(), project2.uuid(), project3.uuid());
+ assertThat(result.getUuids()).containsExactly(project1.projectUuid(),
+ project2.projectUuid(),
+ project3.projectUuid());
}
@Test
public void paginate_results() {
- List<ComponentDto> projects = IntStream.range(0, 9)
- .mapToObj(i -> db.components().insertPrivateProject(p -> p.setName("project " + i)).getMainBranchComponent())
+ List<ProjectData> projects = IntStream.range(0, 9)
+ .mapToObj(i -> db.components().insertPrivateProject(p -> p.setName("project " + i)))
.toList();
- index(projects.toArray(new ComponentDto[0]));
+ ProjectDto[] projectDtos = projects.stream().map(p -> p.getProjectDto()).toArray(ProjectDto[]::new);
+ index(projectDtos);
SearchIdResult<String> result = underTest.search(ComponentQuery.builder().build(), new SearchOptions().setPage(2, 3));
- assertThat(result.getUuids()).containsExactlyInAnyOrder(projects.get(3).uuid(), projects.get(4).uuid(), projects.get(5).uuid());
+ assertThat(result.getUuids()).containsExactlyInAnyOrder(projects.get(3).projectUuid(),
+ projects.get(4).projectUuid(),
+ projects.get(5).projectUuid());
}
@Test
public void filter_unauthorized_components() {
- ComponentDto unauthorizedProject = db.components().insertPrivateProject().getMainBranchComponent();
- ComponentDto project1 = db.components().insertPrivateProject().getMainBranchComponent();
- ComponentDto project2 = db.components().insertPrivateProject().getMainBranchComponent();
+ ProjectDto unauthorizedProject = db.components().insertPrivateProject().getProjectDto();
+ ProjectDto project1 = db.components().insertPrivateProject().getProjectDto();
+ ProjectDto project2 = db.components().insertPrivateProject().getProjectDto();
indexer.indexAll();
authorizationIndexerTester.allowOnlyAnyone(project1);
authorizationIndexerTester.allowOnlyAnyone(project2);
SearchIdResult<String> result = underTest.search(ComponentQuery.builder().build(), new SearchOptions());
- assertThat(result.getUuids()).containsExactlyInAnyOrder(project1.uuid(), project2.uuid())
- .doesNotContain(unauthorizedProject.uuid());
+ assertThat(result.getUuids()).containsExactlyInAnyOrder(project1.getUuid(), project2.getUuid())
+ .doesNotContain(unauthorizedProject.getUuid());
}
- private void index(ComponentDto... components) {
+ private void index(EntityDto... components) {
indexer.indexAll();
Arrays.stream(components).forEach(authorizationIndexerTester::allowOnlyAnyone);
}
diff --git a/server/sonar-webserver-es/src/test/java/org/sonar/server/es/RecoveryIndexerTest.java b/server/sonar-webserver-es/src/test/java/org/sonar/server/es/RecoveryIndexerTest.java
index a87e495aa10..44d133b3b3f 100644
--- a/server/sonar-webserver-es/src/test/java/org/sonar/server/es/RecoveryIndexerTest.java
+++ b/server/sonar-webserver-es/src/test/java/org/sonar/server/es/RecoveryIndexerTest.java
@@ -67,7 +67,7 @@ public class RecoveryIndexerTest {
@Rule
public EsTester es = EsTester.createCustom();
@Rule
- public DbTester db = DbTester.create(system2);
+ public DbTester db = DbTester.create(system2, true);
@Rule
public LogTester logTester = new LogTester().setLevel(TRACE);
@Rule
diff --git a/server/sonar-webserver-es/src/test/java/org/sonar/server/issue/index/IssueIndexSyncProgressCheckerTest.java b/server/sonar-webserver-es/src/test/java/org/sonar/server/issue/index/IssueIndexSyncProgressCheckerTest.java
index c9adbb2cede..2e888fdb0ef 100644
--- a/server/sonar-webserver-es/src/test/java/org/sonar/server/issue/index/IssueIndexSyncProgressCheckerTest.java
+++ b/server/sonar-webserver-es/src/test/java/org/sonar/server/issue/index/IssueIndexSyncProgressCheckerTest.java
@@ -37,6 +37,7 @@ import org.sonar.db.ce.CeQueueDto;
import org.sonar.db.ce.CeQueueDto.Status;
import org.sonar.db.ce.CeTaskTypes;
import org.sonar.db.component.ComponentDto;
+import org.sonar.db.component.ProjectData;
import org.sonar.db.project.ProjectDto;
import org.sonar.server.es.EsIndexSyncInProgressException;
@@ -51,7 +52,7 @@ public class IssueIndexSyncProgressCheckerTest {
private final System2 system2 = new System2();
@Rule
- public DbTester db = DbTester.create(System2.INSTANCE);
+ public DbTester db = DbTester.create(System2.INSTANCE, true);
private final IssueIndexSyncProgressChecker underTest = new IssueIndexSyncProgressChecker(db.getDbClient());
@@ -82,16 +83,16 @@ public class IssueIndexSyncProgressCheckerTest {
public void return_has_failure_true_if_exists_task() {
assertThat(underTest.getIssueSyncProgress(db.getSession()).hasFailures()).isFalse();
- ProjectDto projectDto1 = insertProjectWithBranches(false, 0);
- insertCeActivity("TASK_1", projectDto1, SUCCESS);
+ ProjectData projectData1 = insertProjectWithBranches(false, 0);
+ insertCeActivity("TASK_1", projectData1, SUCCESS);
- ProjectDto projectDto2 = insertProjectWithBranches(false, 0);
- insertCeActivity("TASK_2", projectDto2, SUCCESS);
+ ProjectData projectData2 = insertProjectWithBranches(false, 0);
+ insertCeActivity("TASK_2", projectData2, SUCCESS);
assertThat(underTest.getIssueSyncProgress(db.getSession()).hasFailures()).isFalse();
- ProjectDto projectDto3 = insertProjectWithBranches(true, 0);
- insertCeActivity("TASK_3", projectDto3, FAILED);
+ ProjectData projectData3 = insertProjectWithBranches(true, 0);
+ insertCeActivity("TASK_3", projectData3, FAILED);
assertThat(underTest.getIssueSyncProgress(db.getSession()).hasFailures()).isTrue();
}
@@ -205,10 +206,10 @@ public class IssueIndexSyncProgressCheckerTest {
@Test
public void checkIfAnyComponentsNeedIssueSync_throws_exception_if_all_components_have_need_issue_sync_TRUE() {
- ProjectDto projectDto1 = insertProjectWithBranches(true, 0);
- ProjectDto projectDto2 = insertProjectWithBranches(true, 0);
+ ProjectData projectData1 = insertProjectWithBranches(true, 0);
+ ProjectData projectData2 = insertProjectWithBranches(true, 0);
DbSession session = db.getSession();
- List<String> projectKeys = Arrays.asList(projectDto1.getKey(), projectDto2.getKey());
+ List<String> projectKeys = Arrays.asList(projectData1.getProjectDto().getKey(), projectData2.getProjectDto().getKey());
assertThatThrownBy(() -> underTest.checkIfAnyComponentsNeedIssueSync(session, projectKeys))
.isInstanceOf(EsIndexSyncInProgressException.class)
.hasFieldOrPropertyWithValue("httpCode", 503)
@@ -218,18 +219,18 @@ public class IssueIndexSyncProgressCheckerTest {
@Test
public void checkIfAnyComponentsNeedIssueSync_does_not_throw_exception_if_all_components_have_need_issue_sync_FALSE() {
underTest.checkIfAnyComponentsNeedIssueSync(db.getSession(), Collections.emptyList());
- ProjectDto projectDto1 = insertProjectWithBranches(false, 0);
- ProjectDto projectDto2 = insertProjectWithBranches(false, 0);
- underTest.checkIfAnyComponentsNeedIssueSync(db.getSession(), Arrays.asList(projectDto1.getKey(), projectDto2.getKey()));
+ ProjectData projectData1 = insertProjectWithBranches(false, 0);
+ ProjectData projectData2 = insertProjectWithBranches(false, 0);
+ underTest.checkIfAnyComponentsNeedIssueSync(db.getSession(), Arrays.asList(projectData1.getProjectDto().getKey(), projectData2.getProjectDto().getKey()));
}
@Test
public void checkIfAnyComponentsNeedIssueSync_throws_exception_if_at_least_one_component_has_need_issue_sync_TRUE() {
- ProjectDto projectDto1 = insertProjectWithBranches(false, 0);
- ProjectDto projectDto2 = insertProjectWithBranches(true, 0);
+ ProjectData projectData1 = insertProjectWithBranches(false, 0);
+ ProjectData projectData2 = insertProjectWithBranches(true, 0);
DbSession session = db.getSession();
- List<String> projectKeys = Arrays.asList(projectDto1.getKey(), projectDto2.getKey());
+ List<String> projectKeys = Arrays.asList(projectData1.getProjectDto().getKey(), projectData2.getProjectDto().getKey());
assertThatThrownBy(() -> underTest.checkIfAnyComponentsNeedIssueSync(session, projectKeys))
.isInstanceOf(EsIndexSyncInProgressException.class)
.hasFieldOrPropertyWithValue("httpCode", 503)
@@ -238,15 +239,15 @@ public class IssueIndexSyncProgressCheckerTest {
@Test
public void checkIfComponentNeedIssueSync_single_component() {
- ProjectDto projectDto1 = insertProjectWithBranches(true, 0);
- ProjectDto projectDto2 = insertProjectWithBranches(false, 0);
+ ProjectData projectData1 = insertProjectWithBranches(true, 0);
+ ProjectData projectData2 = insertProjectWithBranches(false, 0);
DbSession session = db.getSession();
// do nothing when need issue sync false
- underTest.checkIfComponentNeedIssueSync(session, projectDto2.getKey());
+ underTest.checkIfComponentNeedIssueSync(session, projectData2.getProjectDto().getKey());
// throws if flag set to TRUE
- String key = projectDto1.getKey();
+ String key = projectData1.getProjectDto().getKey();
assertThatThrownBy(() -> underTest.checkIfComponentNeedIssueSync(session, key))
.isInstanceOf(EsIndexSyncInProgressException.class)
.hasFieldOrPropertyWithValue("httpCode", 503)
@@ -255,14 +256,14 @@ public class IssueIndexSyncProgressCheckerTest {
@Test
public void checkIfAnyComponentsNeedIssueSync_single_view_subview_or_app() {
- ProjectDto projectDto1 = insertProjectWithBranches(true, 0);
+ ProjectData projectData1 = insertProjectWithBranches(true, 0);
ComponentDto app = db.components().insertPublicApplication().getMainBranchComponent();
ComponentDto view = db.components().insertPrivatePortfolio();
ComponentDto subview = db.components().insertSubView(view);
DbSession session = db.getSession();
- List<String> appViewOrSubviewKeys = Arrays.asList(projectDto1.getKey(), app.getKey(), view.getKey(), subview.getKey());
+ List<String> appViewOrSubviewKeys = Arrays.asList(projectData1.getProjectDto().getKey(), app.getKey(), view.getKey(), subview.getKey());
// throws if flag set to TRUE
assertThatThrownBy(() -> underTest.checkIfAnyComponentsNeedIssueSync(session,
@@ -287,32 +288,32 @@ public class IssueIndexSyncProgressCheckerTest {
@Test
public void doProjectNeedIssueSync() {
- ProjectDto projectDto1 = insertProjectWithBranches(false, 0);
- assertThat(underTest.doProjectNeedIssueSync(db.getSession(), projectDto1.getUuid())).isFalse();
- ProjectDto projectDto2 = insertProjectWithBranches(true, 0);
- assertThat(underTest.doProjectNeedIssueSync(db.getSession(), projectDto2.getUuid())).isTrue();
+ ProjectData projectData1 = insertProjectWithBranches(false, 0);
+ assertThat(underTest.doProjectNeedIssueSync(db.getSession(), projectData1.getProjectDto().getUuid())).isFalse();
+ ProjectData projectData2 = insertProjectWithBranches(true, 0);
+ assertThat(underTest.doProjectNeedIssueSync(db.getSession(), projectData2.getProjectDto().getUuid())).isTrue();
}
@Test
public void findProjectUuidsWithIssuesSyncNeed() {
- ProjectDto projectDto1 = insertProjectWithBranches(false, 0);
- ProjectDto projectDto2 = insertProjectWithBranches(false, 0);
- ProjectDto projectDto3 = insertProjectWithBranches(true, 0);
- ProjectDto projectDto4 = insertProjectWithBranches(true, 0);
+ ProjectData projectData1 = insertProjectWithBranches(false, 0);
+ ProjectData projectData2 = insertProjectWithBranches(false, 0);
+ ProjectData projectData3 = insertProjectWithBranches(true, 0);
+ ProjectData projectData4 = insertProjectWithBranches(true, 0);
assertThat(underTest.findProjectUuidsWithIssuesSyncNeed(db.getSession(),
- Arrays.asList(projectDto1.getUuid(), projectDto2.getUuid(), projectDto3.getUuid(), projectDto4.getUuid())))
- .containsOnly(projectDto3.getUuid(), projectDto4.getUuid());
+ Arrays.asList(projectData1.getProjectDto().getUuid(), projectData2.getProjectDto().getUuid(), projectData3.getProjectDto().getUuid(), projectData4.getProjectDto().getUuid())))
+ .containsOnly(projectData3.getProjectDto().getUuid(), projectData4.getProjectDto().getUuid());
}
- private ProjectDto insertProjectWithBranches(boolean needIssueSync, int numberOfBranches) {
- ProjectDto projectDto = db.components()
+ private ProjectData insertProjectWithBranches(boolean needIssueSync, int numberOfBranches) {
+ ProjectData projectData = db.components()
.insertPrivateProject(branchDto -> branchDto.setNeedIssueSync(needIssueSync), c -> {
}, p -> {
- }).getProjectDto();
+ });
IntStream.range(0, numberOfBranches).forEach(
- i -> db.components().insertProjectBranch(projectDto, branchDto -> branchDto.setNeedIssueSync(needIssueSync)));
- return projectDto;
+ i -> db.components().insertProjectBranch(projectData.getProjectDto(), branchDto -> branchDto.setNeedIssueSync(needIssueSync)));
+ return projectData;
}
private CeQueueDto insertCeQueue(String uuid, CeQueueDto.Status status) {
@@ -324,14 +325,14 @@ public class IssueIndexSyncProgressCheckerTest {
return queueDto;
}
- private CeActivityDto insertCeActivity(String uuid, ProjectDto projectDto, CeActivityDto.Status status) {
+ private CeActivityDto insertCeActivity(String uuid, ProjectData projectData, CeActivityDto.Status status) {
CeQueueDto queueDto = new CeQueueDto();
queueDto.setUuid(uuid);
queueDto.setTaskType(CeTaskTypes.BRANCH_ISSUE_SYNC);
CeActivityDto dto = new CeActivityDto(queueDto);
- dto.setComponentUuid(projectDto.getUuid());
- dto.setEntityUuid(projectDto.getUuid());
+ dto.setComponentUuid(projectData.getMainBranchComponent().uuid());
+ dto.setEntityUuid(projectData.projectUuid());
dto.setStatus(status);
dto.setTaskType(CeTaskTypes.BRANCH_ISSUE_SYNC);
dto.setAnalysisUuid(uuid + "_AA");
diff --git a/server/sonar-webserver-es/src/test/java/org/sonar/server/issue/index/IssueIndexTestCommon.java b/server/sonar-webserver-es/src/test/java/org/sonar/server/issue/index/IssueIndexTestCommon.java
index 4fea3b36ef9..762cf3ddfd4 100644
--- a/server/sonar-webserver-es/src/test/java/org/sonar/server/issue/index/IssueIndexTestCommon.java
+++ b/server/sonar-webserver-es/src/test/java/org/sonar/server/issue/index/IssueIndexTestCommon.java
@@ -52,7 +52,7 @@ public class IssueIndexTestCommon {
public UserSessionRule userSessionRule = UserSessionRule.standalone();
protected final System2 system2 = new TestSystem2().setNow(1_500_000_000_000L).setDefaultTimeZone(getTimeZone("GMT-01:00"));
@Rule
- public DbTester db = DbTester.create(system2);
+ public DbTester db = DbTester.create(system2, true);
private final AsyncIssueIndexing asyncIssueIndexing = mock(AsyncIssueIndexing.class);
protected final IssueIndexer issueIndexer = new IssueIndexer(es.client(), db.getDbClient(), new IssueIteratorFactory(db.getDbClient()), asyncIssueIndexing);
diff --git a/server/sonar-webserver-es/src/test/java/org/sonar/server/issue/index/IssueQueryFactoryTest.java b/server/sonar-webserver-es/src/test/java/org/sonar/server/issue/index/IssueQueryFactoryTest.java
index fbd161d712e..9a95f7fb319 100644
--- a/server/sonar-webserver-es/src/test/java/org/sonar/server/issue/index/IssueQueryFactoryTest.java
+++ b/server/sonar-webserver-es/src/test/java/org/sonar/server/issue/index/IssueQueryFactoryTest.java
@@ -69,7 +69,7 @@ public class IssueQueryFactoryTest {
@Rule
public UserSessionRule userSession = UserSessionRule.standalone();
@Rule
- public DbTester db = DbTester.create();
+ public DbTester db = DbTester.create(true);
@Rule
public LogTester logTester = new LogTester();
@@ -81,7 +81,8 @@ public class IssueQueryFactoryTest {
public void create_from_parameters() {
String ruleAdHocName = "New Name";
UserDto user = db.users().insertUser(u -> u.setLogin("joanna"));
- ComponentDto project = db.components().insertPrivateProject().getMainBranchComponent();
+ ProjectData projectData = db.components().insertPrivateProject();
+ ComponentDto project = projectData.getMainBranchComponent();
ComponentDto file = db.components().insertComponent(newFileDto(project));
RuleDto rule1 = ruleDbTester.insert(r -> r.setAdHocName(ruleAdHocName));
@@ -115,7 +116,7 @@ public class IssueQueryFactoryTest {
assertThat(query.statuses()).containsOnly("CLOSED");
assertThat(query.resolutions()).containsOnly("FALSE-POSITIVE");
assertThat(query.resolved()).isTrue();
- assertThat(query.projectUuids()).containsOnly(project.uuid());
+ assertThat(query.projectUuids()).containsOnly(projectData.projectUuid());
assertThat(query.files()).containsOnly(file.uuid());
assertThat(query.assignees()).containsOnly(user.getUuid());
assertThat(query.scopes()).containsOnly("TEST", "MAIN");
@@ -316,15 +317,16 @@ public class IssueQueryFactoryTest {
ProjectData projectData2 = db.components().insertPublicProject();
ComponentDto project2 = projectData2.getMainBranchComponent();
ProjectData applicationData = db.components().insertPublicApplication();
- ComponentDto application = applicationData.getMainBranchComponent();
- db.components().insertComponents(newProjectCopy("PC1", project1, application));
- db.components().insertComponents(newProjectCopy("PC2", project2, application));
+ ComponentDto applicationMainBranch = applicationData.getMainBranchComponent();
+ db.components().insertComponents(newProjectCopy("PC1", project1, applicationMainBranch));
+ db.components().insertComponents(newProjectCopy("PC2", project2, applicationMainBranch));
userSession.registerApplication(applicationData.getProjectDto())
- .registerProjects(projectData1.getProjectDto(), projectData2.getProjectDto());
+ .registerProjects(projectData1.getProjectDto(), projectData2.getProjectDto())
+ .registerBranches(applicationData.getMainBranchDto());
- IssueQuery result = underTest.create(new SearchRequest().setComponentUuids(singletonList(application.uuid())));
+ IssueQuery result = underTest.create(new SearchRequest().setComponentUuids(singletonList(applicationMainBranch.uuid())));
- assertThat(result.viewUuids()).containsExactlyInAnyOrder(application.uuid());
+ assertThat(result.viewUuids()).containsExactlyInAnyOrder(applicationMainBranch.uuid());
}
@Test
@@ -364,7 +366,8 @@ public class IssueQueryFactoryTest {
db.components().insertComponents(newProjectCopy("PC2", project2, application));
db.components().insertComponents(newProjectCopy("PC3", project3, application));
db.components().insertComponents(newProjectCopy("PC4", project4, application));
- userSession.registerApplication(applicationData.getProjectDto());
+ userSession.registerApplication(applicationData.getProjectDto())
+ .registerBranches(applicationData.getMainBranchDto());
userSession.registerProjects(projectData1.getProjectDto(), projectData2.getProjectDto(), projectData3.getProjectDto(), projectData4.getProjectDto());
IssueQuery result = underTest.create(new SearchRequest()
@@ -393,12 +396,13 @@ public class IssueQueryFactoryTest {
@Test
public void param_componentUuids_enables_search_on_project_tree_by_default() {
- ComponentDto project = db.components().insertPrivateProject().getMainBranchComponent();
+ ProjectData projectData = db.components().insertPrivateProject();
+ ComponentDto mainBranch = projectData.getMainBranchComponent();
SearchRequest request = new SearchRequest()
- .setComponentUuids(asList(project.uuid()));
+ .setComponentUuids(asList(mainBranch.uuid()));
IssueQuery query = underTest.create(request);
- assertThat(query.projectUuids()).containsExactly(project.uuid());
+ assertThat(query.projectUuids()).containsExactly(projectData.projectUuid());
assertThat(query.onComponentOnly()).isFalse();
}
@@ -455,21 +459,22 @@ public class IssueQueryFactoryTest {
@Test
public void search_issue_from_branch() {
- ComponentDto project = db.components().insertPrivateProject().getMainBranchComponent();
+ ProjectData projectData = db.components().insertPrivateProject();
+ ComponentDto mainBranch = projectData.getMainBranchComponent();
String branchName = randomAlphanumeric(248);
- ComponentDto branch = db.components().insertProjectBranch(project, b -> b.setKey(branchName));
+ ComponentDto branch = db.components().insertProjectBranch(mainBranch, b -> b.setKey(branchName));
assertThat(underTest.create(new SearchRequest()
.setProjectKeys(singletonList(branch.getKey()))
.setBranch(branchName)))
.extracting(IssueQuery::branchUuid, query -> new ArrayList<>(query.projectUuids()), IssueQuery::isMainBranch)
- .containsOnly(branch.uuid(), singletonList(project.uuid()), false);
+ .containsOnly(branch.uuid(), singletonList(projectData.projectUuid()), false);
assertThat(underTest.create(new SearchRequest()
.setComponentKeys(singletonList(branch.getKey()))
.setBranch(branchName)))
.extracting(IssueQuery::branchUuid, query -> new ArrayList<>(query.projectUuids()), IssueQuery::isMainBranch)
- .containsOnly(branch.uuid(), singletonList(project.uuid()), false);
+ .containsOnly(branch.uuid(), singletonList(projectData.projectUuid()), false);
}
@Test
@@ -517,19 +522,20 @@ public class IssueQueryFactoryTest {
@Test
public void search_issues_from_main_branch() {
- ComponentDto project = db.components().insertPublicProject().getMainBranchComponent();
- db.components().insertProjectBranch(project);
+ ProjectData projectData = db.components().insertPublicProject();
+ ComponentDto mainBranch = projectData.getMainBranchComponent();
+ db.components().insertProjectBranch(mainBranch);
assertThat(underTest.create(new SearchRequest()
- .setProjectKeys(singletonList(project.getKey()))
+ .setProjectKeys(singletonList(projectData.projectKey()))
.setBranch(DEFAULT_MAIN_BRANCH_NAME)))
.extracting(IssueQuery::branchUuid, query -> new ArrayList<>(query.projectUuids()), IssueQuery::isMainBranch)
- .containsOnly(project.uuid(), singletonList(project.uuid()), true);
+ .containsOnly(mainBranch.uuid(), singletonList(projectData.projectUuid()), true);
assertThat(underTest.create(new SearchRequest()
- .setComponentKeys(singletonList(project.getKey()))
+ .setComponentKeys(singletonList(mainBranch.getKey()))
.setBranch(DEFAULT_MAIN_BRANCH_NAME)))
.extracting(IssueQuery::branchUuid, query -> new ArrayList<>(query.projectUuids()), IssueQuery::isMainBranch)
- .containsOnly(project.uuid(), singletonList(project.uuid()), true);
+ .containsOnly(mainBranch.uuid(), singletonList(projectData.projectUuid()), true);
}
@Test
@@ -546,11 +552,12 @@ public class IssueQueryFactoryTest {
.registerProjects(projectData1.getProjectDto(), projectData2.getProjectDto())
.addProjectPermission(USER, applicationData.getProjectDto())
.addProjectPermission(USER, projectData1.getProjectDto())
- .addProjectPermission(USER, projectData2.getProjectDto());
+ .addProjectPermission(USER, projectData2.getProjectDto())
+ .registerBranches(applicationData.getMainBranchDto());
assertThat(underTest.create(new SearchRequest()
.setComponentKeys(singletonList(application.getKey())))
- .viewUuids()).containsExactly(application.uuid());
+ .viewUuids()).containsExactly(applicationData.getMainBranchComponent().uuid());
}
@Test
@@ -560,10 +567,11 @@ public class IssueQueryFactoryTest {
String branchName2 = "app-branch2";
ComponentDto applicationBranch1 = db.components().insertProjectBranch(application, a -> a.setKey(branchName1));
ComponentDto applicationBranch2 = db.components().insertProjectBranch(application, a -> a.setKey(branchName2));
- ComponentDto project1 = db.components().insertPrivateProject(p -> p.setKey("prj1")).getMainBranchComponent();
- ComponentDto project1Branch1 = db.components().insertProjectBranch(project1);
- db.components().insertComponent(newFileDto(project1Branch1, project1.uuid()));
- ComponentDto project1Branch2 = db.components().insertProjectBranch(project1);
+ ProjectData projectData1 = db.components().insertPrivateProject(p -> p.setKey("prj1"));
+ ComponentDto mainBranch1 = projectData1.getMainBranchComponent();
+ ComponentDto project1Branch1 = db.components().insertProjectBranch(mainBranch1);
+ db.components().insertComponent(newFileDto(project1Branch1, mainBranch1.uuid()));
+ ComponentDto project1Branch2 = db.components().insertProjectBranch(mainBranch1);
ComponentDto project2 = db.components().insertPrivateProject(p -> p.setKey("prj2")).getMainBranchComponent();
db.components().insertComponents(newProjectCopy(project1Branch1, applicationBranch1));
db.components().insertComponents(newProjectCopy(project2, applicationBranch1));
@@ -579,10 +587,10 @@ public class IssueQueryFactoryTest {
// Search on project1Branch1
assertThat(underTest.create(new SearchRequest()
.setComponentKeys(singletonList(applicationBranch1.getKey()))
- .setProjectKeys(singletonList(project1.getKey()))
+ .setProjectKeys(singletonList(mainBranch1.getKey()))
.setBranch(branchName1)))
.extracting(IssueQuery::branchUuid, query -> new ArrayList<>(query.projectUuids()), IssueQuery::isMainBranch)
- .containsOnly(applicationBranch1.uuid(), singletonList(project1.uuid()), false);
+ .containsOnly(applicationBranch1.uuid(), singletonList(projectData1.projectUuid()), false);
}
@Test
diff --git a/server/sonar-webserver-pushapi/src/it/java/org/sonar/server/pushapi/scheduler/purge/PushEventsPurgeSchedulerAndExecutorIT.java b/server/sonar-webserver-pushapi/src/it/java/org/sonar/server/pushapi/scheduler/purge/PushEventsPurgeSchedulerAndExecutorIT.java
index 0600d517b21..05aa404d9ae 100644
--- a/server/sonar-webserver-pushapi/src/it/java/org/sonar/server/pushapi/scheduler/purge/PushEventsPurgeSchedulerAndExecutorIT.java
+++ b/server/sonar-webserver-pushapi/src/it/java/org/sonar/server/pushapi/scheduler/purge/PushEventsPurgeSchedulerAndExecutorIT.java
@@ -47,7 +47,7 @@ public class PushEventsPurgeSchedulerAndExecutorIT {
private static final long INITIAL_AND_ENQUE_DELAY_MS = 1L;
@Rule
- public DbTester dbTester = DbTester.create(System2.INSTANCE);
+ public DbTester dbTester = DbTester.create(System2.INSTANCE, true);
private PushEventsPurgeScheduler pushEventsPurgeScheduler;
diff --git a/server/sonar-webserver-pushapi/src/test/java/org/sonar/server/pushapi/hotspots/HotspotChangeEventServiceImplTest.java b/server/sonar-webserver-pushapi/src/test/java/org/sonar/server/pushapi/hotspots/HotspotChangeEventServiceImplTest.java
index ae2a6dd52bd..eb23f13987a 100644
--- a/server/sonar-webserver-pushapi/src/test/java/org/sonar/server/pushapi/hotspots/HotspotChangeEventServiceImplTest.java
+++ b/server/sonar-webserver-pushapi/src/test/java/org/sonar/server/pushapi/hotspots/HotspotChangeEventServiceImplTest.java
@@ -35,7 +35,7 @@ import static org.sonar.test.JsonAssert.assertJson;
public class HotspotChangeEventServiceImplTest {
@Rule
- public DbTester db = DbTester.create();
+ public DbTester db = DbTester.create(true);
public final HotspotChangeEventServiceImpl underTest = new HotspotChangeEventServiceImpl(db.getDbClient());
diff --git a/server/sonar-webserver-pushapi/src/test/java/org/sonar/server/pushapi/qualityprofile/QualityProfileChangeEventServiceImplTest.java b/server/sonar-webserver-pushapi/src/test/java/org/sonar/server/pushapi/qualityprofile/QualityProfileChangeEventServiceImplTest.java
index 0a455a38324..2e20b2656bb 100644
--- a/server/sonar-webserver-pushapi/src/test/java/org/sonar/server/pushapi/qualityprofile/QualityProfileChangeEventServiceImplTest.java
+++ b/server/sonar-webserver-pushapi/src/test/java/org/sonar/server/pushapi/qualityprofile/QualityProfileChangeEventServiceImplTest.java
@@ -31,6 +31,7 @@ import org.junit.Test;
import org.sonar.api.rule.RuleKey;
import org.sonar.db.DbTester;
import org.sonar.db.component.ComponentDto;
+import org.sonar.db.component.ProjectData;
import org.sonar.db.measure.LiveMeasureDto;
import org.sonar.db.metric.MetricDto;
import org.sonar.db.project.ProjectDto;
@@ -57,7 +58,7 @@ import static org.sonar.server.qualityprofile.ActiveRuleChange.Type.ACTIVATED;
public class QualityProfileChangeEventServiceImplTest {
@Rule
- public DbTester db = DbTester.create();
+ public DbTester db = DbTester.create(true);
public final QualityProfileChangeEventServiceImpl underTest = new QualityProfileChangeEventServiceImpl(db.getDbClient());
@@ -84,7 +85,7 @@ public class QualityProfileChangeEventServiceImplTest {
underTest.distributeRuleChangeEvent(profiles, of(activeRuleChange), "xoo");
- Deque<PushEventDto> events = getProjectEvents(project.getUuid());
+ Deque<PushEventDto> events = getProjectEvents(project);
assertThat(events).isNotEmpty().hasSize(1);
assertThat(events.getFirst())
@@ -95,27 +96,28 @@ public class QualityProfileChangeEventServiceImplTest {
assertThat(ruleSetChangedEvent)
.contains("\"activatedRules\":[{\"key\":\"repo:ruleKey\"," +
- "\"language\":\"xoo\"," +
- "\"templateKey\":\"xoo:template-key\"," +
- "\"params\":[{\"key\":\"paramChangeKey\",\"value\":\"paramChangeValue\"}]}]," +
- "\"deactivatedRules\":[]");
+ "\"language\":\"xoo\"," +
+ "\"templateKey\":\"xoo:template-key\"," +
+ "\"params\":[{\"key\":\"paramChangeKey\",\"value\":\"paramChangeValue\"}]}]," +
+ "\"deactivatedRules\":[]");
}
@Test
public void distributeRuleChangeEvent_when_project_has_only_default_quality_profiles() {
String language = "xoo";
- ComponentDto project = db.components().insertPrivateProject().getMainBranchComponent();
+ ProjectData projectData = db.components().insertPrivateProject();
+ ComponentDto mainBranch = projectData.getMainBranchComponent();
RuleDto templateRule = insertTemplateRule();
QProfileDto defaultQualityProfile = insertDefaultQualityProfile(language);
RuleDto rule = insertCustomRule(templateRule, language, "<div>line1\nline2</div>");
ActiveRuleChange activeRuleChange = changeActiveRule(defaultQualityProfile, rule, "paramChangeKey", "paramChangeValue");
- insertQualityProfileLiveMeasure(project, language, NCLOC_LANGUAGE_DISTRIBUTION_KEY);
+ insertQualityProfileLiveMeasure(mainBranch, projectData.getProjectDto(), language, NCLOC_LANGUAGE_DISTRIBUTION_KEY);
db.getSession().commit();
underTest.distributeRuleChangeEvent(List.of(defaultQualityProfile), of(activeRuleChange), language);
- Deque<PushEventDto> events = getProjectEvents(project.branchUuid());
+ Deque<PushEventDto> events = getProjectEvents(projectData.getProjectDto());
assertThat(events)
.hasSize(1);
@@ -128,16 +130,16 @@ public class QualityProfileChangeEventServiceImplTest {
assertThat(ruleSetChangedEvent)
.contains("\"activatedRules\":[{\"key\":\"repo:ruleKey\"," +
- "\"language\":\"xoo\"," +
- "\"templateKey\":\"xoo:template-key\"," +
- "\"params\":[{\"key\":\"paramChangeKey\",\"value\":\"paramChangeValue\"}]}]," +
- "\"deactivatedRules\":[]");
+ "\"language\":\"xoo\"," +
+ "\"templateKey\":\"xoo:template-key\"," +
+ "\"params\":[{\"key\":\"paramChangeKey\",\"value\":\"paramChangeValue\"}]}]," +
+ "\"deactivatedRules\":[]");
}
- private Deque<PushEventDto> getProjectEvents(String projectUuid) {
+ private Deque<PushEventDto> getProjectEvents(ProjectDto projectDto) {
return db.getDbClient()
.pushEventDao()
- .selectChunkByProjectUuids(db.getSession(), Set.of(projectUuid), 1L, null, 1);
+ .selectChunkByProjectUuids(db.getSession(), Set.of(projectDto.getUuid()), 1L, null, 1);
}
private ActiveRuleChange changeActiveRule(QProfileDto defaultQualityProfile, RuleDto rule, String changeKey, String changeValue) {
@@ -177,7 +179,7 @@ public class QualityProfileChangeEventServiceImplTest {
@Test
public void publishRuleActivationToSonarLintClients() {
- ProjectDto projectDao = new ProjectDto().setUuid("project-uuid");
+ ProjectDto projectDto = new ProjectDto().setUuid("project-uuid");
QProfileDto activatedQualityProfile = QualityProfileTesting.newQualityProfileDto();
activatedQualityProfile.setLanguage("xoo");
db.qualityProfiles().insert(activatedQualityProfile);
@@ -199,9 +201,9 @@ public class QualityProfileChangeEventServiceImplTest {
db.getDbClient().activeRuleDao().insertParam(db.getSession(), activeRule2, activeRuleParam2);
db.getSession().commit();
- underTest.publishRuleActivationToSonarLintClients(projectDao, activatedQualityProfile, deactivatedQualityProfile);
+ underTest.publishRuleActivationToSonarLintClients(projectDto, activatedQualityProfile, deactivatedQualityProfile);
- Deque<PushEventDto> events = getProjectEvents(projectDao.getUuid());
+ Deque<PushEventDto> events = getProjectEvents(projectDto);
assertThat(events).isNotEmpty().hasSize(1);
assertThat(events.getFirst())
@@ -212,21 +214,21 @@ public class QualityProfileChangeEventServiceImplTest {
assertThat(ruleSetChangedEvent)
.contains("\"activatedRules\":[{\"key\":\"repo:ruleKey\"," +
- "\"language\":\"xoo\",\"severity\":\"" + Common.Severity.forNumber(rule1.getSeverity()).name() + "\"," +
- "\"params\":[{\"key\":\"" + activeRuleParam1.getKey() + "\",\"value\":\"" + activeRuleParam1.getValue() + "\"}]}]," +
- "\"deactivatedRules\":[\"repo2:ruleKey2\"]");
+ "\"language\":\"xoo\",\"severity\":\"" + Common.Severity.forNumber(rule1.getSeverity()).name() + "\"," +
+ "\"params\":[{\"key\":\"" + activeRuleParam1.getKey() + "\",\"value\":\"" + activeRuleParam1.getValue() + "\"}]}]," +
+ "\"deactivatedRules\":[\"repo2:ruleKey2\"]");
}
- private void insertQualityProfileLiveMeasure(ComponentDto project, String language, String metricKey) {
+ private void insertQualityProfileLiveMeasure(ComponentDto branch, ProjectDto projectDto, String language, String metricKey) {
MetricDto metric = insertMetric(metricKey);
Consumer<LiveMeasureDto> configureLiveMeasure = liveMeasure -> liveMeasure
.setMetricUuid(metric.getUuid())
- .setComponentUuid(project.uuid())
- .setProjectUuid(project.uuid())
+ .setComponentUuid(branch.uuid())
+ .setProjectUuid(projectDto.getUuid())
.setData(language + "=" + nextInt(10));
- db.measures().insertLiveMeasure(project, metric, configureLiveMeasure);
+ db.measures().insertLiveMeasure(branch, metric, configureLiveMeasure);
}
private MetricDto insertMetric(String metricKey) {
diff --git a/server/sonar-webserver-pushapi/src/test/java/org/sonar/server/pushapi/scheduler/polling/PushEventPollSchedulerTest.java b/server/sonar-webserver-pushapi/src/test/java/org/sonar/server/pushapi/scheduler/polling/PushEventPollSchedulerTest.java
index c50a12f9475..f88eb44c467 100644
--- a/server/sonar-webserver-pushapi/src/test/java/org/sonar/server/pushapi/scheduler/polling/PushEventPollSchedulerTest.java
+++ b/server/sonar-webserver-pushapi/src/test/java/org/sonar/server/pushapi/scheduler/polling/PushEventPollSchedulerTest.java
@@ -55,7 +55,7 @@ public class PushEventPollSchedulerTest {
private final Configuration config = mock(Configuration.class);
@Rule
- public DbTester db = DbTester.create(system2);
+ public DbTester db = DbTester.create(system2, true);
private final SyncPushEventExecutorService executorService = new SyncPushEventExecutorService();
diff --git a/server/sonar-webserver-webapi/src/it/java/org/sonar/server/ce/ws/ActivityActionIT.java b/server/sonar-webserver-webapi/src/it/java/org/sonar/server/ce/ws/ActivityActionIT.java
index 63bb550608d..4a73f0d8ad2 100644
--- a/server/sonar-webserver-webapi/src/it/java/org/sonar/server/ce/ws/ActivityActionIT.java
+++ b/server/sonar-webserver-webapi/src/it/java/org/sonar/server/ce/ws/ActivityActionIT.java
@@ -96,7 +96,7 @@ public class ActivityActionIT {
public DbTester db = DbTester.create(System2.INSTANCE, true);
private final TaskFormatter formatter = new TaskFormatter(db.getDbClient(), System2.INSTANCE);
- private final ActivityAction underTest = new ActivityAction(userSession, db.getDbClient(), formatter, new CeTaskProcessor[] {mock(CeTaskProcessor.class)});
+ private final ActivityAction underTest = new ActivityAction(userSession, db.getDbClient(), formatter, new CeTaskProcessor[]{mock(CeTaskProcessor.class)});
private final WsActionTester ws = new WsActionTester(underTest);
@Test
diff --git a/server/sonar-webserver/src/it/java/org/sonar/server/platform/web/SonarLintConnectionFilterIT.java b/server/sonar-webserver/src/it/java/org/sonar/server/platform/web/SonarLintConnectionFilterIT.java
index ff14e8d21f2..8a2c97b4f12 100644
--- a/server/sonar-webserver/src/it/java/org/sonar/server/platform/web/SonarLintConnectionFilterIT.java
+++ b/server/sonar-webserver/src/it/java/org/sonar/server/platform/web/SonarLintConnectionFilterIT.java
@@ -45,7 +45,7 @@ public class SonarLintConnectionFilterIT {
private final TestSystem2 system2 = new TestSystem2();
@Rule
- public DbTester dbTester = DbTester.create(system2);
+ public DbTester dbTester = DbTester.create(system2, true);
@Test
public void update() throws IOException {