@Test
public void testInitiateUploadSampleFile()
{

    // Create a business object data key.
    BusinessObjectDefinitionKey businessObjectDefinitionKey = new BusinessObjectDefinitionKey(BDEF_NAMESPACE, BDEF_NAME);
    // Create a request.
    UploadBusinessObjectDefinitionSampleDataFileInitiationRequest request =
        new UploadBusinessObjectDefinitionSampleDataFileInitiationRequest(businessObjectDefinitionKey);
    // Create a response.
    UploadBusinessObjectDefinitionSampleDataFileInitiationResponse response =
        new UploadBusinessObjectDefinitionSampleDataFileInitiationResponse(businessObjectDefinitionKey, S3_BUCKET_NAME, S3_ENDPOINT, S3_KEY_PREFIX,
            AWS_ASSUMED_ROLE_ACCESS_KEY, AWS_ASSUMED_ROLE_SECRET_KEY, AWS_ASSUMED_ROLE_SESSION_TOKEN, NO_AWS_KMS_KEY_ID, AWS_ASSUMED_ROLE_SESSION_EXPIRATION_TIME);
    // Mock the external calls.
    when(uploadDownloadService.initiateUploadSampleFile(request)).thenReturn(response);
    // Call the method under test.
    UploadBusinessObjectDefinitionSampleDataFileInitiationResponse result = uploadDownloadRestController.initiateUploadSampleFile(request);
    // Verify the external calls.
    verify(uploadDownloadService).initiateUploadSampleFile(request);
    verifyNoMoreInteractionsHelper();
    // Validate the results.
    assertEquals(response, result);
}