1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 package org.apache.hadoop.hbase.types;
19
20 import static org.junit.Assert.assertEquals;
21
22 import org.apache.hadoop.hbase.testclassification.SmallTests;
23 import org.apache.hadoop.hbase.util.Bytes;
24 import org.apache.hadoop.hbase.util.PositionedByteRange;
25 import org.apache.hadoop.hbase.util.SimplePositionedByteRange;
26 import org.junit.Test;
27 import org.junit.experimental.categories.Category;
28
29 @Category(SmallTests.class)
30 public class TestOrderedBlobVar {
31
32 static final byte[][] VALUES = new byte[][] {
33 null, Bytes.toBytes(""), Bytes.toBytes("1"), Bytes.toBytes("22"), Bytes.toBytes("333"),
34 Bytes.toBytes("4444"), Bytes.toBytes("55555"), Bytes.toBytes("666666"),
35 Bytes.toBytes("7777777"), Bytes.toBytes("88888888"), Bytes.toBytes("999999999"),
36 };
37
38 @Test
39 public void testEncodedLength() {
40 PositionedByteRange buff = new SimplePositionedByteRange(20);
41 for (DataType<byte[]> type :
42 new OrderedBlobVar[] { OrderedBlobVar.ASCENDING, OrderedBlobVar.DESCENDING }) {
43 for (byte[] val : VALUES) {
44 buff.setPosition(0);
45 type.encode(buff, val);
46 assertEquals(
47 "encodedLength does not match actual, " + Bytes.toStringBinary(val),
48 buff.getPosition(), type.encodedLength(val));
49 }
50 }
51 }
52 }