@Test
public void testUpdateBusinessObjectDataStatus()
{

    // Create a business object data key.
    BusinessObjectDataKey businessObjectDataKey =
        new BusinessObjectDataKey(NAMESPACE, BDEF_NAME, FORMAT_USAGE_CODE, FORMAT_FILE_TYPE_CODE, FORMAT_VERSION, PARTITION_VALUE, SUBPARTITION_VALUES,
            DATA_VERSION);
    // Create a business object data status update request.
    BusinessObjectDataStatusUpdateRequest businessObjectDataStatusUpdateRequest = new BusinessObjectDataStatusUpdateRequest(BDATA_STATUS_2);
    // Create a business object data status update response.
    BusinessObjectDataStatusUpdateResponse businessObjectDataStatusUpdateResponse =
        new BusinessObjectDataStatusUpdateResponse(businessObjectDataKey, BDATA_STATUS_2, BDATA_STATUS);
    // Mock the external calls.
    when(businessObjectDataStatusService.updateBusinessObjectDataStatus(businessObjectDataKey, businessObjectDataStatusUpdateRequest))
        .thenReturn(businessObjectDataStatusUpdateResponse);
    // Call the method under test.
    BusinessObjectDataStatusUpdateResponse result = businessObjectDataStatusRestController
        .updateBusinessObjectDataStatus(NAMESPACE, BDEF_NAME, FORMAT_USAGE_CODE, FORMAT_FILE_TYPE_CODE, FORMAT_VERSION, PARTITION_VALUE,
            SUBPARTITION_VALUES.get(0), SUBPARTITION_VALUES.get(1), SUBPARTITION_VALUES.get(2), SUBPARTITION_VALUES.get(3), DATA_VERSION,
            businessObjectDataStatusUpdateRequest);
    // Verify the external calls.
    verify(businessObjectDataStatusService).updateBusinessObjectDataStatus(businessObjectDataKey, businessObjectDataStatusUpdateRequest);
    verify(notificationEventService)
        .processBusinessObjectDataNotificationEventAsync(NotificationEventTypeEntity.EventTypesBdata.BUS_OBJCT_DATA_STTS_CHG, businessObjectDataKey,
            BDATA_STATUS_2, BDATA_STATUS);
    verifyNoMoreInteractionsHelper();
    // Validate the results.
    assertEquals(businessObjectDataStatusUpdateResponse, result);
}