@Override public double round(double value) { return Rounding.super.round(value); }
public void test_ofDecimalPlaces_big() { HalfUpRounding test = HalfUpRounding.ofDecimalPlaces(40); assertEquals(test.getDecimalPlaces(), 40); assertEquals(test.getFraction(), 0); assertEquals(test.toString(), "Round to 40dp"); assertEquals(Rounding.ofDecimalPlaces(40), test); }
public void test_ofFractionalDecimalPlaces() { HalfUpRounding test = HalfUpRounding.ofFractionalDecimalPlaces(4, 32); assertEquals(test.getDecimalPlaces(), 4); assertEquals(test.getFraction(), 32); assertEquals(test.toString(), "Round to 1/32 of 4dp"); assertEquals(Rounding.ofFractionalDecimalPlaces(4, 32), test); }
/** * Rounds the specified value according to the rules of the convention. * * @param value the value to be rounded * @return the rounded value */ public default double round(double value) { return round(BigDecimal.valueOf(value)).doubleValue(); }
public void test_ofDecimalPlaces() { HalfUpRounding test = HalfUpRounding.ofDecimalPlaces(4); assertEquals(test.getDecimalPlaces(), 4); assertEquals(test.getFraction(), 0); assertEquals(test.toString(), "Round to 4dp"); assertEquals(Rounding.ofDecimalPlaces(4), test); }
@ImmutableDefaults private static void applyDefaults(Builder builder) { builder.rounding(Rounding.none()); }
public void price() { // March double priceMar = PRODUCT_PRICER.price(FUTURE_PRODUCT_MAR, LED_PROVIDER) * HUNDRED; double priceMarRounded = FUTURE_PRODUCT_MAR.getRounding().round(priceMar); assertEquals(priceMar, 151.83071796298776, TOL * HUNDRED); assertEquals(priceMarRounded, 151.83, TOL * HUNDRED); // June double priceJun = PRODUCT_PRICER.price(FUTURE_PRODUCT_JUN, LED_PROVIDER) * HUNDRED; double priceJunRounded = FUTURE_PRODUCT_JUN.getRounding().round(priceJun); assertEquals(priceJun, 151.25027452317593, TOL * HUNDRED); assertEquals(priceJunRounded, 151.25, TOL * HUNDRED); // September double priceSep = PRODUCT_PRICER.price(FUTURE_PRODUCT_SEP, LED_PROVIDER) * HUNDRED; double priceSepRounded = FUTURE_PRODUCT_SEP.getRounding().round(priceSep); assertEquals(priceSep, 151.08452213883535, TOL * HUNDRED); assertEquals(priceSepRounded, 151.08, TOL * HUNDRED); }
@ImmutableDefaults private static void applyDefaults(Builder builder) { builder.rounding(Rounding.none()); }
public void price() { // March 2016 double priceMar = PRODUCT_PRICER.price(FUTURE_PRODUCT_MAR, RATES_PROVIDER) * HUNDRED; double priceMarRounded = FUTURE_PRODUCT_MAR.getRounding().round(priceMar); assertEquals(priceMar, 99.86104632448779, TOL * HUNDRED); assertEquals(priceMarRounded, 99.86, TOL * HUNDRED); // June 2016 double priceJun = PRODUCT_PRICER.price(FUTURE_PRODUCT_JUN, RATES_PROVIDER) * HUNDRED; double priceJunRounded = FUTURE_PRODUCT_JUN.getRounding().round(priceJun); assertEquals(priceJun, 99.98475152702353, TOL * HUNDRED); assertEquals(priceJunRounded, 99.985, TOL * HUNDRED); // September 2016 double priceSep = PRODUCT_PRICER.price(FUTURE_PRODUCT_SEP, RATES_PROVIDER) * HUNDRED; double priceSepRounded = FUTURE_PRODUCT_SEP.getRounding().round(priceSep); assertEquals(priceSep, 100.05224158750461, TOL * HUNDRED); assertEquals(priceSepRounded, 100.05, TOL * HUNDRED); // June 2017 double priceJunMid = PRODUCT_PRICER.price(FUTURE_PRODUCT_JUN_MID, RATES_PROVIDER) * HUNDRED; double priceJunMidRounded = FUTURE_PRODUCT_JUN_MID.getRounding().round(priceJunMid); assertEquals(priceJunMid, 100.18108895230915, TOL * HUNDRED); assertEquals(priceJunMidRounded, 100.18, TOL * HUNDRED); // March 2020 double priceMarLong = PRODUCT_PRICER.price(FUTURE_PRODUCT_MAR_LONG, RATES_PROVIDER) * HUNDRED; double priceMarLongRounded = FUTURE_PRODUCT_MAR_LONG.getRounding().round(priceMarLong); assertEquals(priceMarLong, 99.9582733152131, TOL * HUNDRED); assertEquals(priceMarLongRounded, 99.96, TOL * HUNDRED); }
@ImmutableDefaults private static void applyDefaults(Builder builder) { builder.rounding(Rounding.none()); }
@ImmutableDefaults private static void applyDefaults(Builder builder) { builder.rounding(Rounding.none()); }
@ImmutableDefaults private static void applyDefaults(Builder builder) { builder.rounding(Rounding.none()); }
@ImmutableDefaults private static void applyDefaults(Builder builder) { builder.rounding(Rounding.none()); }
@ImmutableDefaults private static void applyDefaults(Builder builder) { builder.rounding(Rounding.none()); }
@ImmutableDefaults private static void applyDefaults(Builder builder) { builder.rounding(Rounding.none()); }
@ImmutableDefaults private static void applyDefaults(Builder builder) { builder.rounding(Rounding.none()); }