### Question:
HiveDifferences { @VisibleForTesting static PartitionAndMetadata sourcePartitionToPartitionAndMetadata(Partition sourcePartition) { return new PartitionAndMetadata(sourcePartition.getDbName() + "." + sourcePartition.getTableName(), normaliseLocation(sourcePartition.getSd().getLocation()), sourcePartition); } private  HiveDifferences(
      ComparatorRegistry comparatorRegistry,
      DiffListener diffListener,
      Table sourceTable,
      Iterator<Partition> sourcePartitionIterator,
      Optional<Table> replicaTable,
      Optional<? extends PartitionFetcher> replicaPartitionFetcher,
      Function<Path, String> checksumFunction,
      int partitionLimit); static Builder builder(DiffListener diffListener); void run();  }### Answer:
@Test public void sourcePartitionToPartitionAndMetadata() { Partition sourcePartition = TestUtils.newPartition("sourceDB", "sourceTable", "val"); PartitionAndMetadata sourcePartitionAndMetadata = HiveDifferences .sourcePartitionToPartitionAndMetadata(sourcePartition); assertThat(sourcePartitionAndMetadata.getSourceTable(), is("sourceDB.sourceTable")); assertThat(sourcePartitionAndMetadata.getSourceLocation(), is(sourcePartition.getSd().getLocation())); assertThat(sourcePartitionAndMetadata.getPartition(), is(sourcePartition)); }