private static void setValueAccordingToType(ScannerReport.Measure.Builder builder, DefaultMeasure<?> measure) { Serializable value = measure.value(); Metric<?> metric = measure.metric(); if (Boolean.class.equals(metric.valueType())) { builder.setBooleanValue(BoolValue.newBuilder().setValue(((Boolean) value).booleanValue())); } else if (Integer.class.equals(metric.valueType())) { builder.setIntValue(IntValue.newBuilder().setValue(((Number) value).intValue())); } else if (Double.class.equals(metric.valueType())) { builder.setDoubleValue(DoubleValue.newBuilder().setValue(((Number) value).doubleValue())); } else if (String.class.equals(metric.valueType())) { builder.setStringValue(StringValue.newBuilder().setValue((String) value)); } else if (Long.class.equals(metric.valueType())) { builder.setLongValue(LongValue.newBuilder().setValue(((Number) value).longValue())); } else { throw new UnsupportedOperationException("Unsupported type :" + metric.valueType()); } }
private static void setValueAccordingToType(ScannerReport.Measure.Builder builder, DefaultMeasure<?> measure) { Serializable value = measure.value(); Metric<?> metric = measure.metric(); if (Boolean.class.equals(metric.valueType())) { builder.setBooleanValue(BoolValue.newBuilder().setValue(((Boolean) value).booleanValue())); } else if (Integer.class.equals(metric.valueType())) { builder.setIntValue(IntValue.newBuilder().setValue(((Number) value).intValue())); } else if (Double.class.equals(metric.valueType())) { builder.setDoubleValue(DoubleValue.newBuilder().setValue(((Number) value).doubleValue())); } else if (String.class.equals(metric.valueType())) { builder.setStringValue(StringValue.newBuilder().setValue((String) value)); } else if (Long.class.equals(metric.valueType())) { builder.setLongValue(LongValue.newBuilder().setValue(((Number) value).longValue())); } else { throw new UnsupportedOperationException("Unsupported type :" + metric.valueType()); } }
private static Optional<Measure> toBooleanMeasure(Measure.NewMeasureBuilder builder, ScannerReport.Measure batchMeasure) { if (batchMeasure.getValueCase() == ValueCase.VALUE_NOT_SET) { return toNoValueMeasure(builder, batchMeasure); } return of(builder.create(batchMeasure.getBooleanValue().getValue(), trimToNull(batchMeasure.getBooleanValue().getData()))); }
@DataProvider public static Object[][] all_types_batch_measure_builders() { return new Object[][] { {ScannerReport.Measure.newBuilder().setBooleanValue(BoolValue.newBuilder().setValue(true)), SOME_BOOLEAN_METRIC}, {ScannerReport.Measure.newBuilder().setIntValue(IntValue.newBuilder().setValue(1)), SOME_INT_METRIC}, {ScannerReport.Measure.newBuilder().setLongValue(LongValue.newBuilder().setValue(1)), SOME_LONG_METRIC}, {ScannerReport.Measure.newBuilder().setDoubleValue(DoubleValue.newBuilder().setValue(1)), SOME_DOUBLE_METRIC}, {ScannerReport.Measure.newBuilder().setStringValue(StringValue.newBuilder().setValue("1")), SOME_STRING_METRIC}, {ScannerReport.Measure.newBuilder().setStringValue(StringValue.newBuilder().setValue(Measure.Level.OK.name())), SOME_LEVEL_METRIC} }; } }
private static Optional<Measure> toBooleanMeasure(Measure.NewMeasureBuilder builder, ScannerReport.Measure batchMeasure) { if (batchMeasure.getValueCase() == ValueCase.VALUE_NOT_SET) { return toNoValueMeasure(builder, batchMeasure); } return of(builder.create(batchMeasure.getBooleanValue().getValue(), trimToNull(batchMeasure.getBooleanValue().getData()))); }
private void verify_toMeasure_returns_false_value_if_dto_has_invalid_value_for_Boolean_metric(boolean expected) { Optional<Measure> measure = underTest.toMeasure(ScannerReport.Measure.newBuilder().setBooleanValue(BoolValue.newBuilder().setValue(expected)).build(), SOME_BOOLEAN_METRIC); assertThat(measure.isPresent()).isTrue(); assertThat(measure.get().getValueType()).isEqualTo(Measure.ValueType.BOOLEAN); assertThat(measure.get().getBooleanValue()).isEqualTo(expected); }
@Test public void toMeasure_maps_data_and_alert_properties_in_dto_for_Boolean_metric() { ScannerReport.Measure batchMeasure = ScannerReport.Measure.newBuilder() .setBooleanValue(BoolValue.newBuilder().setValue(true).setData(SOME_DATA)).build(); Optional<Measure> measure = underTest.toMeasure(batchMeasure, SOME_BOOLEAN_METRIC); assertThat(measure.isPresent()).isTrue(); assertThat(measure.get().getValueType()).isEqualTo(Measure.ValueType.BOOLEAN); assertThat(measure.get().getBooleanValue()).isTrue(); assertThat(measure.get().getData()).isEqualTo(SOME_DATA); }