@Test public void testArrayPrependFunction11() throws Exception { Object[] o = new Object[]{BigDecimal.valueOf(2345), BigDecimal.valueOf(-23.45), BigDecimal.valueOf(785)}; Object[] o2 = new Object[]{BigDecimal.valueOf(-19), BigDecimal.valueOf(2345), BigDecimal.valueOf(-23.45), BigDecimal.valueOf(785)}; Object element = BigDecimal.valueOf(-19); PDataType baseType = PDecimal.INSTANCE; PhoenixArray arr = new PhoenixArray(baseType, o); PhoenixArray expected = new PhoenixArray(baseType, o2); test(arr, element, PDataType.fromTypeId(baseType.getSqlType() + PDataType.ARRAY_TYPE_BASE), null, null, baseType, null, null, expected, SortOrder.ASC, SortOrder.ASC); }
private static void test(PhoenixArray array, Object element, PDataType arrayDataType, Integer arrMaxLen, Integer arrScale, PDataType elementDataType, Integer elemMaxLen, Integer elemScale, PhoenixArray expected, SortOrder arraySortOrder, SortOrder elementSortOrder) throws SQLException { LiteralExpression arrayLiteral, elementLiteral; arrayLiteral = LiteralExpression.newConstant(array, arrayDataType, arrMaxLen, arrScale, arraySortOrder, Determinism.ALWAYS); elementLiteral = LiteralExpression.newConstant(element, elementDataType, elemMaxLen, elemScale, elementSortOrder, Determinism.ALWAYS); testExpression(arrayLiteral, elementLiteral, expected); }
@Test public void testArrayPrependFunction6() throws Exception { Object[] o = new Object[]{new Float(2.3), new Float(7.9), new Float(-9.6), new Float(2.3)}; Object[] o2 = new Object[]{new Float(8.9), new Float(2.3), new Float(7.9), new Float(-9.6), new Float(2.3)}; Object element = 8.9; PDataType baseType = PFloat.INSTANCE; PhoenixArray arr = new PhoenixArray.PrimitiveFloatPhoenixArray(baseType, o); PhoenixArray expected = new PhoenixArray.PrimitiveFloatPhoenixArray(baseType, o2); test(arr, element, PDataType.fromTypeId(baseType.getSqlType() + PDataType.ARRAY_TYPE_BASE), null, null, baseType, null, null, expected, SortOrder.ASC, SortOrder.ASC); }
@Test public void testArrayPrependFunction13() throws Exception { Calendar calendar = Calendar.getInstance(); java.util.Date currentDate = calendar.getTime(); java.sql.Time time = new java.sql.Time(currentDate.getTime()); Object[] o = new Object[]{time, time, time}; Object[] o2 = new Object[]{time, time, time, time}; PDataType baseType = PTime.INSTANCE; PhoenixArray arr = new PhoenixArray(baseType, o); PhoenixArray expected = new PhoenixArray(baseType, o2); test(arr, time, PDataType.fromTypeId(baseType.getSqlType() + PDataType.ARRAY_TYPE_BASE), null, null, baseType, null, null, expected, SortOrder.ASC, SortOrder.ASC); }
@Test public void testArrayPrependFunction14() throws Exception { Calendar calendar = Calendar.getInstance(); java.util.Date currentDate = calendar.getTime(); java.sql.Timestamp timestamp = new java.sql.Timestamp(currentDate.getTime()); Object[] o = new Object[]{timestamp, timestamp, timestamp}; Object[] o2 = new Object[]{timestamp, timestamp, timestamp, timestamp}; PDataType baseType = PTimestamp.INSTANCE; PhoenixArray arr = new PhoenixArray(baseType, o); PhoenixArray expected = new PhoenixArray(baseType, o2); test(arr, timestamp, PDataType.fromTypeId(baseType.getSqlType() + PDataType.ARRAY_TYPE_BASE), null, null, baseType, null, null, expected, SortOrder.ASC, SortOrder.ASC); }
@Test public void testArrayPrependFunction12() throws Exception { Calendar calendar = Calendar.getInstance(); java.util.Date currentDate = calendar.getTime(); java.sql.Date date = new java.sql.Date(currentDate.getTime()); Object[] o = new Object[]{date, date, date}; Object[] o2 = new Object[]{date, date, date, date}; PDataType baseType = PDate.INSTANCE; PhoenixArray arr = new PhoenixArray(baseType, o); PhoenixArray expected = new PhoenixArray(baseType, o2); test(arr, date, PDataType.fromTypeId(baseType.getSqlType() + PDataType.ARRAY_TYPE_BASE), null, null, baseType, null, null, expected, SortOrder.ASC, SortOrder.ASC); }
@Test public void testForNullsAllNulls() throws Exception { Object element = null; PDataType baseType = PChar.INSTANCE; PhoenixArray arr = null; PhoenixArray expected = null; test(arr, element, PDataType.fromTypeId(baseType.getSqlType() + PDataType.ARRAY_TYPE_BASE), 4, null, baseType, 1, null, expected, SortOrder.ASC, SortOrder.DESC); }
@Test public void testArrayPrependFunction18() throws Exception { Object[] o = new Object[]{"1 ", "2 ", "3 ", "4 "}; Object[] o2 = new Object[]{"5", "1", "2", "3", "4"}; Object element = "5"; PDataType baseType = PChar.INSTANCE; PhoenixArray arr = new PhoenixArray(baseType, o); PhoenixArray expected = new PhoenixArray(baseType, o2); test(arr, element, PDataType.fromTypeId(baseType.getSqlType() + PDataType.ARRAY_TYPE_BASE), 4, null, baseType, 1, null, expected, SortOrder.ASC, SortOrder.DESC); }
@Test public void testForNullsWith2NullsAtBeginning() throws Exception { Object[] o = new Object[]{null, "1 ", "2 ", "3 ", "4 "}; Object[] o2 = new Object[]{null, null, "1 ", "2 ", "3 ", "4 "}; Object element = null; PDataType baseType = PVarchar.INSTANCE; PhoenixArray arr = new PhoenixArray(baseType, o); PhoenixArray expected = new PhoenixArray(baseType, o2); test(arr, element, PDataType.fromTypeId(baseType.getSqlType() + PDataType.ARRAY_TYPE_BASE), 4, null, baseType, 1, null, expected, SortOrder.ASC, SortOrder.DESC); }
@Test public void testArrayPrependFunction1() throws Exception { Object[] o = new Object[]{1, 2, -3, 4}; Object[] o2 = new Object[]{5, 1, 2, -3, 4}; Object element = 5; PDataType baseType = PInteger.INSTANCE; PhoenixArray arr = new PhoenixArray.PrimitiveIntPhoenixArray(baseType, o); PhoenixArray expected = new PhoenixArray.PrimitiveIntPhoenixArray(baseType, o2); test(arr, element, PDataType.fromTypeId(baseType.getSqlType() + PDataType.ARRAY_TYPE_BASE), null, null, baseType, null, null, expected, SortOrder.ASC, SortOrder.ASC); }
@Test public void testArrayPrependFunction15() throws Exception { Object[] o = new Object[]{1, 2, -3, 4}; Object[] o2 = new Object[]{5, 1, 2, -3, 4}; Object element = 5; PDataType baseType = PInteger.INSTANCE; PhoenixArray arr = new PhoenixArray.PrimitiveIntPhoenixArray(baseType, o); PhoenixArray expected = new PhoenixArray.PrimitiveIntPhoenixArray(baseType, o2); test(arr, element, PDataType.fromTypeId(baseType.getSqlType() + PDataType.ARRAY_TYPE_BASE), null, null, baseType, null, null, expected, SortOrder.DESC, SortOrder.ASC); }
@Test public void testForNullsWithNullsInMiddle() throws Exception { Object[] o = new Object[]{"1 ", "2 ", null, "3 ", "4 "}; Object[] o2 = new Object[]{null, "1 ", "2 ", null, "3 ", "4 "}; Object element = null; PDataType baseType = PVarchar.INSTANCE; PhoenixArray arr = new PhoenixArray(baseType, o); PhoenixArray expected = new PhoenixArray(baseType, o2); test(arr, element, PDataType.fromTypeId(baseType.getSqlType() + PDataType.ARRAY_TYPE_BASE), null, null, baseType, 1, null, expected, SortOrder.ASC, SortOrder.DESC); }
@Test public void testArrayPrependFunction7() throws Exception { Object[] o = new Object[]{4.78, 9.54, 2.34, -9.675, Double.MAX_VALUE}; Object[] o2 = new Object[]{12.67, 4.78, 9.54, 2.34, -9.675, Double.MAX_VALUE}; Object element = 12.67; PDataType baseType = PDouble.INSTANCE; PhoenixArray arr = new PhoenixArray.PrimitiveDoublePhoenixArray(baseType, o); PhoenixArray expected = new PhoenixArray.PrimitiveDoublePhoenixArray(baseType, o2); test(arr, element, PDataType.fromTypeId(baseType.getSqlType() + PDataType.ARRAY_TYPE_BASE), null, null, baseType, null, null, expected, SortOrder.ASC, SortOrder.ASC); }
@Test public void testArrayPrependFunction9() throws Exception { Object[] o = new Object[]{(short) 34, (short) -23, (short) -89, (short) 999, (short) 34}; Object[] o2 = new Object[]{(short) 7, (short) 34, (short) -23, (short) -89, (short) 999, (short) 34}; Object element = (short) 7; PDataType baseType = PSmallint.INSTANCE; PhoenixArray arr = new PhoenixArray.PrimitiveShortPhoenixArray(baseType, o); PhoenixArray expected = new PhoenixArray.PrimitiveShortPhoenixArray(baseType, o2); test(arr, element, PDataType.fromTypeId(baseType.getSqlType() + PDataType.ARRAY_TYPE_BASE), null, null, baseType, null, null, expected, SortOrder.ASC, SortOrder.ASC); }
@Test public void testArrayPrependFunction24() throws Exception { byte[][] o = new byte[][]{new byte[]{2, 0}, new byte[]{13, 3}, new byte[]{5, 3}, new byte[]{6, 3}, new byte[]{2, 5}}; byte[][] o2 = new byte[][]{new byte[]{5, 6}, new byte[]{2, 0}, new byte[]{13, 3}, new byte[]{5, 3}, new byte[]{6, 3}, new byte[]{2, 5}}; byte[] element = new byte[]{5, 6}; PDataType baseType = PBinary.INSTANCE; PhoenixArray arr = new PhoenixArray(baseType, o); PhoenixArray expected = new PhoenixArray(baseType, o2); test(arr, element, PDataType.fromTypeId(baseType.getSqlType() + PDataType.ARRAY_TYPE_BASE), 3, null, baseType, 1, null, expected, SortOrder.ASC, SortOrder.DESC); }
@Test public void testForNullsWith1NullAtBeginning() throws Exception { Object[] o = new Object[]{"1 ", "2 ", "3 ", "4 "}; Object[] o2 = new Object[]{null, "1 ", "2 ", "3 ", "4 "}; Object element = null; PDataType baseType = PVarchar.INSTANCE; PhoenixArray arr = new PhoenixArray(baseType, o); PhoenixArray expected = new PhoenixArray(baseType, o2); test(arr, element, PDataType.fromTypeId(baseType.getSqlType() + PDataType.ARRAY_TYPE_BASE), 4, null, baseType, 1, null, expected, SortOrder.ASC, SortOrder.DESC); }
@Test public void testArrayPrependFunction2() throws Exception { Object[] o = new Object[]{"1", "2", "3", "4"}; Object[] o2 = new Object[]{"56", "1", "2", "3", "4"}; Object element = "56"; PDataType baseType = PVarchar.INSTANCE; PhoenixArray arr = new PhoenixArray(baseType, o); PhoenixArray expected = new PhoenixArray(baseType, o2); test(arr, element, PDataType.fromTypeId(baseType.getSqlType() + PDataType.ARRAY_TYPE_BASE), null, null, baseType, null, null, expected, SortOrder.ASC, SortOrder.ASC); }
@Test public void testArrayPrependFunction8() throws Exception { Object[] o = new Object[]{123l, 677l, 98789l, -78989l, 66787l}; Object[] o2 = new Object[]{543l, 123l, 677l, 98789l, -78989l, 66787l}; Object element = 543l; PDataType baseType = PLong.INSTANCE; PhoenixArray arr = new PhoenixArray.PrimitiveLongPhoenixArray(baseType, o); PhoenixArray expected = new PhoenixArray.PrimitiveLongPhoenixArray(baseType, o2); test(arr, element, PDataType.fromTypeId(baseType.getSqlType() + PDataType.ARRAY_TYPE_BASE), null, null, baseType, null, null, expected, SortOrder.ASC, SortOrder.ASC); }
@Test public void testArrayPrependFunction10() throws Exception { Object[] o = new Object[]{(byte) 4, (byte) 8, (byte) 9}; Object[] o2 = new Object[]{(byte) 6, (byte) 4, (byte) 8, (byte) 9}; Object element = (byte) 6; PDataType baseType = PTinyint.INSTANCE; PhoenixArray arr = new PhoenixArray.PrimitiveBytePhoenixArray(baseType, o); PhoenixArray expected = new PhoenixArray.PrimitiveBytePhoenixArray(baseType, o2); test(arr, element, PDataType.fromTypeId(baseType.getSqlType() + PDataType.ARRAY_TYPE_BASE), null, null, baseType, null, null, expected, SortOrder.ASC, SortOrder.ASC); }
@Test public void testArrayPrependFunction17() throws Exception { Object[] o = new Object[]{1, 2, -3, 4}; Object[] o2 = new Object[]{5, 1, 2, -3, 4}; Object element = 5; PDataType baseType = PInteger.INSTANCE; PhoenixArray arr = new PhoenixArray.PrimitiveIntPhoenixArray(baseType, o); PhoenixArray expected = new PhoenixArray.PrimitiveIntPhoenixArray(baseType, o2); test(arr, element, PDataType.fromTypeId(baseType.getSqlType() + PDataType.ARRAY_TYPE_BASE), null, null, baseType, null, null, expected, SortOrder.ASC, SortOrder.DESC); }