Search in sources :

Example 1 with Order

use of org.apache.hadoop.hbase.util.Order in project hbase by apache.

the class TestTerminatedWrapper method testSkipNonSkippable.

@Test
public void testSkipNonSkippable() {
    PositionedByteRange buff = new SimplePositionedMutableByteRange(12);
    for (Order ord : new Order[] { Order.ASCENDING, Order.DESCENDING }) {
        for (byte[] term : TERMINATORS) {
            for (byte[] val : VALUES_BYTES) {
                buff.setPosition(0);
                DataType<byte[]> type = new TerminatedWrapper<>(new RawBytes(ord), term);
                int expected = type.encode(buff, val);
                buff.setPosition(0);
                assertEquals(expected, type.skip(buff));
                assertEquals(expected, buff.getPosition());
            }
        }
    }
}
Also used : Order(org.apache.hadoop.hbase.util.Order) SimplePositionedMutableByteRange(org.apache.hadoop.hbase.util.SimplePositionedMutableByteRange) PositionedByteRange(org.apache.hadoop.hbase.util.PositionedByteRange) Test(org.junit.Test)

Example 2 with Order

use of org.apache.hadoop.hbase.util.Order in project hbase by apache.

the class TestTerminatedWrapper method testReadWriteNonSkippable.

@Test
public void testReadWriteNonSkippable() {
    PositionedByteRange buff = new SimplePositionedMutableByteRange(12);
    for (Order ord : new Order[] { Order.ASCENDING, Order.DESCENDING }) {
        for (byte[] term : TERMINATORS) {
            for (byte[] val : VALUES_BYTES) {
                buff.setPosition(0);
                DataType<byte[]> type = new TerminatedWrapper<>(new RawBytes(ord), term);
                assertEquals(val.length + term.length, type.encode(buff, val));
                buff.setPosition(0);
                assertArrayEquals(val, type.decode(buff));
                assertEquals(val.length + term.length, buff.getPosition());
            }
        }
    }
}
Also used : Order(org.apache.hadoop.hbase.util.Order) SimplePositionedMutableByteRange(org.apache.hadoop.hbase.util.SimplePositionedMutableByteRange) PositionedByteRange(org.apache.hadoop.hbase.util.PositionedByteRange) Test(org.junit.Test)

Example 3 with Order

use of org.apache.hadoop.hbase.util.Order in project hbase by apache.

the class TestFixedLengthWrapper method testReadWrite.

@Test
public void testReadWrite() {
    for (int limit : limits) {
        PositionedByteRange buff = new SimplePositionedMutableByteRange(limit);
        for (Order ord : new Order[] { Order.ASCENDING, Order.DESCENDING }) {
            for (byte[] val : VALUES) {
                buff.setPosition(0);
                DataType<byte[]> type = new FixedLengthWrapper<>(new RawBytes(ord), limit);
                assertEquals(limit, type.encode(buff, val));
                buff.setPosition(0);
                byte[] actual = type.decode(buff);
                assertTrue("Decoding output differs from expected", Bytes.equals(val, 0, val.length, actual, 0, val.length));
                buff.setPosition(0);
                assertEquals(limit, type.skip(buff));
            }
        }
    }
}
Also used : Order(org.apache.hadoop.hbase.util.Order) SimplePositionedMutableByteRange(org.apache.hadoop.hbase.util.SimplePositionedMutableByteRange) PositionedByteRange(org.apache.hadoop.hbase.util.PositionedByteRange) Test(org.junit.Test)

Example 4 with Order

use of org.apache.hadoop.hbase.util.Order in project hbase by apache.

the class TestRawString method testReadWrite.

@Test
public void testReadWrite() {
    for (final Order ord : new Order[] { Order.ASCENDING, Order.DESCENDING }) {
        final RawString type = Order.ASCENDING == ord ? new RawString(Order.ASCENDING) : new RawString(Order.DESCENDING);
        for (final String val : VALUES) {
            final PositionedByteRange buff = new SimplePositionedMutableByteRange(Bytes.toBytes(val).length);
            assertEquals(buff.getLength(), type.encode(buff, val));
            final byte[] expected = Bytes.toBytes(val);
            ord.apply(expected);
            assertArrayEquals(expected, buff.getBytes());
            buff.setPosition(0);
            assertEquals(val, type.decode(buff));
            buff.setPosition(0);
            assertEquals(buff.getLength(), type.skip(buff));
            assertEquals(buff.getLength(), buff.getPosition());
        }
    }
}
Also used : Order(org.apache.hadoop.hbase.util.Order) SimplePositionedMutableByteRange(org.apache.hadoop.hbase.util.SimplePositionedMutableByteRange) PositionedByteRange(org.apache.hadoop.hbase.util.PositionedByteRange) Test(org.junit.Test)

Aggregations

Order (org.apache.hadoop.hbase.util.Order)4 PositionedByteRange (org.apache.hadoop.hbase.util.PositionedByteRange)4 SimplePositionedMutableByteRange (org.apache.hadoop.hbase.util.SimplePositionedMutableByteRange)4 Test (org.junit.Test)4