p = add(create(BIG_DECIMAL_VAL_7), create(BIG_DECIMAL_VAL_7)); assertTrue(p.isBigDecimal()); assertEquals(BIG_DECIMAL_VAL_7.add(BIG_DECIMAL_VAL_7).compareTo(p.getBigDecimal()), 0); p = add(create(BIG_DECIMAL_VAL_7), create(DOUBLE_VAL_5)); assertTrue(p.isBigDecimal()); assertEquals(BIG_DECIMAL_VAL_7.add(BigDecimal.valueOf(DOUBLE_VAL_5)).compareTo(p.getBigDecimal()), 0); p = add(create(DOUBLE_VAL_5), create(BIG_DECIMAL_VAL_7)); assertTrue(p.isBigDecimal()); assertEquals((BigDecimal.valueOf(DOUBLE_VAL_5)).add(BIG_DECIMAL_VAL_7).compareTo(p.getBigDecimal()), 0); p = add(create(BIG_DECIMAL_VAL_7), create(FLOAT_VAL_4)); assertTrue(p.isBigDecimal()); assertEquals(BIG_DECIMAL_VAL_7.add(BigDecimal.valueOf(FLOAT_VAL_4)).compareTo(p.getBigDecimal()), 0); p = add(create(FLOAT_VAL_4), create(BIG_DECIMAL_VAL_7)); assertTrue(p.isBigDecimal()); assertEquals((BigDecimal.valueOf(FLOAT_VAL_4)).add(BIG_DECIMAL_VAL_7).compareTo(p.getBigDecimal()), 0); p = add(create(BIG_DECIMAL_VAL_7), create(LONG_VAL_3)); assertTrue(p.isBigDecimal()); assertEquals(BIG_DECIMAL_VAL_7.add(BigDecimal.valueOf(LONG_VAL_3)).compareTo(p.getBigDecimal()), 0); p = add(create(LONG_VAL_3), create(BIG_DECIMAL_VAL_7)); assertTrue(p.isBigDecimal()); assertEquals((BigDecimal.valueOf(LONG_VAL_3)).add(BIG_DECIMAL_VAL_7).compareTo(p.getBigDecimal()), 0); p = add(create(BIG_DECIMAL_VAL_7), create(INT_VAL_2)); assertTrue(p.isBigDecimal()); assertEquals(BIG_DECIMAL_VAL_7.add(BigDecimal.valueOf(INT_VAL_2)).compareTo(p.getBigDecimal()), 0); p = add(create(INT_VAL_2), create(BIG_DECIMAL_VAL_7));
p = add(create(DOUBLE_VAL_5), create(DOUBLE_VAL_5)); assertTrue(p.isDouble()); assertEquals(DOUBLE_VAL_5 + DOUBLE_VAL_5, p.getDouble(), 0); p = add(create(DOUBLE_VAL_5), create(FLOAT_VAL_4)); assertTrue(p.isDouble()); assertEquals(DOUBLE_VAL_5 + FLOAT_VAL_4, p.getDouble(), 0); p = add(create(FLOAT_VAL_4), create(DOUBLE_VAL_5)); assertTrue(p.isDouble()); assertEquals(FLOAT_VAL_4 + DOUBLE_VAL_5, p.getDouble(), 0); p = add(create(DOUBLE_VAL_5), create(LONG_VAL_3)); assertTrue(p.isDouble()); assertEquals(DOUBLE_VAL_5 + LONG_VAL_3, p.getDouble(), 0); p = add(create(LONG_VAL_3), create(DOUBLE_VAL_5)); assertTrue(p.isDouble()); assertEquals(LONG_VAL_3 + DOUBLE_VAL_5, p.getDouble(), 0); p = add(create(DOUBLE_VAL_5), create(INT_VAL_2)); assertTrue(p.isDouble()); assertEquals(DOUBLE_VAL_5 + INT_VAL_2, p.getDouble(), 0); p = add(create(INT_VAL_2), create(DOUBLE_VAL_5)); assertTrue(p.isDouble()); assertEquals(INT_VAL_2 + DOUBLE_VAL_5, p.getDouble(), 0); p = add(create(DOUBLE_VAL_5), create(SHORT_VAL_e)); assertTrue(p.isDouble()); assertEquals(DOUBLE_VAL_5 + SHORT_VAL_e, p.getDouble(), 0); p = add(create(SHORT_VAL_e), create(DOUBLE_VAL_5));
@Test public void testAddReturningFloat() { PropertyValue p; // float p = add(create(FLOAT_VAL_4), create(FLOAT_VAL_4)); assertTrue(p.isFloat()); assertEquals(FLOAT_VAL_4 + FLOAT_VAL_4, p.getFloat(), 0); // long p = add(create(FLOAT_VAL_4), create(LONG_VAL_3)); assertTrue(p.isFloat()); assertEquals(FLOAT_VAL_4 + LONG_VAL_3, p.getFloat(), 0); p = add(create(LONG_VAL_3), create(FLOAT_VAL_4)); assertTrue(p.isFloat()); assertEquals(LONG_VAL_3 + FLOAT_VAL_4, p.getFloat(), 0); // int p = add(create(FLOAT_VAL_4), create(INT_VAL_2)); assertTrue(p.isFloat()); assertEquals(FLOAT_VAL_4 + INT_VAL_2, p.getFloat(), 0); p = add(create(INT_VAL_2), create(FLOAT_VAL_4)); assertTrue(p.isFloat()); assertEquals(INT_VAL_2 + FLOAT_VAL_4, p.getFloat(), 0); // short p = add(create(FLOAT_VAL_4), create(SHORT_VAL_e)); assertTrue(p.isFloat()); assertEquals(FLOAT_VAL_4 + SHORT_VAL_e, p.getFloat(), 0); p = add(create(SHORT_VAL_e), create(FLOAT_VAL_4)); assertTrue(p.isFloat()); assertEquals(SHORT_VAL_e + FLOAT_VAL_4, p.getFloat(), 0); }
@Test public void testAddReturningLong() { PropertyValue p; // long p = add(create(LONG_VAL_3), create(LONG_VAL_3)); assertTrue(p.isLong()); assertEquals(LONG_VAL_3 + LONG_VAL_3, p.getLong(), 0); // int p = add(create(LONG_VAL_3), create(INT_VAL_2)); assertTrue(p.isLong()); assertEquals(LONG_VAL_3 + INT_VAL_2, p.getLong(), 0); p = add(create(INT_VAL_2), create(LONG_VAL_3)); assertTrue(p.isLong()); assertEquals(INT_VAL_2 + LONG_VAL_3, p.getLong(), 0); // short p = add(create(LONG_VAL_3), create(SHORT_VAL_e)); assertTrue(p.isLong()); assertEquals(LONG_VAL_3 + SHORT_VAL_e, p.getLong(), 0); p = add(create(SHORT_VAL_e), create(LONG_VAL_3)); assertTrue(p.isLong()); assertEquals(SHORT_VAL_e + LONG_VAL_3, p.getLong(), 0); }
@Test public void testAddReturningInteger() { PropertyValue p; // int p = add(create(INT_VAL_2), create(INT_VAL_2)); assertTrue(p.isInt()); assertEquals(INT_VAL_2 + INT_VAL_2, p.getInt(), 0); // short p = add(create(INT_VAL_2), create(SHORT_VAL_e)); assertTrue(p.isInt()); assertEquals(INT_VAL_2 + SHORT_VAL_e, p.getInt(), 0); p = add(create(SHORT_VAL_e), create(INT_VAL_2)); assertTrue(p.isInt()); assertEquals(SHORT_VAL_e + INT_VAL_2, p.getInt(), 0); p = add(create(SHORT_VAL_e), create(SHORT_VAL_e)); assertTrue(p.isInt()); assertEquals(SHORT_VAL_e + SHORT_VAL_e, p.getInt(), 0); }
@Override default PropertyValue aggregate(PropertyValue aggregate, PropertyValue increment) { return PropertyValueUtils.Numeric.add(aggregate, increment); } }
@Override default PropertyValue aggregate(PropertyValue aggregate, PropertyValue increment) { return PropertyValueUtils.Numeric.add(aggregate, increment); } }