@Test
  public void testNewPartitionToFileBasedHydration() {
    // Arrange
    clearInvocations(fileCopyManagerListener);
    clearInvocations(storageManagerListener);

    final BootstrapController.BootstrapControllerImpl bootstrapControllerImpl =
        getBootstrapControllerImpl(ServerReplicationMode.FILE_BASED);

    when(storeManager.getReplica(partitionName1))
        .thenReturn(null);

    // Act
    bootstrapControllerImpl.onPartitionBecomeBootstrapFromOffline(partitionName1);

    // Assert
    verify(fileCopyManagerListener, times(1))
        .onPartitionBecomeBootstrapFromOffline(partitionName1);
    verify(storageManagerListener, never())
        .onPartitionBecomeBootstrapFromOffline(partitionName1);

    assert bootstrapControllerImpl.replicationProtocolTransitionType.size() == 1;
    assert bootstrapControllerImpl.replicationProtocolTransitionType.contains(
        ReplicationProtocolTransitionType.NEW_PARTITION_TO_FILE_BASED_HYDRATION);
  }
Test for {@link BootstrapController.BootstrapControllerImpl#onPartitionBecomeBootstrapFromOffline(String)}
when :-
1. The server replication mode is {@link ServerReplicationMode#FILE_BASED}
2. Replica is null
Bootstrap Controller is expected to instantiate fileCopyManagerListener
ReplicationProtocolTransitionType is {@link ReplicationProtocolTransitionType#NEW_PARTITION_TO_FILE_BASED_HYDRATION}
ambry-store/src/test/java/com/github/ambry/store/BootstrapControllerTest.java