Object[] findValues(int ordinal) {
        return getAllValues(ordinal, type, 0);
    }
@Test
    public void testListObjectReference() throws Exception {
        ListObjectReference listType = new ListObjectReference();
        SimpleValue val1 = new SimpleValue();
        val1.id = 1;
        SimpleValue val2 = new SimpleValue();
        val2.id = 2;

        listType.intValues = Arrays.asList(val1, val2);

        objectMapper.add(listType);
        StateEngineRoundTripper.roundTripSnapshot(writeStateEngine, readStateEngine);

        FieldPath fieldPath;
        Object[] values;

        //with partial auto expand
        fieldPath = new FieldPath(readStateEngine, "ListObjectReference", "intValues.element");
        values = fieldPath.findValues(0);
        Assert.assertEquals(1, (int) values[0]);
        Assert.assertEquals(2, (int) values[1]);

        //without auto expand
        fieldPath = new FieldPath(readStateEngine, "ListObjectReference", "intValues.element.id");
        values = fieldPath.findValues(0);
        Assert.assertEquals(1, (int) values[0]);
        Assert.assertEquals(2, (int) values[1]);
    }