use of com.facebook.presto.operator.aggregation.InternalAggregationFunction in project presto by prestodb.
the class TestMinMaxByAggregation method testMaxUnknown.
@Test
public void testMaxUnknown() {
InternalAggregationFunction unknownKey = getMaxByAggregation(UNKNOWN, DOUBLE);
assertAggregation(unknownKey, null, createBooleansBlock(null, null), createDoublesBlock(1.0, 2.0));
InternalAggregationFunction unknownValue = getMaxByAggregation(DOUBLE, UNKNOWN);
assertAggregation(unknownValue, null, createDoublesBlock(1.0, 2.0), createBooleansBlock(null, null));
}
use of com.facebook.presto.operator.aggregation.InternalAggregationFunction in project presto by prestodb.
the class TestMinMaxByAggregation method testMaxLongArrayLong.
@Test
public void testMaxLongArrayLong() {
InternalAggregationFunction function = getMaxByAggregation(BIGINT, new ArrayType(BIGINT));
assertAggregation(function, 1L, createLongsBlock(1L, 2L, 2L, 3L), createArrayBigintBlock(ImmutableList.of(ImmutableList.of(8L, 9L), ImmutableList.of(1L, 2L), ImmutableList.of(6L, 7L), ImmutableList.of(1L, 1L))));
assertAggregation(function, 2L, createLongsBlock(0L, 1L, 2L, -1L), createArrayBigintBlock(ImmutableList.of(ImmutableList.of(-8L, 9L), ImmutableList.of(-6L, 7L), ImmutableList.of(-1L, -3L), ImmutableList.of(-1L))));
}
use of com.facebook.presto.operator.aggregation.InternalAggregationFunction in project presto by prestodb.
the class TestMinMaxByAggregation method testMinShortDecimalDecimal.
@Test
public void testMinShortDecimalDecimal() {
Type decimalType = createDecimalType(10, 1);
InternalAggregationFunction function = getMinByAggregation(decimalType, decimalType);
assertAggregation(function, SqlDecimal.of("2.2"), createShortDecimalsBlock("1.1", "2.2", "3.3"), createShortDecimalsBlock("1.2", "1.0", "2.0"));
}
use of com.facebook.presto.operator.aggregation.InternalAggregationFunction in project presto by prestodb.
the class TestMinMaxByAggregation method testMaxLongDecimalDecimal.
@Test
public void testMaxLongDecimalDecimal() {
Type decimalType = createDecimalType(19, 1);
InternalAggregationFunction function = getMaxByAggregation(decimalType, decimalType);
assertAggregation(function, SqlDecimal.of("3.3"), createLongDecimalsBlock("1.1", "2.2", "3.3", "4.4"), createLongDecimalsBlock("1.2", "1.0", "2.0", "1.5"));
}
use of com.facebook.presto.operator.aggregation.InternalAggregationFunction in project presto by prestodb.
the class TestMinMaxByAggregation method testMaxUnknownLongArray.
@Test
public void testMaxUnknownLongArray() {
InternalAggregationFunction function = getMaxByAggregation(new ArrayType(BIGINT), UNKNOWN);
assertAggregation(function, null, createArrayBigintBlock(asList(asList(3L, 3L), null, asList(1L, 2L))), createArrayBigintBlock(asList(null, null, null)));
}
Aggregations