public void testCollector() throws IOException {
   TotalHitCountCollector collector = new TotalHitCountCollector();
   ProfileCollector profileCollector = new ProfileCollector(collector);
   assertEquals(0, profileCollector.getTime());
   final LeafCollector leafCollector = profileCollector.getLeafCollector(reader.leaves().get(0));
   assertThat(profileCollector.getTime(), greaterThan(0L));
   long time = profileCollector.getTime();
   leafCollector.setScorer(null);
   assertThat(profileCollector.getTime(), greaterThan(time));
   time = profileCollector.getTime();
   leafCollector.collect(0);
   assertThat(profileCollector.getTime(), greaterThan(time));
 }
 /** @return the profiled time for this collector (inclusive of children) */
 public long getTime() {
   return collector.getTime();
 }
 @Override
 public LeafCollector getLeafCollector(LeafReaderContext context) throws IOException {
   return collector.getLeafCollector(context);
 }
 @Override
 public boolean needsScores() {
   return collector.needsScores();
 }