private void verifyCompaction(List<LogSegmentName> segmentsCompacted, List<LogSegmentName> unaffectedSegments,
      long targetSegmentsExpectedValidSize, List<LogEntry> validLogEntriesInOrder,
      Set<MockId> idsInCompactedLogSegments, long deleteReferenceTimeMs, Set<MockId> compactedDeletes)
      throws IOException, StoreException {
    verifyStorePostCompaction(segmentsCompacted, unaffectedSegments, targetSegmentsExpectedValidSize,
        validLogEntriesInOrder);
    verifyDataPostCompaction(idsInCompactedLogSegments, compactedDeletes, deleteReferenceTimeMs);
  }
Verifies compaction by checking the integrity of the store and data.
Calls {@link #verifyStorePostCompaction(List, List, long, List)} and {@link #verifyDataPostCompaction(Set, Set, long)}.
@param segmentsCompacted the names of the log segments that were compacted.
@param unaffectedSegments the names of the log segments that should have been unaffected.
@param targetSegmentsExpectedValidSize the expected valid size of all the new segments that were created due to
                                       compaction.
@param validLogEntriesInOrder the log entries for valid data before compaction in order. The new segments should
                              have all of these entries and in the same order.
@param idsInCompactedLogSegments the ids that had PUT records in the segments that were compacted.
@param deleteReferenceTimeMs the reference time in ms to use to decide whether deletes are valid.
@param compactedDeletes a set of delete tombstone ids that should be cleaned up in compacted segments.
@throws IOException
@throws StoreException
ambry-store/src/test/java/com/github/ambry/store/BlobStoreCompactorTest.java