Search in sources :

Example 1 with UserDataReporter

use of org.infobip.mobile.messaging.mobile.data.UserDataReporter in project mobile-messaging-sdk-android by infobip.

the class RetryableSynchronizersTest method setUp.

@SuppressLint("CommitPrefEdits")
@Override
public void setUp() throws Exception {
    super.setUp();
    MobileMessagingStats stats = mobileMessagingCore.getStats();
    PreferenceHelper.saveBoolean(context, MobileMessagingProperty.REPORT_SYSTEM_INFO, true);
    PreferenceHelper.saveInt(context, MobileMessagingProperty.DEFAULT_EXP_BACKOFF_MULTIPLIER, 0);
    PreferenceHelper.remove(context, MobileMessagingProperty.REPORTED_SYSTEM_DATA_HASH);
    mobileMessageHandler = mock(MobileMessageHandler.class);
    mobileApiData = mock(MobileApiData.class);
    mobileApiMessages = mock(MobileApiMessages.class);
    mobileApiRegistration = mock(MobileApiRegistration.class);
    given(mobileApiData.reportUserData(anyString(), any(UserDataReport.class))).willThrow(new BackendCommunicationException("Backend error", new ApiIOException("0", "Backend error")));
    doThrow(new BackendCommunicationException("Backend error", new ApiIOException("0", "Backend error"))).when(mobileApiData).reportSystemData(any(SystemDataReport.class));
    given(mobileApiMessages.sync(any(SyncMessagesBody.class))).willThrow(new BackendCommunicationException("Backend error", new ApiIOException("0", "Backend error")));
    given(mobileApiRegistration.upsert(anyString(), anyBoolean())).willThrow(new BackendCommunicationException("Backend error", new ApiIOException("0", "Backend error")));
    RetryPolicyProvider retryPolicyProvider = new RetryPolicyProvider(context);
    retryPolicy = retryPolicyProvider.DEFAULT();
    executor = Executors.newSingleThreadExecutor();
    systemDataReporter = new SystemDataReporter(mobileMessagingCore, stats, retryPolicy, executor, broadcaster, mobileApiData);
    messagesSynchronizer = new MessagesSynchronizer(mobileMessagingCore, stats, executor, broadcaster, retryPolicy, mobileMessageHandler, mobileApiMessages);
    registrationSynchronizer = new RegistrationSynchronizer(context, mobileMessagingCore, stats, executor, broadcaster, retryPolicyProvider, mobileApiRegistration);
    userDataReporter = new UserDataReporter(mobileMessagingCore, executor, broadcaster, retryPolicyProvider, stats, mobileApiData);
}
Also used : MessagesSynchronizer(org.infobip.mobile.messaging.mobile.messages.MessagesSynchronizer) ApiIOException(org.infobip.mobile.messaging.api.support.ApiIOException) MobileApiData(org.infobip.mobile.messaging.api.data.MobileApiData) MobileApiRegistration(org.infobip.mobile.messaging.api.registration.MobileApiRegistration) SystemDataReport(org.infobip.mobile.messaging.api.data.SystemDataReport) MobileMessageHandler(org.infobip.mobile.messaging.gcm.MobileMessageHandler) MobileMessagingStats(org.infobip.mobile.messaging.stats.MobileMessagingStats) RetryPolicyProvider(org.infobip.mobile.messaging.mobile.common.RetryPolicyProvider) SyncMessagesBody(org.infobip.mobile.messaging.api.messages.SyncMessagesBody) MobileApiMessages(org.infobip.mobile.messaging.api.messages.MobileApiMessages) UserDataReport(org.infobip.mobile.messaging.api.data.UserDataReport) UserDataReporter(org.infobip.mobile.messaging.mobile.data.UserDataReporter) SystemDataReporter(org.infobip.mobile.messaging.mobile.data.SystemDataReporter) RegistrationSynchronizer(org.infobip.mobile.messaging.mobile.registration.RegistrationSynchronizer) BackendCommunicationException(org.infobip.mobile.messaging.mobile.common.exceptions.BackendCommunicationException) SuppressLint(android.annotation.SuppressLint)

Aggregations

SuppressLint (android.annotation.SuppressLint)1 MobileApiData (org.infobip.mobile.messaging.api.data.MobileApiData)1 SystemDataReport (org.infobip.mobile.messaging.api.data.SystemDataReport)1 UserDataReport (org.infobip.mobile.messaging.api.data.UserDataReport)1 MobileApiMessages (org.infobip.mobile.messaging.api.messages.MobileApiMessages)1 SyncMessagesBody (org.infobip.mobile.messaging.api.messages.SyncMessagesBody)1 MobileApiRegistration (org.infobip.mobile.messaging.api.registration.MobileApiRegistration)1 ApiIOException (org.infobip.mobile.messaging.api.support.ApiIOException)1 MobileMessageHandler (org.infobip.mobile.messaging.gcm.MobileMessageHandler)1 RetryPolicyProvider (org.infobip.mobile.messaging.mobile.common.RetryPolicyProvider)1 BackendCommunicationException (org.infobip.mobile.messaging.mobile.common.exceptions.BackendCommunicationException)1 SystemDataReporter (org.infobip.mobile.messaging.mobile.data.SystemDataReporter)1 UserDataReporter (org.infobip.mobile.messaging.mobile.data.UserDataReporter)1 MessagesSynchronizer (org.infobip.mobile.messaging.mobile.messages.MessagesSynchronizer)1 RegistrationSynchronizer (org.infobip.mobile.messaging.mobile.registration.RegistrationSynchronizer)1 MobileMessagingStats (org.infobip.mobile.messaging.stats.MobileMessagingStats)1