### Question:
ArrayIndexedCollection extends Collection { public int indexOf(Object value) { if (value == null) { return VALUE_NOT_FOUND_RETURN_VALUE; } for (int index = 0; index < size; ++index) { if (value.equals(elements[index])) { return index; } } return VALUE_NOT_FOUND_RETURN_VALUE; } ArrayIndexedCollection();  ArrayIndexedCollection(int initialCapacity);  ArrayIndexedCollection(Collection collection);  ArrayIndexedCollection(Collection collection, int capacity); @Override int size(); @Override boolean contains(Object value); @Override boolean remove(Object value); @Override Object[] toArray(); @Override void forEach(Processor processor); @Override void add(Object value); Object get(int index); @Override void clear(); void insert(Object value, int position); int indexOf(Object value); void remove(int index); @Override String toString(); static final int VALUE_NOT_FOUND_RETURN_VALUE; }### Answer:
@Test void testIndexOfWithNull() { assertEquals(createCollectionWithNElements(5).indexOf(null), -1); }
@Test void testIndexOfWithEmptyCollection() { assertEquals(createCollectionWithNElements(0).indexOf(0), ArrayIndexedCollection.VALUE_NOT_FOUND_RETURN_VALUE); }