test_class.declarator: rangeIndex
test_class.original_string: RangeIndex rangeIndex;
test_class.type: RangeIndex
test_class.var_name: rangeIndex
test_class.declarator: comparable
test_class.modifier: @Mock
test_class.original_string: @Mock
    Comparable<Object> comparable, lowerBound, upperBound;
test_class.type: Comparable<Object>
test_class.var_name: comparable
test_class.declarator: map
test_class.modifier: @Mock
test_class.original_string: @Mock
    NavigableMap<Object, Set<Object>> map;
test_class.type: NavigableMap<Object, Set<Object>>
test_class.var_name: map
test_class.declarator: entry
test_class.modifier: @Mock
test_class.original_string: @Mock
    Entry<Object, Set<Object>> entry;
test_class.type: Entry<Object, Set<Object>>
test_class.var_name: entry
test_class.declarator: result = new ArrayList<Object>()
test_class.modifier: @Spy
test_class.original_string: @Spy
    List<Object> result = new ArrayList<Object>();
test_class.type: List<Object>
test_class.var_name: result
test_class.file: imcache-core/src/test/java/com/cetsoft/imcache/cache/search/index/RangeIndexTest.java
test_class.identifier: RangeIndexTest
test_case.body: @Test
    public void between() {
      Comparable<Object> key = comparable;
      Object value = new Object();
      Set<Object> set = new HashSet<Object>();
      set.add(value);
      doReturn(set).when(entry).getValue();
      doReturn(key).when(entry).getKey();
      doReturn(entry).when(map).higherEntry(lowerBound);
      doReturn(-1).doReturn(1).when(key).compareTo(upperBound);
      doReturn(null).when(map).higherEntry(key);
      List<Object> list = rangeIndex.between(lowerBound, upperBound);
      assertTrue(list.contains(value));
    }
test_case.class_method_signature: RangeIndexTest.between()
test_case.full_signature: @Test public void between()
test_case.identifier: between
test_case.invocations: add getValue when doReturn getKey when doReturn higherEntry when doReturn compareTo when doReturn doReturn higherEntry when doReturn between assertTrue contains
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void between()
focal_class.file: imcache-core/src/main/java/com/cetsoft/imcache/cache/search/index/RangeIndex.java
focal_class.identifier: RangeIndex
focal_class.class_method_signature: RangeIndex.RangeIndex()
focal_class.full_signature: public  RangeIndex()
focal_class.identifier: RangeIndex
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.signature:  RangeIndex()
focal_class.class_method_signature: RangeIndex.lessThan(Object value)
focal_class.full_signature: public List<Object> lessThan(Object value)
focal_class.identifier: lessThan
focal_class.modifiers: public
focal_class.parameters: (Object value)
focal_class.return: List<Object>
focal_class.signature: List<Object> lessThan(Object value)
focal_class.class_method_signature: RangeIndex.lessThanOrEqualsTo(Object value)
focal_class.full_signature: public List<Object> lessThanOrEqualsTo(Object value)
focal_class.identifier: lessThanOrEqualsTo
focal_class.modifiers: public
focal_class.parameters: (Object value)
focal_class.return: List<Object>
focal_class.signature: List<Object> lessThanOrEqualsTo(Object value)
focal_class.class_method_signature: RangeIndex.lower(NavigableMap<Object, Set<Object>> map,
        Entry<Object, Set<Object>> current)
focal_class.full_signature: protected List<Object> lower(NavigableMap<Object, Set<Object>> map,
        Entry<Object, Set<Object>> current)
focal_class.identifier: lower
focal_class.modifiers: protected
focal_class.parameters: (NavigableMap<Object, Set<Object>> map,
        Entry<Object, Set<Object>> current)
focal_class.return: List<Object>
focal_class.signature: List<Object> lower(NavigableMap<Object, Set<Object>> map,
        Entry<Object, Set<Object>> current)
