use of org.apache.druid.segment.BaseFloatColumnValueSelector in project druid by druid-io.
the class VirtualColumnsTest method testMakeSelectors.
@Test
public void testMakeSelectors() {
final VirtualColumns virtualColumns = makeVirtualColumns();
final BaseObjectColumnValueSelector objectSelector = virtualColumns.makeColumnValueSelector("expr", null);
final DimensionSelector dimensionSelector = virtualColumns.makeDimensionSelector(new DefaultDimensionSpec("expr", "x"), null);
final DimensionSelector extractionDimensionSelector = virtualColumns.makeDimensionSelector(new ExtractionDimensionSpec("expr", "x", new BucketExtractionFn(1.0, 0.5)), null);
final BaseFloatColumnValueSelector floatSelector = virtualColumns.makeColumnValueSelector("expr", null);
final BaseLongColumnValueSelector longSelector = virtualColumns.makeColumnValueSelector("expr", null);
Assert.assertEquals(1L, objectSelector.getObject());
Assert.assertEquals("1", dimensionSelector.lookupName(dimensionSelector.getRow().get(0)));
Assert.assertEquals("0.5", extractionDimensionSelector.lookupName(extractionDimensionSelector.getRow().get(0)));
Assert.assertEquals(1.0f, floatSelector.getFloat(), 0.0f);
Assert.assertEquals(1L, longSelector.getLong());
}
use of org.apache.druid.segment.BaseFloatColumnValueSelector in project druid by druid-io.
the class VirtualColumnsTest method testMakeSelectorsWithDotSupport.
@Test
public void testMakeSelectorsWithDotSupport() {
final VirtualColumns virtualColumns = makeVirtualColumns();
final BaseObjectColumnValueSelector objectSelector = virtualColumns.makeColumnValueSelector("foo.5", null);
final DimensionSelector dimensionSelector = virtualColumns.makeDimensionSelector(new DefaultDimensionSpec("foo.5", "x"), null);
final BaseFloatColumnValueSelector floatSelector = virtualColumns.makeColumnValueSelector("foo.5", null);
final BaseLongColumnValueSelector longSelector = virtualColumns.makeColumnValueSelector("foo.5", null);
Assert.assertEquals(5L, objectSelector.getObject());
Assert.assertEquals("5", dimensionSelector.lookupName(dimensionSelector.getRow().get(0)));
Assert.assertEquals(5.0f, floatSelector.getFloat(), 0.0f);
Assert.assertEquals(5L, longSelector.getLong());
}
use of org.apache.druid.segment.BaseFloatColumnValueSelector in project druid by druid-io.
the class ExpressionVirtualColumnTest method testFloatSelector.
@Test
public void testFloatSelector() {
final BaseFloatColumnValueSelector selector = X_PLUS_Y.makeColumnValueSelector("expr", COLUMN_SELECTOR_FACTORY);
CURRENT_ROW.set(ROW0);
if (NullHandling.replaceWithDefault()) {
Assert.assertEquals(0.0f, selector.getFloat(), 0.0f);
} else {
Assert.assertTrue(selector.isNull());
}
CURRENT_ROW.set(ROW1);
if (NullHandling.replaceWithDefault()) {
Assert.assertEquals(4.0f, selector.getFloat(), 0.0f);
} else {
// y is null for row1
Assert.assertTrue(selector.isNull());
}
CURRENT_ROW.set(ROW2);
Assert.assertEquals(5.1f, selector.getFloat(), 0.0f);
CURRENT_ROW.set(ROW3);
Assert.assertEquals(5.0f, selector.getFloat(), 0.0f);
}
use of org.apache.druid.segment.BaseFloatColumnValueSelector in project druid by druid-io.
the class ExpressionVirtualColumnTest method testFloatSelectorWithConstantNullArithmetic.
@Test
public void testFloatSelectorWithConstantNullArithmetic() {
final BaseFloatColumnValueSelector selector = CONSTANT_NULL_ARITHMETIC.makeColumnValueSelector("expr", COLUMN_SELECTOR_FACTORY);
CURRENT_ROW.set(ROW0);
if (NullHandling.replaceWithDefault()) {
Assert.assertEquals(2.1f, selector.getFloat(), 0.0f);
Assert.assertFalse(selector.isNull());
} else {
Assert.assertTrue(selector.isNull());
}
}
use of org.apache.druid.segment.BaseFloatColumnValueSelector in project druid by druid-io.
the class VirtualColumnsTest method testMakeSelectorsWithDotSupportBaseNameOnly.
@Test
public void testMakeSelectorsWithDotSupportBaseNameOnly() {
final VirtualColumns virtualColumns = makeVirtualColumns();
final BaseObjectColumnValueSelector objectSelector = virtualColumns.makeColumnValueSelector("foo", null);
final DimensionSelector dimensionSelector = virtualColumns.makeDimensionSelector(new DefaultDimensionSpec("foo", "x"), null);
final BaseFloatColumnValueSelector floatSelector = virtualColumns.makeColumnValueSelector("foo", null);
final BaseLongColumnValueSelector longSelector = virtualColumns.makeColumnValueSelector("foo", null);
Assert.assertEquals(-1L, objectSelector.getObject());
Assert.assertEquals("-1", dimensionSelector.lookupName(dimensionSelector.getRow().get(0)));
Assert.assertEquals(-1.0f, floatSelector.getFloat(), 0.0f);
Assert.assertEquals(-1L, longSelector.getLong());
}
Aggregations