View Javadoc
1   /*
2    *  Licensed to the Apache Software Foundation (ASF) under one
3    *  or more contributor license agreements.  See the NOTICE file
4    *  distributed with this work for additional information
5    *  regarding copyright ownership.  The ASF licenses this file
6    *  to you under the Apache License, Version 2.0 (the
7    *  "License"); you may not use this file except in compliance
8    *  with the License.  You may obtain a copy of the License at
9    *
10   *    http://www.apache.org/licenses/LICENSE-2.0
11   *
12   *  Unless required by applicable law or agreed to in writing,
13   *  software distributed under the License is distributed on an
14   *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15   *  KIND, either express or implied.  See the License for the
16   *  specific language governing permissions and limitations
17   *  under the License.
18   *
19   */
20  package org.apache.directory.mavibot.btree.comparator;
21  
22  
23  import static org.junit.Assert.assertEquals;
24  
25  import org.junit.Test;
26  
27  
28  /**
29   * Test the IntArrayComparator class
30   *
31   * @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
32   */
33  public class IntArrayComparatorTest
34  {
35      @Test
36      public void testIntArrayComparator()
37      {
38          IntArrayComparator comparator = IntArrayComparator.INSTANCE;
39  
40          // Check equality
41          assertEquals( 0, comparator.compare( null, null ) );
42          assertEquals( 0, comparator.compare( new int[]
43              {}, new int[]
44              {} ) );
45          assertEquals( 0, comparator.compare( new int[]
46              { 1, 2 }, new int[]
47              { 1, 2 } ) );
48  
49          // The first int[] is > the second
50          assertEquals( 1, comparator.compare( new int[]
51              {}, null ) );
52          assertEquals( 1, comparator.compare( new int[]
53              { 1 }, null ) );
54          assertEquals( 1, comparator.compare( new int[]
55              { 1, 2 }, new int[]
56              { 1, 1 } ) );
57          assertEquals( 1, comparator.compare( new int[]
58              { 1, 2, 1 }, new int[]
59              { 1, 2 } ) );
60          assertEquals( 1, comparator.compare( new int[]
61              { 1, 2 }, new int[]
62              { 1, 1, 2 } ) );
63  
64          // The first int[] is < the second
65          assertEquals( -1, comparator.compare( null, new int[]
66              {} ) );
67          assertEquals( -1, comparator.compare( null, new int[]
68              { 1, 2 } ) );
69          assertEquals( -1, comparator.compare( null, new int[]
70              { -1, 2 } ) );
71          assertEquals( -1, comparator.compare( new int[]
72              {}, new int[]
73              { 1, 2 } ) );
74          assertEquals( -1, comparator.compare( new int[]
75              {}, new int[]
76              { -1, 2 } ) );
77          assertEquals( -1, comparator.compare( new int[]
78              { -1, 1 }, new int[]
79              { 1, 1, 2 } ) );
80          int[] array = new int[3];
81          array[0] = 1;
82          array[1] = 2;
83          assertEquals( -1, comparator.compare( new int[]
84              { 1, 2 }, array ) );
85      }
86  }