EvalSingleData extends EvalData<EvalData> { @Override EvalData combine(EvalData data) { final EvalSingleData value = (EvalSingleData) data; return copyTo(EvalSingleData.class, instance -> instance.value = this.value + value.value); }  static EvalSingleData build(MeterSingleValue value, MeterProcessor processor); @Override EvalData multiply(double value); @Override EvalData multiply(EvalData data); @Override EvalData add(double value); @Override EvalData scale(Integer value); @Override EvalData add(EvalData data); @Override EvalData minus(double value); @Override EvalData minus(EvalData data); @Override EvalData divide(double value); @Override EvalData divide(EvalData data); @Override EvalData irate(String range); @Override EvalData rate(String range); @Override EvalData increase(String range);  }
@Test public void testCombine() { assertSingleOperation(EvalSingleData::combine, operateSingleData, 15d); }