Ejemplo n.º 1
0
 /** To show that it does not have any type specific code */
 private void pickTest(byte t, boolean[] inner) throws ExecException, IOException {
   Random r = new Random();
   switch (t) {
     case DataType.BAG:
       runTest(GenRandomData.genRandSmallTupDataBag(r, 10, 100), inner, DataType.BAG);
       break;
     case DataType.BOOLEAN:
       runTest(r.nextBoolean(), inner, DataType.BOOLEAN);
       break;
     case DataType.BYTEARRAY:
       runTest(GenRandomData.genRandDBA(r), inner, DataType.BYTEARRAY);
       break;
     case DataType.BIGCHARARRAY:
       {
         String s = GenRandomData.genRandString(r);
         for (; s.length() < 65535; ) {
           s += GenRandomData.genRandString(r);
         }
         runTest(s, inner, DataType.CHARARRAY);
         break;
       }
     case DataType.CHARARRAY:
       runTest(GenRandomData.genRandString(r), inner, DataType.CHARARRAY);
       break;
     case DataType.DOUBLE:
       runTest(r.nextDouble(), inner, DataType.DOUBLE);
       break;
     case DataType.FLOAT:
       runTest(r.nextFloat(), inner, DataType.FLOAT);
       break;
     case DataType.INTEGER:
       runTest(r.nextInt(), inner, DataType.INTEGER);
       break;
     case DataType.LONG:
       runTest(r.nextLong(), inner, DataType.LONG);
       break;
     case DataType.DATETIME:
       runTest(new DateTime(r.nextLong()), inner, DataType.DATETIME);
       break;
     case DataType.MAP:
     case DataType.INTERNALMAP:
     case DataType.BYTE:
       return; // map not key type
     case DataType.TUPLE:
       runTest(GenRandomData.genRandSmallBagTuple(r, 10, 100), inner, DataType.TUPLE);
       break;
     case DataType.BIGINTEGER:
       runTest(new BigInteger(256, r), inner, DataType.BIGINTEGER);
       break;
     case DataType.BIGDECIMAL:
       runTest(new BigDecimal(r.nextDouble()), inner, DataType.BIGDECIMAL);
       break;
     default:
       fail("No test case for type " + DataType.findTypeName(t));
   }
 }