this will in turn make adding a update method on MeasureRepository more meaningfultags/5.2-RC1
@@ -28,6 +28,8 @@ import org.sonar.core.rule.RuleDto; | |||
import org.sonar.server.computation.issue.RuleCache; | |||
import org.sonar.server.computation.metric.Metric; | |||
import static com.google.common.base.Optional.of; | |||
public class BatchMeasureToMeasure { | |||
private final RuleCache ruleCache; | |||
@@ -41,7 +43,7 @@ public class BatchMeasureToMeasure { | |||
return Optional.absent(); | |||
} | |||
Measure.Builder builder = createBuilder(batchMeasure); | |||
Measure.NewMeasureBuilder builder = createBuilder(batchMeasure); | |||
String data = batchMeasure.hasStringValue() ? batchMeasure.getStringValue() : null; | |||
switch (metric.getType().getValueType()) { | |||
case INT: | |||
@@ -63,82 +65,82 @@ public class BatchMeasureToMeasure { | |||
} | |||
} | |||
private Measure.Builder createBuilder(BatchReport.Measure batchMeasure) { | |||
private Measure.NewMeasureBuilder createBuilder(BatchReport.Measure batchMeasure) { | |||
if (batchMeasure.hasCharactericId() && batchMeasure.hasRuleKey()) { | |||
throw new IllegalArgumentException("Measure with both characteristicId and ruleKey are not supported"); | |||
} | |||
if (batchMeasure.hasCharactericId()) { | |||
return Measure.builder().forCharacteristic(batchMeasure.getCharactericId()); | |||
return Measure.newMeasure().forCharacteristic(batchMeasure.getCharactericId()); | |||
} | |||
if (batchMeasure.hasRuleKey()) { | |||
RuleDto ruleDto = ruleCache.get(RuleKey.parse(batchMeasure.getRuleKey())); | |||
return Measure.builder().forRule(ruleDto.getId()); | |||
return Measure.newMeasure().forRule(ruleDto.getId()); | |||
} | |||
return Measure.builder(); | |||
return Measure.newMeasure(); | |||
} | |||
private static Optional<Measure> toIntegerMeasure(Measure.Builder builder, BatchReport.Measure batchMeasure, @Nullable String data) { | |||
private static Optional<Measure> toIntegerMeasure(Measure.NewMeasureBuilder builder, BatchReport.Measure batchMeasure, @Nullable String data) { | |||
if (!batchMeasure.hasIntValue()) { | |||
return toMeasure(builder.createNoValue(), batchMeasure); | |||
return toNoValueMeasure(builder, batchMeasure); | |||
} | |||
return toMeasure(builder.create(batchMeasure.getIntValue(), data), batchMeasure); | |||
return of(setCommonProperties(builder, batchMeasure).create(batchMeasure.getIntValue(), data)); | |||
} | |||
private static Optional<Measure> toLongMeasure(Measure.Builder builder, BatchReport.Measure batchMeasure, @Nullable String data) { | |||
private static Optional<Measure> toLongMeasure(Measure.NewMeasureBuilder builder, BatchReport.Measure batchMeasure, @Nullable String data) { | |||
if (!batchMeasure.hasLongValue()) { | |||
return toMeasure(builder.createNoValue(), batchMeasure); | |||
return toNoValueMeasure(builder, batchMeasure); | |||
} | |||
return toMeasure(builder.create(batchMeasure.getLongValue(), data), batchMeasure); | |||
return of(setCommonProperties(builder, batchMeasure).create(batchMeasure.getLongValue(), data)); | |||
} | |||
private static Optional<Measure> toDoubleMeasure(Measure.Builder builder, BatchReport.Measure batchMeasure, @Nullable String data) { | |||
private static Optional<Measure> toDoubleMeasure(Measure.NewMeasureBuilder builder, BatchReport.Measure batchMeasure, @Nullable String data) { | |||
if (!batchMeasure.hasDoubleValue()) { | |||
return toMeasure(builder.createNoValue(), batchMeasure); | |||
return toNoValueMeasure(builder, batchMeasure); | |||
} | |||
return toMeasure(builder.create(batchMeasure.getDoubleValue(), data), batchMeasure); | |||
return of(setCommonProperties(builder, batchMeasure).create(batchMeasure.getDoubleValue(), data)); | |||
} | |||
private static Optional<Measure> toBooleanMeasure(Measure.Builder builder, BatchReport.Measure batchMeasure, @Nullable String data) { | |||
private static Optional<Measure> toBooleanMeasure(Measure.NewMeasureBuilder builder, BatchReport.Measure batchMeasure, @Nullable String data) { | |||
if (!batchMeasure.hasBooleanValue()) { | |||
return toMeasure(builder.createNoValue(), batchMeasure); | |||
return toNoValueMeasure(builder, batchMeasure); | |||
} | |||
return toMeasure(builder.create(batchMeasure.getBooleanValue(), data), batchMeasure); | |||
return of(setCommonProperties(builder, batchMeasure).create(batchMeasure.getBooleanValue(), data)); | |||
} | |||
private static Optional<Measure> toStringMeasure(Measure.Builder builder, BatchReport.Measure batchMeasure) { | |||
private static Optional<Measure> toStringMeasure(Measure.NewMeasureBuilder builder, BatchReport.Measure batchMeasure) { | |||
if (!batchMeasure.hasStringValue()) { | |||
return toMeasure(builder.createNoValue(), batchMeasure); | |||
return toNoValueMeasure(builder, batchMeasure); | |||
} | |||
return toMeasure(builder.create(batchMeasure.getStringValue()), batchMeasure); | |||
return of(setCommonProperties(builder, batchMeasure).create(batchMeasure.getStringValue())); | |||
} | |||
private static Optional<Measure> toLevelMeasure(Measure.Builder builder, BatchReport.Measure batchMeasure) { | |||
private static Optional<Measure> toLevelMeasure(Measure.NewMeasureBuilder builder, BatchReport.Measure batchMeasure) { | |||
if (!batchMeasure.hasStringValue()) { | |||
return toMeasure(builder.createNoValue(), batchMeasure); | |||
return toNoValueMeasure(builder, batchMeasure); | |||
} | |||
Optional<Measure.Level> level = Measure.Level.toLevel(batchMeasure.getStringValue()); | |||
if (!level.isPresent()) { | |||
return toMeasure(builder.createNoValue(), batchMeasure); | |||
return toNoValueMeasure(builder, batchMeasure); | |||
} | |||
return toMeasure(builder.create(level.get()), batchMeasure); | |||
return of(setCommonProperties(builder, batchMeasure).create(level.get())); | |||
} | |||
private static Optional<Measure> toNoValueMeasure(Measure.Builder builder, BatchReport.Measure batchMeasure) { | |||
return toMeasure(builder.createNoValue(), batchMeasure); | |||
private static Optional<Measure> toNoValueMeasure(Measure.NewMeasureBuilder builder, BatchReport.Measure batchMeasure) { | |||
return of(setCommonProperties(builder, batchMeasure).createNoValue()); | |||
} | |||
private static Optional<Measure> toMeasure(Measure measure, BatchReport.Measure batchMeasure) { | |||
if (batchMeasure.hasAlertStatus() && !measure.hasQualityGateStatus()) { | |||
private static Measure.NewMeasureBuilder setCommonProperties(Measure.NewMeasureBuilder builder, BatchReport.Measure batchMeasure) { | |||
if (batchMeasure.hasAlertStatus()) { | |||
Optional<Measure.Level> qualityGateStatus = Measure.Level.toLevel(batchMeasure.getAlertStatus()); | |||
if (qualityGateStatus.isPresent()) { | |||
String text = batchMeasure.hasAlertText() ? batchMeasure.getAlertText() : null; | |||
measure.setQualityGateStatus(new QualityGateStatus(qualityGateStatus.get(), text)); | |||
builder.setQualityGateStatus(new QualityGateStatus(qualityGateStatus.get(), text)); | |||
} | |||
} | |||
if (hasAnyVariation(batchMeasure)) { | |||
measure.setVariations(createVariations(batchMeasure)); | |||
builder.setVariations(createVariations(batchMeasure)); | |||
} | |||
return Optional.of((Measure) measure); | |||
return builder; | |||
} | |||
private static boolean hasAnyVariation(BatchReport.Measure batchMeasure) { |
@@ -76,13 +76,13 @@ public final class Measure { | |||
@CheckForNull | |||
private final String description; | |||
@CheckForNull | |||
private QualityGateStatus qualityGateStatus; | |||
private final QualityGateStatus qualityGateStatus; | |||
@CheckForNull | |||
private MeasureVariations variations; | |||
private final MeasureVariations variations; | |||
private Measure(ValueType valueType, @Nullable Integer ruleId, @Nullable Integer characteristicId, | |||
@Nullable Double value, @Nullable String data, @Nullable Level dataLevel, | |||
@Nullable String description) { | |||
@Nullable String description, @Nullable QualityGateStatus qualityGateStatus, @Nullable MeasureVariations variations) { | |||
this.valueType = valueType; | |||
this.ruleId = ruleId; | |||
this.characteristicId = characteristicId; | |||
@@ -90,17 +90,26 @@ public final class Measure { | |||
this.data = data; | |||
this.dataLevel = dataLevel; | |||
this.description = description; | |||
this.qualityGateStatus = qualityGateStatus; | |||
this.variations = variations; | |||
} | |||
public static Builder builder() { | |||
return new Builder(); | |||
public static NewMeasureBuilder newMeasure() { | |||
return new NewMeasureBuilder(); | |||
} | |||
public static final class Builder { | |||
public static final String RULE_AND_CHARACTERISTIC_ERROR_MSG = "A measure can not be associated to both a Characteristic and a Rule"; | |||
public static UpdateMeasureBuilder updateMeasure(Measure measure) { | |||
return new UpdateMeasureBuilder(measure); | |||
} | |||
public static final class NewMeasureBuilder { | |||
private static final String RULE_AND_CHARACTERISTIC_ERROR_MSG = "A measure can not be associated to both a Characteristic and a Rule"; | |||
private Integer ruleId; | |||
private Integer characteristicId; | |||
private String description; | |||
private QualityGateStatus qualityGateStatus; | |||
private MeasureVariations variations; | |||
/** | |||
* Sets the rule this measure is associated to. | |||
@@ -109,7 +118,7 @@ public final class Measure { | |||
* | |||
* @see #forCharacteristic(int) | |||
*/ | |||
public Builder forRule(int ruleId) { | |||
public NewMeasureBuilder forRule(int ruleId) { | |||
if (characteristicId != null) { | |||
throw new UnsupportedOperationException(RULE_AND_CHARACTERISTIC_ERROR_MSG); | |||
} | |||
@@ -124,7 +133,7 @@ public final class Measure { | |||
* | |||
* @see #forCharacteristic(int) | |||
*/ | |||
public Builder forCharacteristic(int characteristicId) { | |||
public NewMeasureBuilder forCharacteristic(int characteristicId) { | |||
if (ruleId != null) { | |||
throw new UnsupportedOperationException(RULE_AND_CHARACTERISTIC_ERROR_MSG); | |||
} | |||
@@ -137,37 +146,93 @@ public final class Measure { | |||
* | |||
* @throws NullPointerException if the specified argument is {@code null} | |||
*/ | |||
public Builder withDescription(String description) { | |||
public NewMeasureBuilder setDescription(String description) { | |||
this.description = requireNonNull(description, "description can not be set to null"); | |||
return this; | |||
} | |||
public NewMeasureBuilder setQualityGateStatus(QualityGateStatus qualityGateStatus) { | |||
this.qualityGateStatus = requireNonNull(qualityGateStatus, "QualityGateStatus can not be set to null"); | |||
return this; | |||
} | |||
public NewMeasureBuilder setVariations(MeasureVariations variations) { | |||
this.variations = requireNonNull(variations, "Variations can not be set to null"); | |||
return this; | |||
} | |||
public Measure create(boolean value, @Nullable String data) { | |||
return new Measure(ValueType.BOOLEAN, ruleId, characteristicId, value ? 1.0d : 0.0d, data, null, description); | |||
return new Measure(ValueType.BOOLEAN, ruleId, characteristicId, value ? 1.0d : 0.0d, data, null, description, qualityGateStatus, variations); | |||
} | |||
public Measure create(int value, @Nullable String data) { | |||
return new Measure(ValueType.INT, ruleId, characteristicId, (double) value, data, null, description); | |||
return new Measure(ValueType.INT, ruleId, characteristicId, (double) value, data, null, description, qualityGateStatus, variations); | |||
} | |||
public Measure create(long value, @Nullable String data) { | |||
return new Measure(ValueType.LONG, ruleId, characteristicId, (double) value, data, null, description); | |||
return new Measure(ValueType.LONG, ruleId, characteristicId, (double) value, data, null, description, qualityGateStatus, variations); | |||
} | |||
public Measure create(double value, @Nullable String data) { | |||
return new Measure(ValueType.DOUBLE, ruleId, characteristicId, value, data, null, description); | |||
return new Measure(ValueType.DOUBLE, ruleId, characteristicId, value, data, null, description, qualityGateStatus, variations); | |||
} | |||
public Measure create(String value) { | |||
return new Measure(ValueType.STRING, ruleId, characteristicId, null, requireNonNull(value), null, description); | |||
return new Measure(ValueType.STRING, ruleId, characteristicId, null, requireNonNull(value), null, description, qualityGateStatus, variations); | |||
} | |||
public Measure create(Level level) { | |||
return new Measure(ValueType.LEVEL, ruleId, characteristicId, null, null, requireNonNull(level), description); | |||
return new Measure(ValueType.LEVEL, ruleId, characteristicId, null, null, requireNonNull(level), description, qualityGateStatus, variations); | |||
} | |||
public Measure createNoValue() { | |||
return new Measure(ValueType.NO_VALUE, ruleId, characteristicId, null, null, null, description); | |||
return new Measure(ValueType.NO_VALUE, ruleId, characteristicId, null, null, null, description, qualityGateStatus, variations); | |||
} | |||
} | |||
public static final class UpdateMeasureBuilder { | |||
private final Measure source; | |||
private QualityGateStatus qualityGateStatus; | |||
private MeasureVariations variations; | |||
public UpdateMeasureBuilder(Measure source) { | |||
this.source = requireNonNull(source, "Can not create a measure from null"); | |||
} | |||
/** | |||
* Sets the QualityGateStatus of the updated Measure to create. | |||
* | |||
* @throws NullPointerException if the specified {@link QualityGateStatus} is {@code null} | |||
* @throws UnsupportedOperationException if the source measure already has a {@link QualityGateStatus} | |||
*/ | |||
public UpdateMeasureBuilder setQualityGateStatus(QualityGateStatus qualityGateStatus) { | |||
if (source.qualityGateStatus != null) { | |||
throw new UnsupportedOperationException("QualityGate status can not be changed if already set on source Measure"); | |||
} | |||
this.qualityGateStatus = requireNonNull(qualityGateStatus, "QualityGateStatus can not be set to null"); | |||
return this; | |||
} | |||
/** | |||
* Sets the MeasureVariations of the updated Measure to create. | |||
* | |||
* @throws NullPointerException if the specified {@link MeasureVariations} is {@code null} | |||
* @throws UnsupportedOperationException if the source measure already has a {@link MeasureVariations} | |||
*/ | |||
public UpdateMeasureBuilder setVariations(MeasureVariations variations) { | |||
if (source.variations != null) { | |||
throw new UnsupportedOperationException("Variations can not be changed if already set on source Measure"); | |||
} | |||
this.variations = requireNonNull(variations, "Variations can not be set to null"); | |||
return this; | |||
} | |||
public Measure create() { | |||
return new Measure(source.valueType, source.ruleId, source.characteristicId, | |||
source.value, source.data, source.dataLevel, | |||
source.description, | |||
source.qualityGateStatus == null ? qualityGateStatus : source.qualityGateStatus, | |||
source.variations == null ? variations : source.variations); | |||
} | |||
} | |||
@@ -269,11 +334,6 @@ public final class Measure { | |||
} | |||
} | |||
public Measure setQualityGateStatus(QualityGateStatus qualityGateStatus) { | |||
this.qualityGateStatus = requireNonNull(qualityGateStatus, "Can not set a null QualityGate status"); | |||
return this; | |||
} | |||
/** | |||
* Any Measure, which ever is its value type, can have a QualityGate status. | |||
*/ | |||
@@ -292,17 +352,6 @@ public final class Measure { | |||
return this.qualityGateStatus; | |||
} | |||
/** | |||
* Sets the variations of this Measure. | |||
* | |||
* @throws NullPointerException if the specified argument is {@code null} | |||
* @throws IllegalStateException if the variations have already been set | |||
*/ | |||
public Measure setVariations(MeasureVariations variations) { | |||
this.variations = requireNonNull(variations, "Can not set null MeasureVariations"); | |||
return this; | |||
} | |||
/** | |||
* Any Measure, which ever is its value type, can have a Variations. | |||
*/ | |||
@@ -330,7 +379,7 @@ public final class Measure { | |||
/** | |||
* a Metric is equal to another Metric if it has the same ruleId/characteristicId paar (both being potentially | |||
* {@code null} but only one of them can be non {@code null}. | |||
* {@code null} but only one of them can be non {@code null}). | |||
*/ | |||
@Override | |||
public boolean equals(@Nullable Object o) { |
@@ -24,6 +24,7 @@ import javax.annotation.Nullable; | |||
import org.sonar.core.measure.db.MeasureDto; | |||
import org.sonar.server.computation.metric.Metric; | |||
import static com.google.common.base.Optional.of; | |||
import static com.google.common.base.Preconditions.checkArgument; | |||
import static java.util.Objects.requireNonNull; | |||
import static org.sonar.server.computation.measure.Measure.Level.toLevel; | |||
@@ -62,66 +63,66 @@ public class MeasureDtoToMeasure { | |||
private static Optional<Measure> toIntegerMeasure(MeasureDto measureDto, @Nullable Double value, String data) { | |||
if (value == null) { | |||
return toMeasure(Measure.builder().createNoValue(), measureDto); | |||
return toNoValueMeasure(measureDto); | |||
} | |||
return toMeasure(Measure.builder().create(value.intValue(), data), measureDto); | |||
return of(setCommonProperties(Measure.newMeasure(), measureDto).create(value.intValue(), data)); | |||
} | |||
private static Optional<Measure> toLongMeasure(MeasureDto measureDto, @Nullable Double value, String data) { | |||
if (value == null) { | |||
return toMeasure(Measure.builder().createNoValue(), measureDto); | |||
return toNoValueMeasure(measureDto); | |||
} | |||
return toMeasure(Measure.builder().create(value.longValue(), data), measureDto); | |||
return of(setCommonProperties(Measure.newMeasure(), measureDto).create(value.longValue(), data)); | |||
} | |||
private static Optional<Measure> toDoubleMeasure(MeasureDto measureDto, @Nullable Double value, String data) { | |||
if (value == null) { | |||
return toMeasure(Measure.builder().createNoValue(), measureDto); | |||
return toNoValueMeasure(measureDto); | |||
} | |||
return toMeasure(Measure.builder().create(value.doubleValue(), data), measureDto); | |||
return of(setCommonProperties(Measure.newMeasure(), measureDto).create(value.doubleValue(), data)); | |||
} | |||
private static Optional<Measure> toBooleanMeasure(MeasureDto measureDto, @Nullable Double value, String data) { | |||
if (value == null) { | |||
return toMeasure(Measure.builder().createNoValue(), measureDto); | |||
return toNoValueMeasure(measureDto); | |||
} | |||
return toMeasure(Measure.builder().create(value == 1.0d, data), measureDto); | |||
return of(setCommonProperties(Measure.newMeasure(), measureDto).create(value == 1.0d, data)); | |||
} | |||
private static Optional<Measure> toStringMeasure(MeasureDto measureDto, @Nullable String data) { | |||
if (data == null) { | |||
return toMeasure(Measure.builder().createNoValue(), measureDto); | |||
return toNoValueMeasure(measureDto); | |||
} | |||
return toMeasure(Measure.builder().create(data), measureDto); | |||
return of(setCommonProperties(Measure.newMeasure(), measureDto).create(data)); | |||
} | |||
private static Optional<Measure> toLevelMeasure(MeasureDto measureDto, @Nullable String data) { | |||
if (data == null) { | |||
return toMeasure(Measure.builder().createNoValue(), measureDto); | |||
return toNoValueMeasure(measureDto); | |||
} | |||
Optional<Measure.Level> level = toLevel(data); | |||
if (!level.isPresent()) { | |||
return toMeasure(Measure.builder().createNoValue(), measureDto); | |||
return toNoValueMeasure(measureDto); | |||
} | |||
return toMeasure(Measure.builder().create(level.get()), measureDto); | |||
return of(setCommonProperties(Measure.newMeasure(), measureDto).create(level.get())); | |||
} | |||
private static Optional<Measure> toNoValueMeasure(MeasureDto measureDto) { | |||
return toMeasure(Measure.builder().createNoValue(), measureDto); | |||
return of(setCommonProperties(Measure.newMeasure(), measureDto).createNoValue()); | |||
} | |||
private static Optional<Measure> toMeasure(Measure measure, MeasureDto measureDto) { | |||
if (measureDto.getAlertStatus() != null && !measure.hasQualityGateStatus()) { | |||
private static Measure.NewMeasureBuilder setCommonProperties(Measure.NewMeasureBuilder builder, MeasureDto measureDto) { | |||
if (measureDto.getAlertStatus() != null) { | |||
Optional<Measure.Level> qualityGateStatus = toLevel(measureDto.getAlertStatus()); | |||
if (qualityGateStatus.isPresent()) { | |||
measure.setQualityGateStatus(new QualityGateStatus(qualityGateStatus.get(), measureDto.getAlertText())); | |||
builder.setQualityGateStatus(new QualityGateStatus(qualityGateStatus.get(), measureDto.getAlertText())); | |||
} | |||
} | |||
if (hasAnyVariation(measureDto)) { | |||
measure.setVariations(createVariations(measureDto)); | |||
builder.setVariations(createVariations(measureDto)); | |||
} | |||
return Optional.of((Measure) measure); | |||
return builder; | |||
} | |||
private static boolean hasAnyVariation(MeasureDto measureDto) { |
@@ -74,7 +74,7 @@ public class MeasureRepositoryImplTest { | |||
private static final long LAST_SNAPSHOT_ID = 123; | |||
private static final long OTHER_SNAPSHOT_ID = 369; | |||
private static final long COMPONENT_ID = 567; | |||
private static final Measure SOME_MEASURE = Measure.builder().create(Measure.Level.OK); | |||
private static final Measure SOME_MEASURE = Measure.newMeasure().create(Measure.Level.OK); | |||
private static final String SOME_DATA = "some data"; | |||
private static final RuleDto SOME_RULE = RuleDto.createFor(RuleKey.of("A", "1")).setId(963); | |||
private static final Characteristic SOME_CHARACTERISTIC = new Characteristic(741, "key"); | |||
@@ -267,10 +267,10 @@ public class MeasureRepositoryImplTest { | |||
@Test | |||
public void getRawMeasure_for_rule_returns_measure_for_specified_rule() { | |||
Measure measure = Measure.builder().forRule(SOME_RULE.getId()).createNoValue(); | |||
Measure measure = Measure.newMeasure().forRule(SOME_RULE.getId()).createNoValue(); | |||
underTest.add(FILE_COMPONENT, metric1, measure); | |||
underTest.add(FILE_COMPONENT, metric1, Measure.builder().forRule(222).createNoValue()); | |||
underTest.add(FILE_COMPONENT, metric1, Measure.newMeasure().forRule(222).createNoValue()); | |||
assertThat(underTest.getRawMeasure(FILE_COMPONENT, metric1, SOME_RULE).get()).isSameAs(measure); | |||
} | |||
@@ -297,10 +297,10 @@ public class MeasureRepositoryImplTest { | |||
@Test | |||
public void getRawMeasure_for_characteristic_returns_measure_for_specified_rule() { | |||
Measure measure = Measure.builder().forCharacteristic(SOME_CHARACTERISTIC.getId()).createNoValue(); | |||
Measure measure = Measure.newMeasure().forCharacteristic(SOME_CHARACTERISTIC.getId()).createNoValue(); | |||
underTest.add(FILE_COMPONENT, metric1, measure); | |||
underTest.add(FILE_COMPONENT, metric1, Measure.builder().forCharacteristic(333).createNoValue()); | |||
underTest.add(FILE_COMPONENT, metric1, Measure.newMeasure().forCharacteristic(333).createNoValue()); | |||
assertThat(underTest.getRawMeasure(FILE_COMPONENT, metric1, SOME_CHARACTERISTIC).get()).isSameAs(measure); | |||
} | |||
@@ -313,14 +313,14 @@ public class MeasureRepositoryImplTest { | |||
Measure addedMeasure = SOME_MEASURE; | |||
underTest.add(FILE_COMPONENT, metric1, addedMeasure); | |||
Measure addedMeasure2 = Measure.builder().forCharacteristic(SOME_CHARACTERISTIC.getId()).createNoValue(); | |||
Measure addedMeasure2 = Measure.newMeasure().forCharacteristic(SOME_CHARACTERISTIC.getId()).createNoValue(); | |||
underTest.add(FILE_COMPONENT, metric1, addedMeasure2); | |||
SetMultimap<String, Measure> rawMeasures = underTest.getRawMeasures(FILE_COMPONENT); | |||
assertThat(rawMeasures.keySet()).hasSize(2); | |||
assertThat(rawMeasures.get(METRIC_KEY_1)).containsOnly(addedMeasure, addedMeasure2); | |||
assertThat(rawMeasures.get(METRIC_KEY_2)).containsOnly(Measure.builder().create("some value")); | |||
assertThat(rawMeasures.get(METRIC_KEY_2)).containsOnly(Measure.newMeasure().create("some value")); | |||
} | |||
private static MeasureDto createMeasureDto(int metricId, long snapshotId) { |
@@ -36,19 +36,18 @@ import org.sonar.server.computation.measure.Measure.ValueType; | |||
import static com.google.common.collect.FluentIterable.from; | |||
import static org.assertj.core.api.Assertions.assertThat; | |||
import static org.sonar.server.computation.measure.Measure.builder; | |||
@RunWith(DataProviderRunner.class) | |||
public class MeasureTest { | |||
private static final Measure INT_MEASURE = builder().create((int) 1, null); | |||
private static final Measure LONG_MEASURE = builder().create(1l, null); | |||
private static final Measure DOUBLE_MEASURE = builder().create(1d, null); | |||
private static final Measure STRING_MEASURE = builder().create("some_sT ring"); | |||
private static final Measure TRUE_MEASURE = builder().create(true, null); | |||
private static final Measure FALSE_MEASURE = builder().create(false, null); | |||
private static final Measure LEVEL_MEASURE = builder().create(Measure.Level.OK); | |||
private static final Measure NO_VALUE_MEASURE = builder().createNoValue(); | |||
private static final Measure INT_MEASURE = Measure.newMeasure().create((int) 1, null); | |||
private static final Measure LONG_MEASURE = Measure.newMeasure().create(1l, null); | |||
private static final Measure DOUBLE_MEASURE = Measure.newMeasure().create(1d, null); | |||
private static final Measure STRING_MEASURE = Measure.newMeasure().create("some_sT ring"); | |||
private static final Measure TRUE_MEASURE = Measure.newMeasure().create(true, null); | |||
private static final Measure FALSE_MEASURE = Measure.newMeasure().create(false, null); | |||
private static final Measure LEVEL_MEASURE = Measure.newMeasure().create(Measure.Level.OK); | |||
private static final Measure NO_VALUE_MEASURE = Measure.newMeasure().createNoValue(); | |||
private static final List<Measure> MEASURES = ImmutableList.of( | |||
INT_MEASURE, LONG_MEASURE, DOUBLE_MEASURE, STRING_MEASURE, TRUE_MEASURE, FALSE_MEASURE, NO_VALUE_MEASURE, LEVEL_MEASURE | |||
@@ -110,7 +109,7 @@ public class MeasureTest { | |||
executionException.expect(UnsupportedOperationException.class); | |||
executionException.expectMessage("A measure can not be associated to both a Characteristic and a Rule"); | |||
builder().forCharacteristic(SOME_CHARACTERISTIC_ID).forRule(SOME_RULE_ID); | |||
Measure.newMeasure().forCharacteristic(SOME_CHARACTERISTIC_ID).forRule(SOME_RULE_ID); | |||
} | |||
@Test | |||
@@ -118,34 +117,34 @@ public class MeasureTest { | |||
executionException.expect(UnsupportedOperationException.class); | |||
executionException.expectMessage("A measure can not be associated to both a Characteristic and a Rule"); | |||
builder().forRule(SOME_RULE_ID).forCharacteristic(SOME_CHARACTERISTIC_ID); | |||
Measure.newMeasure().forRule(SOME_RULE_ID).forCharacteristic(SOME_CHARACTERISTIC_ID); | |||
} | |||
@Test | |||
public void getRuleId_returns_null_when_ruleKey_has_not_been_set() { | |||
assertThat(builder().createNoValue().getRuleId()).isNull(); | |||
assertThat(builder().forCharacteristic(SOME_CHARACTERISTIC_ID).createNoValue().getRuleId()).isNull(); | |||
assertThat(Measure.newMeasure().createNoValue().getRuleId()).isNull(); | |||
assertThat(Measure.newMeasure().forCharacteristic(SOME_CHARACTERISTIC_ID).createNoValue().getRuleId()).isNull(); | |||
} | |||
@Test | |||
public void getRuleId_returns_key_set_in_builder() { | |||
assertThat(builder().forRule(SOME_RULE_ID).createNoValue().getRuleId()).isEqualTo(SOME_RULE_ID); | |||
assertThat(Measure.newMeasure().forRule(SOME_RULE_ID).createNoValue().getRuleId()).isEqualTo(SOME_RULE_ID); | |||
} | |||
@Test | |||
public void getCharacteristicId_returns_null_when_ruleKey_has_not_been_set() { | |||
assertThat(builder().createNoValue().getCharacteristicId()).isNull(); | |||
assertThat(builder().forRule(SOME_RULE_ID).createNoValue().getCharacteristicId()).isNull(); | |||
assertThat(Measure.newMeasure().createNoValue().getCharacteristicId()).isNull(); | |||
assertThat(Measure.newMeasure().forRule(SOME_RULE_ID).createNoValue().getCharacteristicId()).isNull(); | |||
} | |||
@Test | |||
public void getCharacteristicId_returns_id_set_in_builder() { | |||
assertThat(builder().forCharacteristic(SOME_CHARACTERISTIC_ID).createNoValue().getCharacteristicId()).isEqualTo(SOME_CHARACTERISTIC_ID); | |||
assertThat(Measure.newMeasure().forCharacteristic(SOME_CHARACTERISTIC_ID).createNoValue().getCharacteristicId()).isEqualTo(SOME_CHARACTERISTIC_ID); | |||
} | |||
@Test(expected = NullPointerException.class) | |||
public void create_from_String_throws_NPE_if_arg_is_null() { | |||
builder().create((String) null); | |||
Measure.newMeasure().create((String) null); | |||
} | |||
@Test | |||
@@ -260,33 +259,79 @@ public class MeasureTest { | |||
} | |||
@Test | |||
public void getAlertStatus_returns_argument_from_setAlertStatus() { | |||
public void getAlertStatus_returns_argument_from_setQualityGateStatus() { | |||
QualityGateStatus someStatus = new QualityGateStatus(Measure.Level.OK); | |||
assertThat(builder().create(true, null).setQualityGateStatus(someStatus).getQualityGateStatus()).isEqualTo(someStatus); | |||
assertThat(builder().create(false, null).setQualityGateStatus(someStatus).getQualityGateStatus()).isEqualTo(someStatus); | |||
assertThat(builder().create((int) 1, null).setQualityGateStatus(someStatus).getQualityGateStatus()).isEqualTo(someStatus); | |||
assertThat(builder().create((long) 1, null).setQualityGateStatus(someStatus).getQualityGateStatus()).isEqualTo(someStatus); | |||
assertThat(builder().create((double) 1, null).setQualityGateStatus(someStatus).getQualityGateStatus()).isEqualTo(someStatus); | |||
assertThat(builder().create("str").setQualityGateStatus(someStatus).getQualityGateStatus()).isEqualTo(someStatus); | |||
assertThat(builder().create(Measure.Level.OK).setQualityGateStatus(someStatus).getQualityGateStatus()).isEqualTo(someStatus); | |||
assertThat(Measure.newMeasure().setQualityGateStatus(someStatus).create(true, null).getQualityGateStatus()).isEqualTo(someStatus); | |||
assertThat(Measure.newMeasure().setQualityGateStatus(someStatus).create(false, null).getQualityGateStatus()).isEqualTo(someStatus); | |||
assertThat(Measure.newMeasure().setQualityGateStatus(someStatus).create((int) 1, null).getQualityGateStatus()).isEqualTo(someStatus); | |||
assertThat(Measure.newMeasure().setQualityGateStatus(someStatus).create((long) 1, null).getQualityGateStatus()).isEqualTo(someStatus); | |||
assertThat(Measure.newMeasure().setQualityGateStatus(someStatus).create((double) 1, null).getQualityGateStatus()).isEqualTo(someStatus); | |||
assertThat(Measure.newMeasure().setQualityGateStatus(someStatus).create("str").getQualityGateStatus()).isEqualTo(someStatus); | |||
assertThat(Measure.newMeasure().setQualityGateStatus(someStatus).create(Measure.Level.OK).getQualityGateStatus()).isEqualTo(someStatus); | |||
} | |||
@Test(expected = NullPointerException.class) | |||
public void newMeasureBuilder_setQualityGateStatus_throws_NPE_if_arg_is_null() { | |||
Measure.newMeasure().setQualityGateStatus(null); | |||
} | |||
@Test(expected = NullPointerException.class) | |||
public void newMeasureBuilder_setVariations_throws_NPE_if_arg_is_null() { | |||
Measure.newMeasure().setVariations(null); | |||
} | |||
@Test(expected = NullPointerException.class) | |||
public void newMeasureBuilder_setDescription_throws_NPE_if_arg_is_null() { | |||
Measure.newMeasure().setDescription(null); | |||
} | |||
@Test(expected = NullPointerException.class) | |||
public void updateMeasureBuilder_setQualityGateStatus_throws_NPE_if_arg_is_null() { | |||
Measure.updateMeasure(Measure.newMeasure().createNoValue()).setQualityGateStatus(null); | |||
} | |||
@Test(expected = NullPointerException.class) | |||
public void updateMeasureBuilder_setVariations_throws_NPE_if_arg_is_null() { | |||
Measure.updateMeasure(Measure.newMeasure().createNoValue()).setVariations(null); | |||
} | |||
@Test(expected = UnsupportedOperationException.class) | |||
public void updateMeasureBuilder_setQualityGateStatus_throws_USO_if_measure_already_has_a_QualityGateStatus() { | |||
QualityGateStatus qualityGateStatus = new QualityGateStatus(Measure.Level.ERROR); | |||
Measure.updateMeasure(Measure.newMeasure().setQualityGateStatus(qualityGateStatus).createNoValue()).setQualityGateStatus(qualityGateStatus); | |||
} | |||
@Test(expected = UnsupportedOperationException.class) | |||
public void updateMeasureBuilder_setVariations_throws_USO_if_measure_already_has_Variations() { | |||
MeasureVariations variations = new MeasureVariations(1d); | |||
Measure.updateMeasure(Measure.newMeasure().setVariations(variations).createNoValue()).setVariations(variations); | |||
} | |||
@Test | |||
@UseDataProvider("all") | |||
public void setAlertStatus_throws_NPE_if_arg_is_null(Measure measure) { | |||
measure.setQualityGateStatus(null); | |||
public void updateMeasureBuilder_creates_Measure_with_same_immutable_properties(Measure measure) { | |||
Measure newMeasure = Measure.updateMeasure(measure).create(); | |||
assertThat(newMeasure.getValueType()).isEqualTo(measure.getValueType()); | |||
assertThat(newMeasure.getRuleId()).isEqualTo(measure.getRuleId()); | |||
assertThat(newMeasure.getCharacteristicId()).isEqualTo(measure.getCharacteristicId()); | |||
assertThat(newMeasure.getDescription()).isEqualTo(measure.getDescription()); | |||
assertThat(newMeasure.hasQualityGateStatus()).isEqualTo(measure.hasQualityGateStatus()); | |||
assertThat(newMeasure.hasVariations()).isEqualTo(measure.hasVariations()); | |||
} | |||
@Test | |||
public void getData_returns_argument_from_factory_method() { | |||
String someData = "lololool"; | |||
assertThat(builder().create(true, someData).getData()).isEqualTo(someData); | |||
assertThat(builder().create(false, someData).getData()).isEqualTo(someData); | |||
assertThat(builder().create((int) 1, someData).getData()).isEqualTo(someData); | |||
assertThat(builder().create((long) 1, someData).getData()).isEqualTo(someData); | |||
assertThat(builder().create((double) 1, someData).getData()).isEqualTo(someData); | |||
assertThat(Measure.newMeasure().create(true, someData).getData()).isEqualTo(someData); | |||
assertThat(Measure.newMeasure().create(false, someData).getData()).isEqualTo(someData); | |||
assertThat(Measure.newMeasure().create((int) 1, someData).getData()).isEqualTo(someData); | |||
assertThat(Measure.newMeasure().create((long) 1, someData).getData()).isEqualTo(someData); | |||
assertThat(Measure.newMeasure().create((double) 1, someData).getData()).isEqualTo(someData); | |||
} | |||
@Test |
@@ -54,18 +54,18 @@ public class MeasureToMeasureDtoTest { | |||
@Test(expected = NullPointerException.class) | |||
public void toMeasureDto_throws_NPE_if_Metric_arg_is_null() { | |||
underTest.toMeasureDto(Measure.builder().createNoValue(), null, SOME_COMPONENT_ID, SOME_SNAPSHOT_ID); | |||
underTest.toMeasureDto(Measure.newMeasure().createNoValue(), null, SOME_COMPONENT_ID, SOME_SNAPSHOT_ID); | |||
} | |||
@DataProvider | |||
public static Object[][] all_types_Measures() { | |||
return new Object[][] { | |||
{ Measure.builder().create(true, SOME_DATA), SOME_BOOLEAN_METRIC}, | |||
{ Measure.builder().create(1, SOME_DATA), SOME_INT_METRIC}, | |||
{ Measure.builder().create((long) 1, SOME_DATA), SOME_LONG_METRIC}, | |||
{ Measure.builder().create((double) 2, SOME_DATA), SOME_DOUBLE_METRIC}, | |||
{ Measure.builder().create(SOME_STRING), SOME_STRING_METRIC}, | |||
{ Measure.builder().create(Measure.Level.OK), SOME_LEVEL_METRIC} | |||
{ Measure.newMeasure().create(true, SOME_DATA), SOME_BOOLEAN_METRIC}, | |||
{ Measure.newMeasure().create(1, SOME_DATA), SOME_INT_METRIC}, | |||
{ Measure.newMeasure().create((long) 1, SOME_DATA), SOME_LONG_METRIC}, | |||
{ Measure.newMeasure().create((double) 2, SOME_DATA), SOME_DOUBLE_METRIC}, | |||
{ Measure.newMeasure().create(SOME_STRING), SOME_STRING_METRIC}, | |||
{ Measure.newMeasure().create(Measure.Level.OK), SOME_LEVEL_METRIC} | |||
}; | |||
} | |||
@@ -82,9 +82,8 @@ public class MeasureToMeasureDtoTest { | |||
} | |||
@Test | |||
@UseDataProvider("all_types_Measures") | |||
public void toMeasureDto_returns_Dto_with_variation_if_Measure_has_MeasureVariations(Measure measure, Metric metric) { | |||
MeasureDto measureDto = underTest.toMeasureDto(measure.setVariations(SOME_VARIATIONS), metric, SOME_COMPONENT_ID, SOME_SNAPSHOT_ID); | |||
public void toMeasureDto_returns_Dto_with_variation_if_Measure_has_MeasureVariations() { | |||
MeasureDto measureDto = underTest.toMeasureDto(Measure.newMeasure().setVariations(SOME_VARIATIONS).create(SOME_STRING), SOME_STRING_METRIC, SOME_COMPONENT_ID, SOME_SNAPSHOT_ID); | |||
assertThat(measureDto.getVariation(1)).isEqualTo(1d); | |||
assertThat(measureDto.getVariation(2)).isEqualTo(2d); | |||
@@ -103,10 +102,9 @@ public class MeasureToMeasureDtoTest { | |||
} | |||
@Test | |||
@UseDataProvider("all_types_Measures") | |||
public void toMeasureDto_returns_Dto_with_alertStatus_and_alertText_if_Measure_has_QualityGateStatus(Measure measure, Metric metric) { | |||
public void toMeasureDto_returns_Dto_with_alertStatus_and_alertText_if_Measure_has_QualityGateStatus() { | |||
String alertText = "some error"; | |||
MeasureDto measureDto = underTest.toMeasureDto(measure.setQualityGateStatus(new QualityGateStatus(Measure.Level.ERROR, alertText)), metric, SOME_COMPONENT_ID, SOME_SNAPSHOT_ID); | |||
MeasureDto measureDto = underTest.toMeasureDto(Measure.newMeasure().setQualityGateStatus(new QualityGateStatus(Measure.Level.ERROR, alertText)).create(SOME_STRING), SOME_STRING_METRIC, SOME_COMPONENT_ID, SOME_SNAPSHOT_ID); | |||
assertThat(measureDto.getAlertStatus()).isEqualTo(Measure.Level.ERROR.name()); | |||
assertThat(measureDto.getAlertText()).isEqualTo(alertText); | |||
@@ -120,7 +118,7 @@ public class MeasureToMeasureDtoTest { | |||
@Test | |||
public void toMeasureDto_sets_ruleId_if_set_in_Measure() { | |||
Measure measure = Measure.builder().forRule(42).createNoValue(); | |||
Measure measure = Measure.newMeasure().forRule(42).createNoValue(); | |||
assertThat(underTest.toMeasureDto(measure, SOME_BOOLEAN_METRIC, SOME_COMPONENT_ID, SOME_SNAPSHOT_ID).getRuleId()).isEqualTo(42); | |||
} | |||
@@ -133,7 +131,7 @@ public class MeasureToMeasureDtoTest { | |||
@Test | |||
public void toMeasureDto_sets_characteristicId_if_set_in_Measure() { | |||
Measure measure = Measure.builder().forCharacteristic(42).createNoValue(); | |||
Measure measure = Measure.newMeasure().forCharacteristic(42).createNoValue(); | |||
assertThat(underTest.toMeasureDto(measure, SOME_BOOLEAN_METRIC, SOME_COMPONENT_ID, SOME_SNAPSHOT_ID).getCharacteristicId()).isEqualTo(42); | |||
} | |||
@@ -157,12 +155,12 @@ public class MeasureToMeasureDtoTest { | |||
@Test | |||
public void toMeasureDto_maps_value_to_1_or_0_and_data_from_data_field_for_BOOLEAN_metric() { | |||
MeasureDto trueMeasureDto = underTest.toMeasureDto(Measure.builder().create(true, SOME_DATA), SOME_BOOLEAN_METRIC, SOME_COMPONENT_ID, SOME_SNAPSHOT_ID); | |||
MeasureDto trueMeasureDto = underTest.toMeasureDto(Measure.newMeasure().create(true, SOME_DATA), SOME_BOOLEAN_METRIC, SOME_COMPONENT_ID, SOME_SNAPSHOT_ID); | |||
assertThat(trueMeasureDto.getValue()).isEqualTo(1d); | |||
assertThat(trueMeasureDto.getData()).isEqualTo(SOME_DATA); | |||
MeasureDto falseMeasureDto = underTest.toMeasureDto(Measure.builder().create(false, SOME_DATA), SOME_BOOLEAN_METRIC, SOME_COMPONENT_ID, SOME_SNAPSHOT_ID); | |||
MeasureDto falseMeasureDto = underTest.toMeasureDto(Measure.newMeasure().create(false, SOME_DATA), SOME_BOOLEAN_METRIC, SOME_COMPONENT_ID, SOME_SNAPSHOT_ID); | |||
assertThat(falseMeasureDto.getValue()).isEqualTo(0d); | |||
assertThat(falseMeasureDto.getData()).isEqualTo(SOME_DATA); | |||
@@ -170,7 +168,7 @@ public class MeasureToMeasureDtoTest { | |||
@Test | |||
public void toMeasureDto_maps_value_and_data_from_data_field_for_INT_metric() { | |||
MeasureDto trueMeasureDto = underTest.toMeasureDto(Measure.builder().create(123, SOME_DATA), SOME_INT_METRIC, SOME_COMPONENT_ID, SOME_SNAPSHOT_ID); | |||
MeasureDto trueMeasureDto = underTest.toMeasureDto(Measure.newMeasure().create(123, SOME_DATA), SOME_INT_METRIC, SOME_COMPONENT_ID, SOME_SNAPSHOT_ID); | |||
assertThat(trueMeasureDto.getValue()).isEqualTo(123); | |||
assertThat(trueMeasureDto.getData()).isEqualTo(SOME_DATA); | |||
@@ -178,7 +176,7 @@ public class MeasureToMeasureDtoTest { | |||
@Test | |||
public void toMeasureDto_maps_value_and_data_from_data_field_for_LONG_metric() { | |||
MeasureDto trueMeasureDto = underTest.toMeasureDto(Measure.builder().create((long) 456, SOME_DATA), SOME_LONG_METRIC, SOME_COMPONENT_ID, SOME_SNAPSHOT_ID); | |||
MeasureDto trueMeasureDto = underTest.toMeasureDto(Measure.newMeasure().create((long) 456, SOME_DATA), SOME_LONG_METRIC, SOME_COMPONENT_ID, SOME_SNAPSHOT_ID); | |||
assertThat(trueMeasureDto.getValue()).isEqualTo(456); | |||
assertThat(trueMeasureDto.getData()).isEqualTo(SOME_DATA); | |||
@@ -186,7 +184,7 @@ public class MeasureToMeasureDtoTest { | |||
@Test | |||
public void toMeasureDto_maps_value_and_data_from_data_field_for_DOUBLE_metric() { | |||
MeasureDto trueMeasureDto = underTest.toMeasureDto(Measure.builder().create((double) 789, SOME_DATA), SOME_DOUBLE_METRIC, SOME_COMPONENT_ID, SOME_SNAPSHOT_ID); | |||
MeasureDto trueMeasureDto = underTest.toMeasureDto(Measure.newMeasure().create((double) 789, SOME_DATA), SOME_DOUBLE_METRIC, SOME_COMPONENT_ID, SOME_SNAPSHOT_ID); | |||
assertThat(trueMeasureDto.getValue()).isEqualTo(789); | |||
assertThat(trueMeasureDto.getData()).isEqualTo(SOME_DATA); | |||
@@ -194,7 +192,7 @@ public class MeasureToMeasureDtoTest { | |||
@Test | |||
public void toMeasureDto_maps_to_only_data_for_STRING_metric() { | |||
MeasureDto trueMeasureDto = underTest.toMeasureDto(Measure.builder().create(SOME_STRING), SOME_STRING_METRIC, SOME_COMPONENT_ID, SOME_SNAPSHOT_ID); | |||
MeasureDto trueMeasureDto = underTest.toMeasureDto(Measure.newMeasure().create(SOME_STRING), SOME_STRING_METRIC, SOME_COMPONENT_ID, SOME_SNAPSHOT_ID); | |||
assertThat(trueMeasureDto.getValue()).isNull(); | |||
assertThat(trueMeasureDto.getData()).isEqualTo(SOME_STRING); | |||
@@ -202,7 +200,7 @@ public class MeasureToMeasureDtoTest { | |||
@Test | |||
public void toMeasureDto_maps_name_of_Level_to_data_and_has_no_value_for_LEVEL_metric() { | |||
MeasureDto trueMeasureDto = underTest.toMeasureDto(Measure.builder().create(Measure.Level.OK), SOME_LEVEL_METRIC, SOME_COMPONENT_ID, SOME_SNAPSHOT_ID); | |||
MeasureDto trueMeasureDto = underTest.toMeasureDto(Measure.newMeasure().create(Measure.Level.OK), SOME_LEVEL_METRIC, SOME_COMPONENT_ID, SOME_SNAPSHOT_ID); | |||
assertThat(trueMeasureDto.getValue()).isNull(); | |||
assertThat(trueMeasureDto.getData()).isEqualTo(Measure.Level.OK.name()); |
@@ -31,7 +31,6 @@ import org.sonar.server.computation.component.DumbComponent; | |||
import org.sonar.server.computation.event.Event; | |||
import org.sonar.server.computation.event.EventRepository; | |||
import org.sonar.server.computation.measure.Measure; | |||
import org.sonar.server.computation.measure.Measure; | |||
import org.sonar.server.computation.measure.MeasureRepository; | |||
import org.sonar.server.computation.measure.QualityGateStatus; | |||
import org.sonar.server.computation.metric.Metric; | |||
@@ -92,7 +91,7 @@ public class QualityGateEventsStepTest { | |||
@Test | |||
public void no_event_created_if_raw_ALERT_STATUS_measure_is_null() { | |||
when(measureRepository.getRawMeasure(PROJECT_COMPONENT, alertStatusMetric)).thenReturn(of(Measure.builder().createNoValue())); | |||
when(measureRepository.getRawMeasure(PROJECT_COMPONENT, alertStatusMetric)).thenReturn(of(Measure.newMeasure().createNoValue())); | |||
underTest.execute(); | |||
@@ -106,7 +105,7 @@ public class QualityGateEventsStepTest { | |||
@Test | |||
public void no_event_created_if_raw_ALERT_STATUS_measure_is_unsupported_value() { | |||
when(measureRepository.getRawMeasure(PROJECT_COMPONENT, alertStatusMetric)).thenReturn(of(Measure.builder().create(INVALID_ALERT_STATUS))); | |||
when(measureRepository.getRawMeasure(PROJECT_COMPONENT, alertStatusMetric)).thenReturn(of(Measure.newMeasure().create(INVALID_ALERT_STATUS))); | |||
underTest.execute(); | |||
@@ -118,8 +117,8 @@ public class QualityGateEventsStepTest { | |||
public void no_event_created_if_no_base_ALERT_STATUS_and_raw_is_OK() { | |||
QualityGateStatus someQGStatus = new QualityGateStatus(Measure.Level.OK); | |||
when(measureRepository.getRawMeasure(PROJECT_COMPONENT, alertStatusMetric)).thenReturn(of(Measure.builder().createNoValue().setQualityGateStatus(someQGStatus))); | |||
when(measureRepository.getBaseMeasure(PROJECT_COMPONENT, alertStatusMetric)).thenReturn(of(Measure.builder().createNoValue())); | |||
when(measureRepository.getRawMeasure(PROJECT_COMPONENT, alertStatusMetric)).thenReturn(of(Measure.newMeasure().setQualityGateStatus(someQGStatus).createNoValue())); | |||
when(measureRepository.getBaseMeasure(PROJECT_COMPONENT, alertStatusMetric)).thenReturn(of(Measure.newMeasure().createNoValue())); | |||
underTest.execute(); | |||
@@ -161,8 +160,8 @@ public class QualityGateEventsStepTest { | |||
private void verify_event_created_if_no_base_ALERT_STATUS_measure(Measure.Level rawAlterStatus, String expectedLabel) { | |||
QualityGateStatus someQGStatus = new QualityGateStatus(rawAlterStatus, ALERT_TEXT); | |||
when(measureRepository.getRawMeasure(PROJECT_COMPONENT, alertStatusMetric)).thenReturn(of(Measure.builder().createNoValue().setQualityGateStatus(someQGStatus))); | |||
when(measureRepository.getBaseMeasure(PROJECT_COMPONENT, alertStatusMetric)).thenReturn(of(Measure.builder().createNoValue())); | |||
when(measureRepository.getRawMeasure(PROJECT_COMPONENT, alertStatusMetric)).thenReturn(of(Measure.newMeasure().setQualityGateStatus(someQGStatus).createNoValue())); | |||
when(measureRepository.getBaseMeasure(PROJECT_COMPONENT, alertStatusMetric)).thenReturn(of(Measure.newMeasure().createNoValue())); | |||
underTest.execute(); | |||
@@ -189,8 +188,8 @@ public class QualityGateEventsStepTest { | |||
@Test | |||
public void no_event_created_if_base_ALERT_STATUS_measure_but_status_is_the_same() { | |||
when(measureRepository.getRawMeasure(PROJECT_COMPONENT, alertStatusMetric)).thenReturn(of(Measure.builder().createNoValue().setQualityGateStatus(OK_QUALITY_GATE_STATUS))); | |||
when(measureRepository.getBaseMeasure(PROJECT_COMPONENT, alertStatusMetric)).thenReturn(of(Measure.builder().createNoValue().setQualityGateStatus(OK_QUALITY_GATE_STATUS))); | |||
when(measureRepository.getRawMeasure(PROJECT_COMPONENT, alertStatusMetric)).thenReturn(of(Measure.newMeasure().setQualityGateStatus(OK_QUALITY_GATE_STATUS).createNoValue())); | |||
when(measureRepository.getBaseMeasure(PROJECT_COMPONENT, alertStatusMetric)).thenReturn(of(Measure.newMeasure().setQualityGateStatus(OK_QUALITY_GATE_STATUS).createNoValue())); | |||
underTest.execute(); | |||
@@ -211,9 +210,9 @@ public class QualityGateEventsStepTest { | |||
private void verify_event_created_if_base_ALERT_STATUS_measure_exists_and_status_has_changed(Measure.Level previousAlertStatus, | |||
QualityGateStatus newQualityGateStatus, String expectedLabel) { | |||
when(measureRepository.getRawMeasure(PROJECT_COMPONENT, alertStatusMetric)).thenReturn(of(Measure.builder().createNoValue().setQualityGateStatus(newQualityGateStatus))); | |||
when(measureRepository.getRawMeasure(PROJECT_COMPONENT, alertStatusMetric)).thenReturn(of(Measure.newMeasure().setQualityGateStatus(newQualityGateStatus).createNoValue())); | |||
when(measureRepository.getBaseMeasure(PROJECT_COMPONENT, alertStatusMetric)).thenReturn( | |||
of(Measure.builder().createNoValue().setQualityGateStatus(new QualityGateStatus(previousAlertStatus)))); | |||
of(Measure.newMeasure().setQualityGateStatus(new QualityGateStatus(previousAlertStatus)).createNoValue())); | |||
underTest.execute(); | |||
@@ -280,7 +280,7 @@ public class QualityProfileEventsStepTest { | |||
} | |||
private static Measure newMeasure(@Nullable QualityProfile... qps) { | |||
return Measure.builder().create(toJson(qps)); | |||
return Measure.newMeasure().create(toJson(qps)); | |||
} | |||
private static String toJson(@Nullable QualityProfile... qps) { |