@Test public void testMultipleDetails() { LongSet items = LongUtils.packedSet(10, 30, 39); ResultMap results = scorer.scoreWithDetails(42, items); assertThat(results.size(), equalTo(2)); assertThat(results.getScore(39), equalTo(3.5)); assertThat(results.getScore(30), equalTo(4.0)); assertThat(results.get(39L), instanceOf(FallbackResult.class)); FallbackResult r39 = (FallbackResult) results.get(39L); assertThat(r39.getScore(), equalTo(3.5)); assertThat(r39.isFromPrimary(), equalTo(true)); assertThat(r39.getInnerResult(), notNullValue()); assertThat(r39.getInnerResult().getScore(), equalTo(3.5)); assertThat(results.get(30L), instanceOf(FallbackResult.class)); FallbackResult r30 = (FallbackResult) results.get(30L); assertThat(r30.getScore(), equalTo(4.0)); assertThat(r30.isFromPrimary(), equalTo(false)); assertThat(r30.getInnerResult(), notNullValue()); assertThat(r30.getInnerResult().getScore(), equalTo(4.0)); assertThat(results.get(10L), nullValue()); } }