@CheckForNull private static Double getDoubleValue(LiveMeasureDto measure, Metric metric) { Double value = measure.getValue(); if (BooleanUtils.isTrue(metric.isOptimizedBestValue()) && value == null) { value = metric.getBestValue(); } return value; } }
@Test public void shouldCreateMetricWithDefaultValues() { Metric metric = new Metric.Builder("foo", "Foo", Metric.ValueType.INT) .create(); assertThat(metric.getBestValue()).isNull(); assertThat(metric.getDescription()).isNull(); assertThat(metric.getWorstValue()).isNull(); assertThat(metric.getDirection()).isEqualTo(Metric.DIRECTION_NONE); assertThat(metric.getEnabled()).isTrue(); assertThat(metric.getId()).isNull(); assertThat(metric.getUserManaged()).isFalse(); assertThat(metric.isHidden()).isFalse(); assertThat(metric.isOptimizedBestValue()).isFalse(); }
@Test public void shouldCreatePercentMetricWithDefaultValues() { Metric better = new Metric.Builder("foo", "Foo", Metric.ValueType.PERCENT) .setDirection(Metric.DIRECTION_BETTER) .create(); Metric worst = new Metric.Builder("foo", "Foo", Metric.ValueType.PERCENT) .setDirection(Metric.DIRECTION_WORST) .create(); assertThat(better.getBestValue()).isEqualTo(100.0); assertThat(better.getWorstValue()).isEqualTo(0.0); assertThat(worst.getBestValue()).isEqualTo(0.0); assertThat(worst.getWorstValue()).isEqualTo(100.0); }
private static Metric from(int id, org.sonar.api.measures.Metric<?> coreMetric) { return new MetricImpl( id, coreMetric.getKey(), coreMetric.getName(), convert(coreMetric.getType()), coreMetric.getDecimalScale(), coreMetric.getBestValue(), coreMetric.isOptimizedBestValue()); }
@Override @Nonnull public MetricDto apply(@Nonnull Metric metric) { MetricDto dto = new MetricDto(); dto.setId(metric.getId()); dto.setKey(metric.getKey()); dto.setDescription(metric.getDescription()); dto.setShortName(metric.getName()); dto.setBestValue(metric.getBestValue()); dto.setDomain(metric.getDomain()); dto.setEnabled(metric.getEnabled()); dto.setDirection(metric.getDirection()); dto.setHidden(metric.isHidden()); dto.setQualitative(metric.getQualitative()); dto.setValueType(metric.getType().name()); dto.setOptimizedBestValue(metric.isOptimizedBestValue()); dto.setUserManaged(metric.getUserManaged()); dto.setWorstValue(metric.getWorstValue()); dto.setDeleteHistoricalData(metric.getDeleteHistoricalData()); dto.setDecimalScale(metric.getDecimalScale()); return dto; } }
@CheckForNull private static Double getDoubleValue(LiveMeasureDto measure, Metric metric) { Double value = measure.getValue(); if (BooleanUtils.isTrue(metric.isOptimizedBestValue()) && value == null) { value = metric.getBestValue(); } return value; } }
/** * @since 3.2 */ public boolean isBestValue() { Double bestValue = metric.getBestValue(); return metric.isOptimizedBestValue() == Boolean.TRUE && bestValue != null && (value == null || NumberUtils.compare(bestValue, value) == 0) && allNull(alertStatus, description, tendency, url, data) && isZeroVariation(variation1, variation2, variation3, variation4, variation5); }
public FakeGlobalRepositoriesLoader add(Metric metric) { Boolean optimizedBestValue = metric.isOptimizedBestValue(); ref.metrics().add(new org.sonar.batch.protocol.input.Metric(metricId, metric.key(), metric.getType().name(), metric.getDescription(), metric.getDirection(), metric.getName(), metric.getQualitative(), metric.getUserManaged(), metric.getWorstValue(), metric.getBestValue(), optimizedBestValue != null ? optimizedBestValue : false)); metricId++; return this; } }
@Override @Nonnull public MetricDto apply(@Nonnull Metric metric) { MetricDto dto = new MetricDto(); dto.setId(metric.getId()); dto.setKey(metric.getKey()); dto.setDescription(metric.getDescription()); dto.setShortName(metric.getName()); dto.setBestValue(metric.getBestValue()); dto.setDomain(metric.getDomain()); dto.setEnabled(metric.getEnabled()); dto.setDirection(metric.getDirection()); dto.setHidden(metric.isHidden()); dto.setQualitative(metric.getQualitative()); dto.setValueType(metric.getType().name()); dto.setOptimizedBestValue(metric.isOptimizedBestValue()); dto.setUserManaged(metric.getUserManaged()); dto.setWorstValue(metric.getWorstValue()); dto.setDeleteHistoricalData(metric.getDeleteHistoricalData()); dto.setDecimalScale(metric.getDecimalScale()); return dto; } }