use of org.infobip.mobile.messaging.notification.NotificationHandler in project mobile-messaging-sdk-android by infobip.
the class NotificationHandlerResolverTest method should_get_core_notification_handler_when_no_handlers_in_manifest.
@Test
public void should_get_core_notification_handler_when_no_handlers_in_manifest() throws InterruptedException {
// Given
given(moduleLoaderMock.loadModules(eq(NotificationHandler.class))).willReturn(new HashMap<String, NotificationHandler>());
MobileMessagingCore givenCore = new MobileMessagingCore(context, new AndroidBroadcaster(context), Executors.newSingleThreadExecutor(), moduleLoaderMock);
// When
NotificationHandler notificationHandler = givenCore.getNotificationHandler();
// Then
assertTrue(notificationHandler instanceof CoreNotificationHandler);
}
use of org.infobip.mobile.messaging.notification.NotificationHandler in project mobile-messaging-sdk-android by infobip.
the class NotificationHandlerResolverTest method should_get_test_notification_handler.
@Test
public void should_get_test_notification_handler() throws InterruptedException {
// Given
given(moduleLoaderMock.loadModules(eq(NotificationHandler.class))).willReturn(new HashMap<String, NotificationHandler>() {
{
put(MockNotificationHandler.class.getName(), new MockNotificationHandler());
}
});
MobileMessagingCore givenCore = new MobileMessagingCore(context, new AndroidBroadcaster(context), Executors.newSingleThreadExecutor(), moduleLoaderMock);
// When
NotificationHandler notificationHandler = givenCore.getNotificationHandler();
// Then
assertFalse(notificationHandler instanceof CoreNotificationHandler);
assertTrue(notificationHandler instanceof MockNotificationHandler);
}
use of org.infobip.mobile.messaging.notification.NotificationHandler in project mobile-messaging-sdk-android by infobip.
the class MobileMessagingTestCase method setUp.
@SuppressLint("ApplySharedPref")
@Before
public void setUp() throws Exception {
super.setUp();
PreferenceManager.getDefaultSharedPreferences(context).edit().clear().commit();
PreferenceHelper.saveString(context, MobileMessagingProperty.API_URI, "http://127.0.0.1:" + debugServer.getListeningPort() + "/");
PreferenceHelper.saveString(context, MobileMessagingProperty.APPLICATION_CODE, "TestApplicationCode");
PreferenceHelper.saveString(context, MobileMessagingProperty.INFOBIP_REGISTRATION_ID, "TestDeviceInstanceId");
PreferenceHelper.saveString(context, MobileMessagingProperty.GCM_REGISTRATION_ID, "TestRegistrationId");
PreferenceHelper.saveBoolean(context, MobileMessagingProperty.GCM_REGISTRATION_ID_REPORTED, true);
MobileMessagingLogger.enforce();
time = new TestTimeProvider();
Time.reset(time);
MobileApiResourceProvider mobileApiResourceProvider = mock(MobileApiResourceProvider.class);
mobileApiMessages = mock(MobileApiMessages.class);
mobileApiData = mock(MobileApiData.class);
given(mobileApiResourceProvider.getMobileApiMessages(any(Context.class))).willReturn(mobileApiMessages);
given(mobileApiResourceProvider.getMobileApiData(any(Context.class))).willReturn(mobileApiData);
notificationHandler = mock(NotificationHandler.class);
broadcaster = mock(Broadcaster.class);
mobileMessagingCore = MobileMessagingTestable.create(context, broadcaster, mobileApiResourceProvider);
mobileMessaging = mobileMessagingCore;
databaseHelper = MobileMessagingCore.getDatabaseHelper(context);
databaseProvider = MobileMessagingCore.getDatabaseProvider(context);
}
use of org.infobip.mobile.messaging.notification.NotificationHandler in project mobile-messaging-sdk-android by infobip.
the class MobileMessagingGcmIntentService method mobileMessageHandler.
private MobileMessageHandler mobileMessageHandler() {
if (mobileMessageHandler == null) {
MobileMessagingCore mobileMessagingCore = MobileMessagingCore.getInstance(this);
NotificationHandler notificationHandler = mobileMessagingCore.getNotificationHandler();
mobileMessageHandler = new MobileMessageHandler(mobileMessagingCore, new AndroidBroadcaster(this), notificationHandler, mobileMessagingCore.getMessageStoreWrapper());
}
return mobileMessageHandler;
}
use of org.infobip.mobile.messaging.notification.NotificationHandler in project mobile-messaging-sdk-android by infobip.
the class MobileMessagingCore method loadNotificationHandler.
private NotificationHandler loadNotificationHandler() {
Map<String, NotificationHandler> handlers = moduleLoader.loadModules(NotificationHandler.class);
NotificationHandler handler;
if (!handlers.isEmpty()) {
handler = handlers.values().iterator().next();
} else {
handler = new CoreNotificationHandler();
}
handler.setContext(context);
return handler;
}
Aggregations