focal_class.class_method_signature: RangeIndex.greaterThan(Object value)
focal_class.full_signature: public List<Object> greaterThan(Object value)
focal_class.identifier: greaterThan
focal_class.modifiers: public
focal_class.parameters: (Object value)
focal_class.return: List<Object>
focal_class.signature: List<Object> greaterThan(Object value)
focal_class.class_method_signature: RangeIndex.greaterThanOrEqualsTo(Object value)
focal_class.full_signature: public List<Object> greaterThanOrEqualsTo(Object value)
focal_class.identifier: greaterThanOrEqualsTo
focal_class.modifiers: public
focal_class.parameters: (Object value)
focal_class.return: List<Object>
focal_class.signature: List<Object> greaterThanOrEqualsTo(Object value)
focal_class.class_method_signature: RangeIndex.equalsTo(Object value, List<Object> result)
focal_class.full_signature: protected void equalsTo(Object value, List<Object> result)
focal_class.identifier: equalsTo
focal_class.modifiers: protected
focal_class.parameters: (Object value, List<Object> result)
focal_class.return: void
focal_class.signature: void equalsTo(Object value, List<Object> result)
focal_class.class_method_signature: RangeIndex.higher(NavigableMap<Object, Set<Object>> map,
        Entry<Object, Set<Object>> current)
focal_class.full_signature: protected List<Object> higher(NavigableMap<Object, Set<Object>> map,
        Entry<Object, Set<Object>> current)
focal_class.identifier: higher
focal_class.modifiers: protected
focal_class.parameters: (NavigableMap<Object, Set<Object>> map,
        Entry<Object, Set<Object>> current)
focal_class.return: List<Object>
focal_class.signature: List<Object> higher(NavigableMap<Object, Set<Object>> map,
        Entry<Object, Set<Object>> current)
focal_class.class_method_signature: RangeIndex.between(Object lowerBound, Object upperBound)
focal_class.full_signature: @SuppressWarnings("unchecked") public List<Object> between(Object lowerBound, Object upperBound)
focal_class.identifier: between
focal_class.modifiers: @SuppressWarnings("unchecked") public
focal_class.parameters: (Object lowerBound, Object upperBound)
focal_class.return: List<Object>
focal_class.signature: List<Object> between(Object lowerBound, Object upperBound)
focal_class.class_method_signature: RangeIndex.getMap()
focal_class.full_signature: public NavigableMap<Object, Set<Object>> getMap()
focal_class.identifier: getMap
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: NavigableMap<Object, Set<Object>>
focal_class.signature: NavigableMap<Object, Set<Object>> getMap()
focal_class.superclass: extends MultiValueIndex
focal_method.body: @SuppressWarnings("unchecked")
    public List<Object> between(Object lowerBound, Object upperBound) {
      Set<Object> resultSet = new HashSet<Object>();
      NavigableMap<Object, Set<Object>> map = getMap();
      Entry<Object, Set<Object>> current = map.higherEntry(lowerBound);
      while (current != null
          && ((Comparable<Object>) current.getKey()).compareTo((Comparable<Object>) upperBound) < 0) {
        synchronized (current) {
          resultSet.addAll(current.getValue());
          current = map.higherEntry(current.getKey());
        }
      }
      return new ArrayList<Object>(resultSet);
    }
focal_method.class_method_signature: RangeIndex.between(Object lowerBound, Object upperBound)
focal_method.full_signature: @SuppressWarnings("unchecked") public List<Object> between(Object lowerBound, Object upperBound)
focal_method.identifier: between
focal_method.invocations: getMap higherEntry compareTo getKey addAll getValue higherEntry getKey
focal_method.modifiers: @SuppressWarnings("unchecked") public
focal_method.parameters: (Object lowerBound, Object upperBound)
focal_method.return: List<Object>
focal_method.signature: List<Object> between(Object lowerBound, Object upperBound)