### Question:
MultiValuePropertyList extends MultiValuePropertyCollection<E> implements List<E> { @Override public int indexOf(Object o) { Value value = JcrPropertyUtil.asValue(getValueFactory(), o); return getValuesList().indexOf(value); } MultiValuePropertyList(Node parent, String propertyName);  MultiValuePropertyList(Node parent, String propertyName, boolean weakRefs);  MultiValuePropertyList(Node parent, String propertyName, List<Value> list);  MultiValuePropertyList(Node parent, String propertyName, boolean weakRefs, List<Value> list);  MultiValuePropertyList(Node parent, String propertyName, List<Value> list, MultiValuePropertyList<E> parentList);  MultiValuePropertyList(Property prop); protected  MultiValuePropertyList(Property prop, List<Value> list); protected  MultiValuePropertyList(Property prop, List<Value> list, MultiValuePropertyList<E> parentList); @Override boolean addAll(int index, Collection<? extends E> c); @Override E get(int index); @Override E set(int index, E element); @Override void add(int index, E element); @Override E remove(int index); @Override int indexOf(Object o); @Override int lastIndexOf(Object o); @Override ListIterator<E> listIterator(); @Override ListIterator<E> listIterator(int index); @Override List<E> subList(int fromIndex, int toIndex);  }### Answer:
@Test public void testIndexOf() { metadata.read(() -> { List<String> list = getList("prop1"); int bIdx = list.indexOf("b"); int xIdx = list.indexOf("x"); assertThat(bIdx).isEqualTo(1); assertThat(xIdx).isEqualTo(-1); }, MetadataAccess.SERVICE); }