use of org.apache.phoenix.schema.types.PhoenixArray in project phoenix by apache.
the class PDataTypeForArraysTest method testForDateArray.
@Test
public void testForDateArray() {
Date[] dateArr = new Date[2];
dateArr[0] = new Date(System.currentTimeMillis());
dateArr[1] = new Date(System.currentTimeMillis() + System.currentTimeMillis());
PhoenixArray arr = PArrayDataType.instantiatePhoenixArray(PDate.INSTANCE, dateArr);
PDateArray.INSTANCE.toObject(arr, PDateArray.INSTANCE);
byte[] bytes = PDateArray.INSTANCE.toBytes(arr);
PhoenixArray resultArr = (PhoenixArray) PDateArray.INSTANCE.toObject(bytes, 0, bytes.length);
assertEquals(arr, resultArr);
}
use of org.apache.phoenix.schema.types.PhoenixArray in project phoenix by apache.
the class PDataTypeForArraysTest method testVarCharArrayWithNullValues1.
@Test
public void testVarCharArrayWithNullValues1() {
String[] strArr = new String[6];
strArr[0] = "abc";
strArr[1] = null;
strArr[2] = "bcd";
strArr[3] = null;
strArr[4] = null;
strArr[5] = "b";
PhoenixArray arr = PArrayDataType.instantiatePhoenixArray(PVarchar.INSTANCE, strArr);
byte[] bytes = PVarcharArray.INSTANCE.toBytes(arr);
PhoenixArray resultArr = (PhoenixArray) PVarcharArray.INSTANCE.toObject(bytes, 0, bytes.length);
assertEquals(arr, resultArr);
}
use of org.apache.phoenix.schema.types.PhoenixArray in project phoenix by apache.
the class PDataTypeForArraysTest method testVarCharArrayWithNullValues3.
@Test
public void testVarCharArrayWithNullValues3() {
String[] strArr = new String[6];
strArr[0] = "abc";
strArr[1] = null;
strArr[2] = null;
strArr[3] = null;
strArr[4] = null;
strArr[5] = null;
PhoenixArray arr = PArrayDataType.instantiatePhoenixArray(PVarchar.INSTANCE, strArr);
byte[] bytes = PVarcharArray.INSTANCE.toBytes(arr);
PhoenixArray resultArr = (PhoenixArray) PVarcharArray.INSTANCE.toObject(bytes, 0, bytes.length);
assertEquals(arr, resultArr);
}
use of org.apache.phoenix.schema.types.PhoenixArray in project phoenix by apache.
the class PDataTypeForArraysTest method testPositionSearchWithVarLengthArrayWithNullValueAtTheStart3.
@Test
public void testPositionSearchWithVarLengthArrayWithNullValueAtTheStart3() {
String[] strArr = new String[5];
strArr[0] = null;
strArr[1] = "ereref";
strArr[2] = "random";
strArr[3] = null;
strArr[4] = "ran";
PhoenixArray arr = PArrayDataType.instantiatePhoenixArray(PVarchar.INSTANCE, strArr);
byte[] bytes = PVarcharArray.INSTANCE.toBytes(arr);
ImmutableBytesWritable ptr = new ImmutableBytesWritable(bytes);
PArrayDataTypeDecoder.positionAtArrayElement(ptr, 4, PVarchar.INSTANCE, PVarchar.INSTANCE.getByteSize());
int offset = ptr.getOffset();
int length = ptr.getLength();
byte[] bs = ptr.get();
byte[] res = new byte[length];
System.arraycopy(bs, offset, res, 0, length);
assertEquals("ran", Bytes.toString(res));
}
use of org.apache.phoenix.schema.types.PhoenixArray in project phoenix by apache.
the class PDataTypeForArraysTest method testForVarCharArrayForEvenNumberWithIndex.
@Test
public void testForVarCharArrayForEvenNumberWithIndex() {
String[] strArr = new String[5];
strArr[0] = "abx";
strArr[1] = "ereref";
strArr[2] = "random";
strArr[3] = "random12";
strArr[4] = "ranzzz";
PhoenixArray arr = PArrayDataType.instantiatePhoenixArray(PVarchar.INSTANCE, strArr);
byte[] bytes = PVarcharArray.INSTANCE.toBytes(arr);
ImmutableBytesWritable ptr = new ImmutableBytesWritable(bytes);
PArrayDataTypeDecoder.positionAtArrayElement(ptr, 4, PVarchar.INSTANCE, PVarchar.INSTANCE.getByteSize());
int offset = ptr.getOffset();
int length = ptr.getLength();
byte[] bs = ptr.get();
byte[] res = new byte[length];
System.arraycopy(bs, offset, res, 0, length);
assertEquals("ranzzz", Bytes.toString(res));
}
Aggregations