コード例 #1
0
  public void testLazyIntegerWrite() throws Throwable {
    try {
      ByteStream.Output out = new ByteStream.Output();

      int[] tests = {
        0,
        -1,
        1,
        -10,
        10,
        -123,
        123,
        Integer.MIN_VALUE,
        Integer.MIN_VALUE + 1,
        Integer.MAX_VALUE,
        Integer.MAX_VALUE - 1
      };
      for (int v : tests) {
        out.reset();
        LazyInteger.writeUTF8(out, v);
        Text t = new Text();
        t.set(out.getData(), 0, out.getCount());
        assertEquals(String.valueOf(v), t.toString());
      }

    } catch (Throwable e) {
      e.printStackTrace();
      throw e;
    }
  }
コード例 #2
0
  /** Test the LazyInteger class. */
  public void testLazyInteger() throws Throwable {
    try {
      LazyInteger b =
          new LazyInteger(LazyPrimitiveObjectInspectorFactory.LAZY_INT_OBJECT_INSPECTOR);
      initLazyObject(b, new byte[] {'0'}, 0, 0);
      assertNull(b.getWritableObject());
      initLazyObject(b, new byte[] {'0'}, 0, 1);
      assertEquals(new IntWritable(0), b.getWritableObject());
      initLazyObject(b, new byte[] {'+', '0'}, 0, 2);
      assertEquals(new IntWritable(0), b.getWritableObject());
      initLazyObject(b, new byte[] {'-', '0'}, 0, 2);
      assertEquals(new IntWritable(0), b.getWritableObject());
      initLazyObject(b, new byte[] {'a', '1', 'b'}, 1, 1);
      assertEquals(new IntWritable(1), b.getWritableObject());
      initLazyObject(b, new byte[] {'a', '-', '1'}, 1, 2);
      assertEquals(new IntWritable(-1), b.getWritableObject());
      initLazyObject(b, new byte[] {'a', '+', '1'}, 1, 2);
      assertEquals(new IntWritable(1), b.getWritableObject());
      initLazyObject(b, new byte[] {'-', '1', '2', '8'}, 0, 4);
      assertEquals(new IntWritable(-128), b.getWritableObject());
      initLazyObject(b, new byte[] {'+', '1', '2', '7'}, 0, 4);
      assertEquals(new IntWritable(127), b.getWritableObject());
      initLazyObject(b, new byte[] {'-', '3', '2', '7', '6', '8'}, 0, 6);
      assertEquals(new IntWritable(-32768), b.getWritableObject());
      initLazyObject(b, new byte[] {'+', '3', '2', '7', '6', '7'}, 0, 6);
      assertEquals(new IntWritable(32767), b.getWritableObject());
      initLazyObject(b, new byte[] {'-', '2', '1', '4', '7', '4', '8', '3', '6', '4', '8'}, 0, 11);
      assertEquals(new IntWritable(-2147483648), b.getWritableObject());
      initLazyObject(b, new byte[] {'+', '2', '1', '4', '7', '4', '8', '3', '6', '4', '7'}, 0, 11);
      assertEquals(new IntWritable(2147483647), b.getWritableObject());

      initLazyObject(b, new byte[] {'a', '1', 'b'}, 1, 2);
      assertNull(b.getWritableObject());
      initLazyObject(b, new byte[] {'-', '2', '1', '4', '7', '4', '8', '3', '6', '4', '9'}, 0, 11);
      assertNull(b.getWritableObject());
      initLazyObject(b, new byte[] {'+', '2', '1', '4', '7', '4', '8', '3', '6', '4', '8'}, 0, 11);
      assertNull(b.getWritableObject());
      initLazyObject(b, new byte[] {'-', '1', '2', '3'}, 0, 1);
      assertNull(b.getWritableObject());
      initLazyObject(b, new byte[] {'+', '1', '2', '3'}, 0, 1);
      assertNull(b.getWritableObject());

    } catch (Throwable e) {
      e.printStackTrace();
      throw e;
    }
  }