import java.util.Map;
import javax.annotation.CheckForNull;
+import org.sonar.server.project.Project;
import org.sonar.server.qualityprofile.QualityProfile;
public interface AnalysisMetadataHolder {
import javax.annotation.Nullable;
import org.sonar.db.component.BranchType;
import org.sonar.server.computation.util.InitializedProperty;
+import org.sonar.server.project.Project;
import org.sonar.server.qualityprofile.QualityProfile;
import static com.google.common.base.Preconditions.checkState;
import java.util.Map;
import javax.annotation.Nullable;
+import org.sonar.server.project.Project;
import org.sonar.server.qualityprofile.QualityProfile;
public interface MutableAnalysisMetadataHolder extends AnalysisMetadataHolder {
+++ /dev/null
-/*
- * SonarQube
- * Copyright (C) 2009-2018 SonarSource SA
- * mailto:info AT sonarsource DOT com
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 3 of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this program; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- */
-package org.sonar.server.computation.task.projectanalysis.analysis;
-
-import javax.annotation.Nullable;
-import javax.annotation.concurrent.Immutable;
-
-@Immutable
-public class Project {
-
- private final String uuid;
- private final String key;
- private final String name;
- private final String description;
-
- public Project(String uuid, String key, String name) {
- this(uuid, key, name, null);
- }
-
- public Project(String uuid, String key, String name, @Nullable String description) {
- this.uuid = uuid;
- this.key = key;
- this.name = name;
- this.description = description;
- }
-
- /**
- * Always links to a row that exists in database.
- */
- public String getUuid() {
- return uuid;
- }
-
- /**
- * Always links to a row that exists in database.
- */
- public String getKey() {
- return key;
- }
-
- public String getName() {
- return name;
- }
-
- public String getDescription() {
- return description;
- }
-
- @Override
- public boolean equals(Object o) {
- if (this == o) {
- return true;
- }
- if (o == null || getClass() != o.getClass()) {
- return false;
- }
- Project project = (Project) o;
- return uuid.equals(project.uuid);
- }
-
- @Override
- public int hashCode() {
- return uuid.hashCode();
- }
-
- @Override
- public String toString() {
- StringBuilder sb = new StringBuilder("Project{");
- sb.append("uuid='").append(uuid).append('\'');
- sb.append(", key='").append(key).append('\'');
- sb.append(", name='").append(name).append('\'');
- sb.append(", description=").append(toString(this.description));
- sb.append('}');
- return sb.toString();
- }
-
- private static String toString(@Nullable String s) {
- if (s == null) {
- return null;
- }
- return '\'' + s + '\'';
- }
-
-}
import org.sonar.scanner.protocol.output.ScannerReport;
import org.sonar.scanner.protocol.output.ScannerReport.Component.FileStatus;
import org.sonar.server.computation.task.projectanalysis.analysis.Branch;
-import org.sonar.server.computation.task.projectanalysis.analysis.Project;
+import org.sonar.server.project.Project;
import static com.google.common.base.MoreObjects.firstNonNull;
import static com.google.common.base.Preconditions.checkArgument;
import org.sonar.scanner.protocol.output.ScannerReport.Metadata.QProfile;
import org.sonar.server.computation.task.projectanalysis.analysis.MutableAnalysisMetadataHolder;
import org.sonar.server.computation.task.projectanalysis.analysis.Organization;
-import org.sonar.server.computation.task.projectanalysis.analysis.Project;
+import org.sonar.server.project.Project;
import org.sonar.server.computation.task.projectanalysis.analysis.ScannerPlugin;
import org.sonar.server.computation.task.projectanalysis.batch.BatchReportReader;
import org.sonar.server.computation.task.projectanalysis.component.BranchLoader;
package org.sonar.server.computation.task.projectanalysis.view;
import java.util.function.Consumer;
-import org.sonar.server.computation.task.projectanalysis.analysis.Project;
+import org.sonar.server.project.Project;
public interface TriggerViewRefreshDelegate extends Consumer<Project> {
}
import org.sonar.api.ce.posttask.PostProjectAnalysisTask;
import org.sonar.api.measures.Metric;
import org.sonar.core.util.stream.MoreCollectors;
+import org.sonar.server.project.Project;
import org.sonar.server.qualitygate.Condition;
import org.sonar.server.qualitygate.EvaluatedCondition;
import org.sonar.server.qualitygate.EvaluatedQualityGate;
import org.sonar.server.webhook.Analysis;
import org.sonar.server.webhook.Branch;
import org.sonar.server.webhook.CeTask;
-import org.sonar.server.webhook.Project;
import org.sonar.server.webhook.WebHooks;
import org.sonar.server.webhook.WebhookPayloadFactory;
--- /dev/null
+/*
+ * SonarQube
+ * Copyright (C) 2009-2018 SonarSource SA
+ * mailto:info AT sonarsource DOT com
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 3 of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+package org.sonar.server.project;
+
+import java.util.Objects;
+import javax.annotation.Nullable;
+import javax.annotation.concurrent.Immutable;
+
+@Immutable
+public class Project {
+
+ private final String uuid;
+ private final String key;
+ private final String name;
+ private final String description;
+
+ public Project(String uuid, String key, String name) {
+ this(uuid, key, name, null);
+ }
+
+ public Project(String uuid, String key, String name, @Nullable String description) {
+ this.uuid = uuid;
+ this.key = key;
+ this.name = name;
+ this.description = description;
+ }
+
+ /**
+ * Always links to a row that exists in database.
+ */
+ public String getUuid() {
+ return uuid;
+ }
+
+ /**
+ * Always links to a row that exists in database.
+ */
+ public String getKey() {
+ return key;
+ }
+
+ public String getName() {
+ return name;
+ }
+
+ public String getDescription() {
+ return description;
+ }
+
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) {
+ return true;
+ }
+ if (o == null || getClass() != o.getClass()) {
+ return false;
+ }
+ Project project = (Project) o;
+ return uuid.equals(project.uuid)
+ && key.equals(project.key)
+ && name.equals(project.name);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(uuid, key, name);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder("Project{");
+ sb.append("uuid='").append(uuid).append('\'');
+ sb.append(", key='").append(key).append('\'');
+ sb.append(", name='").append(name).append('\'');
+ sb.append(", description=").append(toString(this.description));
+ sb.append('}');
+ return sb.toString();
+ }
+
+ private static String toString(@Nullable String s) {
+ if (s == null) {
+ return null;
+ }
+ return '\'' + s + '\'';
+ }
+
+}
+++ /dev/null
-/*
- * SonarQube
- * Copyright (C) 2009-2018 SonarSource SA
- * mailto:info AT sonarsource DOT com
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 3 of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this program; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- */
-package org.sonar.server.webhook;
-
-import java.util.Objects;
-
-import static java.util.Objects.requireNonNull;
-
-public final class Project {
- private final String uuid;
- private final String key;
- private final String name;
-
- public Project(String uuid, String key, String name) {
- this.uuid = requireNonNull(uuid, "uuid can't be null");
- this.key = requireNonNull(key, "key can't be null");
- this.name = requireNonNull(name, "name can't be null");
- }
-
- public String getUuid() {
- return uuid;
- }
-
- public String getKey() {
- return key;
- }
-
- public String getName() {
- return name;
- }
-
- @Override
- public boolean equals(Object o) {
- if (this == o) {
- return true;
- }
- if (o == null || getClass() != o.getClass()) {
- return false;
- }
- Project project = (Project) o;
- return Objects.equals(uuid, project.uuid) &&
- Objects.equals(key, project.key) &&
- Objects.equals(name, project.name);
- }
-
- @Override
- public int hashCode() {
- return Objects.hash(uuid, key, name);
- }
-
- @Override
- public String toString() {
- return "Project{" +
- "uuid='" + uuid + '\'' +
- ", key='" + key + '\'' +
- ", name='" + name + '\'' +
- '}';
- }
-}
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;
+import org.sonar.server.project.Project;
import org.sonar.server.qualitygate.EvaluatedQualityGate;
import static com.google.common.collect.ImmutableMap.copyOf;
import org.sonar.api.platform.Server;
import org.sonar.api.utils.System2;
import org.sonar.api.utils.text.JsonWriter;
+import org.sonar.server.project.Project;
import org.sonar.server.qualitygate.Condition;
import org.sonar.server.qualitygate.EvaluatedCondition;
import org.sonar.server.qualitygate.EvaluatedQualityGate;
import org.sonar.db.component.BranchDto;
import org.sonar.db.component.ComponentDto;
import org.sonar.db.component.SnapshotDto;
+import org.sonar.server.project.Project;
import org.sonar.server.qualitygate.EvaluatedQualityGate;
import org.sonar.server.qualitygate.changeevent.QGChangeEvent;
import org.sonar.server.qualitygate.changeevent.QGChangeEventListener;
import org.sonar.db.component.BranchType;
import org.sonar.db.organization.OrganizationDto;
import org.sonar.server.computation.task.projectanalysis.component.DefaultBranchImpl;
+import org.sonar.server.project.Project;
import static org.assertj.core.api.Assertions.assertThat;
import static org.mockito.Mockito.mock;
import org.sonar.db.component.BranchType;
import org.sonar.db.organization.OrganizationDto;
import org.sonar.server.computation.util.InitializedProperty;
+import org.sonar.server.project.Project;
import org.sonar.server.qualityprofile.QualityProfile;
import static com.google.common.base.Preconditions.checkNotNull;
import javax.annotation.CheckForNull;
import javax.annotation.Nullable;
import org.junit.rules.ExternalResource;
+import org.sonar.server.project.Project;
import org.sonar.server.qualityprofile.QualityProfile;
public class MutableAnalysisMetadataHolderRule extends ExternalResource implements MutableAnalysisMetadataHolder {
+++ /dev/null
-/*
- * SonarQube
- * Copyright (C) 2009-2018 SonarSource SA
- * mailto:info AT sonarsource DOT com
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 3 of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this program; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- */
-package org.sonar.server.computation.task.projectanalysis.analysis;
-
-import org.junit.Test;
-
-import static org.assertj.core.api.Assertions.assertThat;
-
-public class ProjectTest {
- @Test
- public void test_bean_without_description() {
- Project project1 = new Project("U1", "K1", "N1");
- Project project2 = new Project("U1", "K1", "N1", null);
-
- assertThat(project1.getUuid()).isEqualTo(project2.getUuid()).isEqualTo("U1");
- assertThat(project1.getKey()).isEqualTo(project2.getKey()).isEqualTo("K1");
- assertThat(project1.getName()).isEqualTo(project2.getName()).isEqualTo("N1");
- assertThat(project1.getDescription()).isEqualTo(project2.getDescription()).isNull();
-
- assertThat(project1.toString())
- .isEqualTo(project2.toString())
- .isEqualTo("Project{uuid='U1', key='K1', name='N1', description=null}");
- }
- @Test
- public void test_bean_with_description() {
- Project project1 = new Project("U1", "K1", "N1", "D1");
-
- assertThat(project1.getUuid()).isEqualTo("U1");
- assertThat(project1.getKey()).isEqualTo("K1");
- assertThat(project1.getName()).isEqualTo("N1");
- assertThat(project1.getDescription()).isEqualTo("D1");
-
- assertThat(project1.toString())
- .isEqualTo(project1.toString())
- .isEqualTo("Project{uuid='U1', key='K1', name='N1', description='D1'}");
- }
-
- @Test
- public void test_equals_and_hashCode() {
- Project project1 = new Project("U1", "K1", "N1");
- Project project2 = new Project("U1", "K1", "N1", "D1");
-
- assertThat(project1).isEqualTo(project1);
- assertThat(project1).isNotEqualTo(null);
- assertThat(project1).isNotEqualTo(new Object());
- assertThat(project1).isEqualTo(new Project("U1", "K1", "N1", null));
- assertThat(project1).isEqualTo(new Project("U1", "K2", "N1", null));
- assertThat(project1).isEqualTo(new Project("U1", "K1", "N2", null));
- assertThat(project1).isEqualTo(project2);
-
- assertThat(project1.hashCode()).isEqualTo(project1.hashCode());
- assertThat(project1.hashCode()).isNotEqualTo(null);
- assertThat(project1.hashCode()).isNotEqualTo(new Object().hashCode());
- assertThat(project1.hashCode()).isEqualTo(new Project("U1", "K1", "N1", null).hashCode());
- assertThat(project1.hashCode()).isEqualTo(new Project("U1", "K2", "N1", null).hashCode());
- assertThat(project1.hashCode()).isEqualTo(new Project("U1", "K1", "N2", null).hashCode());
- assertThat(project1.hashCode()).isEqualTo(project2.hashCode());
- }
-
-}
import org.sonar.db.component.ComponentTesting;
import org.sonar.server.computation.task.projectanalysis.analysis.AnalysisMetadataHolderRule;
import org.sonar.server.computation.task.projectanalysis.analysis.Branch;
-import org.sonar.server.computation.task.projectanalysis.analysis.Project;
+import org.sonar.server.project.Project;
import static org.assertj.core.api.Assertions.assertThat;
import static org.mockito.Mockito.mock;
import org.sonar.db.component.SnapshotDto;
import org.sonar.scanner.protocol.output.ScannerReport;
import org.sonar.server.computation.task.projectanalysis.analysis.Branch;
-import org.sonar.server.computation.task.projectanalysis.analysis.Project;
+import org.sonar.server.project.Project;
import static com.google.common.base.Preconditions.checkArgument;
import static org.apache.commons.lang.RandomStringUtils.randomAlphabetic;
import org.sonar.db.property.PropertyDto;
import org.sonar.server.computation.task.projectanalysis.analysis.AnalysisMetadataHolderRule;
import org.sonar.server.computation.task.projectanalysis.analysis.Branch;
-import org.sonar.server.computation.task.projectanalysis.analysis.Project;
+import org.sonar.server.project.Project;
import static org.assertj.core.api.Assertions.assertThat;
import static org.mockito.Mockito.mock;
import org.sonar.scanner.protocol.output.ScannerReport.Component.FileStatus;
import org.sonar.server.computation.task.projectanalysis.analysis.Branch;
import org.sonar.server.computation.task.projectanalysis.analysis.MutableAnalysisMetadataHolderRule;
-import org.sonar.server.computation.task.projectanalysis.analysis.Project;
+import org.sonar.server.project.Project;
import org.sonar.server.computation.task.projectanalysis.batch.BatchReportReaderRule;
import org.sonar.server.computation.task.projectanalysis.component.Component;
import org.sonar.server.computation.task.projectanalysis.component.DefaultBranchImpl;
import org.sonar.scanner.protocol.output.ScannerReport;
import org.sonar.server.computation.task.projectanalysis.analysis.MutableAnalysisMetadataHolderRule;
import org.sonar.server.computation.task.projectanalysis.analysis.Organization;
-import org.sonar.server.computation.task.projectanalysis.analysis.Project;
+import org.sonar.server.project.Project;
import org.sonar.server.computation.task.projectanalysis.analysis.ScannerPlugin;
import org.sonar.server.computation.task.projectanalysis.batch.BatchReportReaderRule;
import org.sonar.server.computation.task.projectanalysis.component.BranchLoader;
import org.sonar.db.measure.LiveMeasureDto;
import org.sonar.db.metric.MetricDto;
import org.sonar.server.computation.task.projectanalysis.analysis.MutableAnalysisMetadataHolderRule;
-import org.sonar.server.computation.task.projectanalysis.analysis.Project;
+import org.sonar.server.project.Project;
import org.sonar.server.computation.task.projectanalysis.component.Component;
import org.sonar.server.computation.task.projectanalysis.component.ReportComponent;
import org.sonar.server.computation.task.projectanalysis.component.TreeRootHolderRule;
import org.sonar.db.component.BranchType;
import org.sonar.server.computation.task.projectanalysis.analysis.AnalysisMetadataHolderRule;
import org.sonar.server.computation.task.projectanalysis.analysis.Branch;
-import org.sonar.server.computation.task.projectanalysis.analysis.Project;
+import org.sonar.server.project.Project;
import org.sonar.server.computation.task.projectanalysis.component.Component;
import org.sonar.server.computation.task.projectanalysis.component.DefaultBranchImpl;
import org.sonar.server.computation.task.projectanalysis.component.ReportComponent;
import org.sonar.scanner.protocol.output.ScannerReport;
import org.sonar.server.computation.task.projectanalysis.analysis.AnalysisMetadataHolderRule;
import org.sonar.server.computation.task.projectanalysis.analysis.Branch;
-import org.sonar.server.computation.task.projectanalysis.analysis.Project;
+import org.sonar.server.project.Project;
import org.sonar.server.computation.task.projectanalysis.component.BranchPersister;
import org.sonar.server.computation.task.projectanalysis.component.Component;
import org.sonar.server.computation.task.projectanalysis.component.DefaultBranchImpl;
import org.junit.Test;
import org.sonar.server.computation.task.projectanalysis.analysis.AnalysisMetadataHolder;
-import org.sonar.server.computation.task.projectanalysis.analysis.Project;
+import org.sonar.server.project.Project;
import org.sonar.server.computation.task.projectanalysis.view.TriggerViewRefreshDelegate;
import static org.mockito.Mockito.mock;
}
verify(payloadFactory).create(new ProjectAnalysis(
- new org.sonar.server.webhook.Project(project.getUuid(), project.getKey(), project.getName()),
+ new org.sonar.server.project.Project(project.getUuid(), project.getKey(), project.getName()),
new org.sonar.server.webhook.CeTask(ceTask.getId(), org.sonar.server.webhook.CeTask.Status.valueOf(ceTask.getStatus().name())),
analysisUUid == null ? null : new Analysis(analysisUUid, date.getTime()),
new org.sonar.server.webhook.Branch(branch.isMain(), branch.getName().get(), org.sonar.server.webhook.Branch.Type.valueOf(branch.getType().name())),
--- /dev/null
+/*
+ * SonarQube
+ * Copyright (C) 2009-2018 SonarSource SA
+ * mailto:info AT sonarsource DOT com
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 3 of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+package org.sonar.server.project;
+
+import org.junit.Test;
+
+import static org.assertj.core.api.Assertions.assertThat;
+
+public class ProjectTest {
+ @Test
+ public void test_bean_without_description() {
+ Project project1 = new Project("U1", "K1", "N1");
+ Project project2 = new Project("U1", "K1", "N1", null);
+
+ assertThat(project1.getUuid()).isEqualTo(project2.getUuid()).isEqualTo("U1");
+ assertThat(project1.getKey()).isEqualTo(project2.getKey()).isEqualTo("K1");
+ assertThat(project1.getName()).isEqualTo(project2.getName()).isEqualTo("N1");
+ assertThat(project1.getDescription()).isEqualTo(project2.getDescription()).isNull();
+
+ assertThat(project1.toString())
+ .isEqualTo(project2.toString())
+ .isEqualTo("Project{uuid='U1', key='K1', name='N1', description=null}");
+ }
+
+ @Test
+ public void test_bean_with_description() {
+ Project project1 = new Project("U1", "K1", "N1", "D1");
+
+ assertThat(project1.getUuid()).isEqualTo("U1");
+ assertThat(project1.getKey()).isEqualTo("K1");
+ assertThat(project1.getName()).isEqualTo("N1");
+ assertThat(project1.getDescription()).isEqualTo("D1");
+
+ assertThat(project1.toString())
+ .isEqualTo(project1.toString())
+ .isEqualTo("Project{uuid='U1', key='K1', name='N1', description='D1'}");
+ }
+
+ @Test
+ public void test_equals_and_hashCode() {
+ Project project1 = new Project("U1", "K1", "N1");
+ Project project2 = new Project("U1", "K1", "N1", "D1");
+
+ assertThat(project1).isEqualTo(project1);
+ assertThat(project1).isNotEqualTo(null);
+ assertThat(project1).isNotEqualTo(new Object());
+ assertThat(project1).isEqualTo(new Project("U1", "K1", "N1", null));
+ assertThat(project1).isNotEqualTo(new Project("U1", "K2", "N1", null));
+ assertThat(project1).isNotEqualTo(new Project("U1", "K1", "N2", null));
+ assertThat(project1).isEqualTo(project2);
+
+ assertThat(project1.hashCode()).isEqualTo(project1.hashCode());
+ assertThat(project1.hashCode()).isNotEqualTo(null);
+ assertThat(project1.hashCode()).isNotEqualTo(new Object().hashCode());
+ assertThat(project1.hashCode()).isEqualTo(new Project("U1", "K1", "N1", null).hashCode());
+ assertThat(project1.hashCode()).isNotEqualTo(new Project("U1", "K2", "N1", null).hashCode());
+ assertThat(project1.hashCode()).isNotEqualTo(new Project("U1", "K1", "N2", null).hashCode());
+ assertThat(project1.hashCode()).isEqualTo(project2.hashCode());
+ }
+
+}
import org.junit.Test;
import org.junit.rules.ExpectedException;
import org.sonar.api.measures.Metric;
+import org.sonar.server.project.Project;
import org.sonar.server.qualitygate.EvaluatedQualityGate;
import org.sonar.server.qualitygate.QualityGate;
@Test
public void verify_toString() {
assertThat(underTest.toString()).isEqualTo(
- "ProjectAnalysis{project=Project{uuid='uuid', key='key', name='name'}, ceTask=CeTask{id='id', status=SUCCESS}, branch=Branch{main=true, name='name', type=SHORT}, qualityGate=EvaluatedQualityGate{qualityGate=QualityGate{id=id, name='name', conditions=[]}, status=WARN, evaluatedConditions=[]}, updatedAt=1, properties={a=b}, analysis=Analysis{uuid='analysis_uuid', date=1500}}");
+ "ProjectAnalysis{project=Project{uuid='uuid', key='key', name='name', description=null}, ceTask=CeTask{id='id', status=SUCCESS}, branch=Branch{main=true, name='name', type=SHORT}, qualityGate=EvaluatedQualityGate{qualityGate=QualityGate{id=id, name='name', conditions=[]}, status=WARN, evaluatedConditions=[]}, updatedAt=1, properties={a=b}, analysis=Analysis{uuid='analysis_uuid', date=1500}}");
}
}
+++ /dev/null
-/*
- * SonarQube
- * Copyright (C) 2009-2018 SonarSource SA
- * mailto:info AT sonarsource DOT com
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 3 of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this program; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- */
-package org.sonar.server.webhook;
-
-import org.junit.Rule;
-import org.junit.Test;
-import org.junit.rules.ExpectedException;
-
-import static org.assertj.core.api.Assertions.assertThat;
-
-public class ProjectTest {
- @Rule
- public ExpectedException expectedException = ExpectedException.none();
-
- private Project underTest = new Project("a", "b", "c");
-
- @Test
- public void constructor_throws_NPE_if_uuid_is_null() {
- expectedException.expect(NullPointerException.class);
- expectedException.expectMessage("uuid can't be null");
-
- new Project(null, "b", "c");
- }
-
- @Test
- public void constructor_throws_NPE_if_key_is_null() {
- expectedException.expect(NullPointerException.class);
- expectedException.expectMessage("key can't be null");
-
- new Project("a", null, "c");
- }
-
- @Test
- public void constructor_throws_NPE_if_name_is_null() {
- expectedException.expect(NullPointerException.class);
- expectedException.expectMessage("name can't be null");
-
- new Project("a", "b", null);
- }
-
- @Test
- public void verify_getters() {
- assertThat(underTest.getUuid()).isEqualTo("a");
- assertThat(underTest.getKey()).isEqualTo("b");
- assertThat(underTest.getName()).isEqualTo("c");
- }
-}
import org.sonar.api.measures.Metric;
import org.sonar.api.platform.Server;
import org.sonar.api.utils.System2;
+import org.sonar.server.project.Project;
import org.sonar.server.qualitygate.Condition;
import org.sonar.server.qualitygate.EvaluatedCondition;
import org.sonar.server.qualitygate.EvaluatedQualityGate;
import org.sonar.db.component.ComponentDto;
import org.sonar.db.component.SnapshotDto;
import org.sonar.db.organization.OrganizationDto;
+import org.sonar.server.project.Project;
import org.sonar.server.qualitygate.EvaluatedQualityGate;
import org.sonar.server.qualitygate.changeevent.QGChangeEvent;
import org.sonar.server.qualitygate.changeevent.QGChangeEventListener;