View Javadoc

1   package net.obsearch.storage;
2   
3   import static org.junit.Assert.*;
4   
5   import net.obsearch.index.utils.ByteArrayComparator;
6   
7   import org.junit.Before;
8   import org.junit.Test;
9   
10  import com.sleepycat.bind.tuple.TupleOutput;
11  
12  public class TestByteArrayComparisons {
13  
14      @Before
15      public void setUp() throws Exception {
16      }
17      
18      @Test
19      public void testCase(){
20          ByteArrayComparator c = new ByteArrayComparator();
21          assertEquals(c.compare(createTuple(10000L,(short)2), createTuple(10000,(short)2)), 0);
22          assertEquals(c.compare(createTuple(10000L,(short)2), createTuple(10001,(short)2)), -1);
23          assertEquals(c.compare(createTuple(10001L,(short)2), createTuple(-10000,(short)2)), 1);
24          assertEquals(c.compare(createTuple(10000L,(short)2), createTuple(10000,(short)3)), -1);        
25          assertEquals(c.compare(createTuple(10000L,(short)3), createTuple(10000,(short)2)), 1);
26          
27          assertEquals(c.compare(createTuple2(10000.1,2.35f), createTuple2(10000.1,2.35f)), 0);
28          assertEquals(c.compare(createTuple2(0.35,2.35f), createTuple2(10000.1,2.35f)), -1);
29          assertEquals(c.compare(createTuple2(10000.1,2.35f), createTuple2(-0.35,2.35f)), 1);
30          assertEquals(c.compare(createTuple2(10000.1,-2.34f), createTuple2(10000.1,2.35f)), -1);
31          assertEquals(c.compare(createTuple2(10000.1,213323.56f), createTuple2(10000.1,-2.35f)), 1);
32      }
33      
34      
35  
36      public byte[] createTuple(long a, short dist){
37          TupleOutput out = new TupleOutput();
38          out.writeLong(a);
39          out.writeShort(dist);
40          
41          return out.getBufferBytes();
42      }
43      
44      public byte[] createTuple2(double a, float dist){
45          TupleOutput out = new TupleOutput();
46          out.writeSortedDouble(a);
47          out.writeSortedFloat(dist);
48          return out.getBufferBytes();
49      }
50  }