private void checkData(final ReferenceData data,
                           final List<PipelineReference> pipelineReferences,
                           final String mapName,
                           final List<EffectiveMeta> effectiveMetas) {
        String expectedValuePart = VALUE_1;

        Optional<String> optFoundValue;

        optFoundValue = lookup(data, pipelineReferences, "2010-01-01T09:47:00.111Z", mapName, USER_1);
        doValueAsserts(optFoundValue, effectiveMetas.get(2).getId(), mapName, expectedValuePart);

        optFoundValue = lookup(data, pipelineReferences, "2015-01-01T09:47:00.000Z", mapName, USER_1);
        doValueAsserts(optFoundValue, effectiveMetas.get(2).getId(), mapName, expectedValuePart);

        optFoundValue = lookup(data, pipelineReferences, "2009-10-01T09:47:00.000Z", mapName, USER_1);
        doValueAsserts(optFoundValue, effectiveMetas.get(1).getId(), mapName, expectedValuePart);

        optFoundValue = lookup(data, pipelineReferences, "2009-01-01T09:47:00.000Z", mapName, USER_1);
        doValueAsserts(optFoundValue, effectiveMetas.get(1).getId(), mapName, expectedValuePart);

        optFoundValue = lookup(data, pipelineReferences, "2008-01-01T09:47:00.000Z", mapName, USER_1);
        doValueAsserts(optFoundValue, effectiveMetas.get(0).getId(), mapName, expectedValuePart);

        optFoundValue = lookup(data, pipelineReferences, "2006-01-01T09:47:00.000Z", mapName, USER_1);
        assertThat(optFoundValue).isEmpty();

        optFoundValue = lookup(data, pipelineReferences, "2009-01-01T09:47:00.000Z", mapName, "user1_X");
        assertThat(optFoundValue).isEmpty();

        optFoundValue = lookup(data, pipelineReferences, "2009-01-01T09:47:00.000Z", "SID_TO_PF_X", USER_1);
        assertThat(optFoundValue).isEmpty();
    }
Make sure that it copes with a map not being in an early stream but is in a later one.
stroom-app/src/test/java/stroom/pipeline/refdata/TestReferenceData.java