SDK-199 Auth Retry policy completely bypassed #987
GitHub Actions / Unit Test Results
succeeded
Dec 17, 2025 in 0s
Tests: 614/614 passed (100.0%) Skipped: 13
Test Results Summary:
• Total Tests: 627
• Passed: 614
• Failed: 0
• Skipped: 13
• Success Rate: 100.0%
Xcode Test Results
Test
| Total | Passed | Failed | Skipped | Expected Failures | Duration |
|---|---|---|---|---|---|
| 627 | 614 | 0 | 13 | 0 | 339.48s |
Test Environment
| Device | iPhone 16 Pro |
|---|---|
| OS Version | 18.6 |
| Architecture | arm64 |
Test Details
unit-tests
APNSTypeCheckerTests
| ✅ | testDev() | 0.07s |
| ✅ | testNoValue() | 0.00s |
| ✅ | testValidProduction() | 0.00s |
ActionRunnerTests
| ✅ | testAllowHttpWhenAllowedProtocolsIsSet() | 0.00s |
| ✅ | testBadDataInIterableAction() | 0.00s |
| ✅ | testCustomAction() | 0.00s |
| ✅ | testCustomActionOverride() | 0.00s |
| ✅ | testDoNotOpenHttpByDefault() | 1.01s |
| ✅ | testOpenHttpsByDefault() | 0.01s |
| ✅ | testUrlHandlingOverride() | 0.00s |
| ✅ | testUrlOpenAction() | 0.00s |
AuthTests
| ✅ | testAsyncAuthTokenRetrieval() | 0.16s |
| ✅ | testAuthTokenCallbackOnSetEmail() | 16.95s |
| ✅ | testAuthTokenCallbackOnSetUserId() | 0.18s |
| ✅ | testAuthTokenChangeWithSameEmail() | 8.96s |
| ✅ | testAuthTokenChangeWithSameUserId() | 1.90s |
| ✅ | testAuthTokenDeletedOnLogout() | 1.78s |
| ✅ | testAuthTokenNotRequestingForAlreadyExistingEmail() | 1.27s |
| ✅ | testAuthTokenRefreshOnInit() | 0.61s |
| ✅ | testAuthTokenRefreshQueued() | 1.02s |
| ✅ | testAuthTokenRefreshRetryOnlyOnce() | 7.71s |
| ✅ | testAuthTokenRefreshSkippedIfUserLoggedOutAfterReschedule() | 2.12s |
| ✅ | testAuthTokenRetrievalFailureReset() | 1.66s |
| ✅ | testDecodeExpirationDate() | 0.00s |
| ✅ | testEmailPersistence() | 0.40s |
| ✅ | testEmailWithTokenPersistence() | 0.74s |
| ✅ | testLoggedOutAuthTokenRequest() | 1.14s |
| ✅ | testLogoutUser() | 0.52s |
| ✅ | testMaxRetryLimitRespectedForScheduledRefresh() | 1.03s |
| ✅ | testNewEmailAndThenChangeToken() | 0.36s |
| ✅ | testNewUserIdAndThenChangeToken() | 0.43s |
| ✅ | testPauseAuthRetriesBlocksScheduledRefresh() | 2.01s |
| ✅ | testPriorAuthFailedRetryPrevention() | 0.37s |
| ✅ | testPriorAuthFailedRetrySuccess() | 0.07s |
| ✅ | testPushRegistrationAfterAuthTokenRetrieval() | 0.31s |
| ✅ | testRefreshTimerQueueRejection() | 1.47s |
| ✅ | testRetryJwtFailureQueuesRequestsUntilNewJwtTokenIsReceived() | 0.68s |
| ✅ | testUpdateEmailAndThenChangeToken() | 0.58s |
| ✅ | testUpdateEmailWithTokenParam() | 0.41s |
| ✅ | testUserIdPersistence() | 0.14s |
| ✅ | testUserIdWithTokenPersistence() | 0.29s |
| ✅ | testUserLoginAndLogout() | 0.16s |
AutoRegistrationTests
| ✅ | testAutomaticPushRegistrationOnInit() | 0.88s |
| ✅ | testCallDisableAndEnable() | 0.72s |
| ✅ | testDoNotCallDisableAndEnableWhenSameValue() | 1.27s |
| ✅ | testDoNotCallDisableOrEnableWhenAutoPushIsOff() | 1.29s |
ClassExtensionsTests
| ✅ | testArrayIsAscending() | 0.01s |
| ✅ | testArrayIsDescending() | 0.00s |
| ✅ | testHexConversion() | 0.00s |
| ✅ | testUIColorInit() | 0.02s |
CombinationComplexCriteria
| ✅ | testComplexCriteria1Failed() | 0.01s |
| ✅ | testComplexCriteria1Success() | 0.00s |
| ✅ | testComplexCriteria2Failed() | 0.00s |
| ✅ | testComplexCriteria2Success() | 0.00s |
| ✅ | testComplexCriteria3Fail() | 0.00s |
| ✅ | testComplexCriteria3Success() | 0.00s |
| ✅ | testComplexCriteria3Success2() | 0.00s |
CombinationLogicEventTypeCriteria
| ✅ | testCompareDataPurchaseAndFailed() | 0.00s |
| ✅ | testCompareDataPurchaseAndSuccess() | 0.00s |
| ✅ | testCompareDataPurchaseCustomEventAndFailed() | 0.00s |
| ✅ | testCompareDataPurchaseCustomEventAndSuccess() | 0.00s |
| ✅ | testCompareDataPurchaseCustomEventNotFailed() | 0.00s |
| ✅ | testCompareDataPurchaseCustomEventNotSuccess() | 0.00s |
| ✅ | testCompareDataPurchaseCustomEventOrFailed() | 0.04s |
| ✅ | testCompareDataPurchaseCustomEventOrSuccess() | 0.00s |
| ✅ | testCompareDataPurchaseNotFailed() | 0.00s |
| ✅ | testCompareDataPurchaseNotSuccess() | 0.00s |
| ✅ | testCompareDataPurchaseOrFailed() | 0.16s |
| ✅ | testCompareDataPurchaseOrSuccess() | 0.00s |
| ✅ | testCompareDataUpdateCartAndFailed() | 0.00s |
| ✅ | testCompareDataUpdateCartAndSuccess() | 0.00s |
| ✅ | testCompareDataUpdateCartNotFailed() | 0.04s |
| ✅ | testCompareDataUpdateCartNotSuccess() | 0.00s |
| ✅ | testCompareDataUpdateCartOrFailed() | 0.00s |
| ✅ | testCompareDataUpdateCartOrSuccess() | 0.00s |
| ✅ | testCompareDataUserAndFailed() | 0.10s |
| ✅ | testCompareDataUserAndSuccess() | 0.00s |
| ✅ | testCompareDataUserNotFailed() | 0.00s |
| ✅ | testCompareDataUserNotSuccess() | 0.00s |
| ✅ | testCompareDataUserOrFailed() | 0.37s |
| ✅ | testCompareDataUserOrSuccess() | 0.00s |
CommerceItemTests
| ✅ | testToDictionaryWithAllFields() | 0.00s |
| ✅ | testToDictionaryWithRequiredFields() | 0.00s |
ComparatorDataTypeWithArrayInput
| ✅ | testMockDataMileStoneYearDoesNotEqualFailure() | 0.00s |
| ✅ | testMockDataMileStoneYearDoesNotEqualSuccess() | 0.00s |
| ✅ | testMockDataMileStoneYearEqualFailure() | 0.02s |
| ✅ | testMockDataMileStoneYearEqualSuccess() | 0.00s |
| ✅ | testMockDataMileStoneYearGreaterThanFailure() | 0.00s |
| ✅ | testMockDataMileStoneYearGreaterThanOrEqualToFailure() | 0.00s |
| ✅ | testMockDataMileStoneYearGreaterThanOrEqualToSuccess() | 0.02s |
| ✅ | testMockDataMileStoneYearGreaterThanSuccess() | 0.00s |
| ✅ | testMockDataMileStoneYearLessThanFailure() | 0.00s |
| ✅ | testMockDataMileStoneYearLessThanOrEqualFailure() | 0.00s |
| ✅ | testMockDataMileStoneYearLessThanOrEqualToSuccess() | 0.00s |
| ✅ | testMockDataMileStoneYearLessThanSuccess() | 0.00s |
| ✅ | testMockDataMockDataForArrayContainsFailure() | 0.00s |
| ✅ | testMockDataMockDataForArrayContainsSuccess() | 0.00s |
| ✅ | testMockDataMockDataForArrayMatchRegexFailure() | 0.01s |
| ✅ | testMockDataMockDataForArrayMatchRegexSuccess() | 0.00s |
| ✅ | testMockDataMockDataForArrayStartWithFailure() | 0.00s |
| ✅ | testMockDataMockDataForArrayStartWithSuccess() | 0.00s |
| ✅ | testMockDataStringArrayDoesNotEqualFailure() | 0.00s |
| ✅ | testMockDataStringArrayDoesNotEqualSuccess() | 0.00s |
ComparatorTypeDoesNotEqualMatchTest
| ✅ | testCompareDataFailedForBool() | 0.00s |
| ✅ | testCompareDataFailedForDouble() | 0.00s |
| ✅ | testCompareDataFailedForLong() | 0.00s |
| ✅ | testCompareDataFailedForString() | 0.00s |
| ✅ | testCompareDataSuccessForBool() | 0.00s |
| ✅ | testCompareDataSuccessForDouble() | 0.00s |
| ✅ | testCompareDataSuccessForLong() | 0.00s |
| ✅ | testCompareDataSuccessForString() | 0.00s |
ConsentTrackingTests
| ✅ | testConsentNoRetryOnSuccess() | 0.39s |
| ✅ | testConsentNotSentWhenAnonActivationDisabled() | 2.26s |
| ✅ | testConsentNotSentWhenAnonUserExists() | 2.29s |
| ✅ | testConsentNotSentWhenNoConsentTimestamp() | 2.25s |
| ✅ | testConsentNotSentWhenNoTracking() | 2.19s |
| ✅ | testConsentRequestIncludesDeviceInfo() | 0.12s |
| ✅ | testConsentRetryFailsAfterTwoAttempts() | 0.62s |
| ✅ | testConsentRetryOnFailure() | 0.35s |
| ✅ | testConsentSentAfterCriteriaMatch() | 0.11s |
| ✅ | testConsentSentOnEmailSetForReplayScenario() | 0.13s |
| ✅ | testConsentSentOnUserIdSetForReplayScenario() | 0.15s |
| ✅ | testConsentTimestampSentInMilliseconds() | 0.14s |
| ✅ | testConsentTrackingErrorHandling() | 0.12s |
| ✅ | testSendPendingConsentSkippedInLoginFlowWhenReplayDisabled() | 2.26s |
| ✅ | testSendPendingConsentSkippedWhenReplayDisabled() | 2.34s |
| ✅ | testSendPendingConsentWhenReplayEnabled() | 0.29s |
CustomEventUserUpdateTestCaseTests
| ✅ | testCompareDataWithCustomEventCriteriaFailed1() | 0.01s |
| ✅ | testCompareDataWithCustomEventCriteriaFailed2() | 0.00s |
| ✅ | testCompareDataWithCustomEventCriteriaFailed3() | 0.00s |
| ✅ | testCompareDataWithCustomEventCriteriaFailed4() | 0.00s |
| ✅ | testCompareDataWithCustomEventCriteriaSuccessCase() | 0.00s |
| ✅ | testMultiLevelNestedFailed1() | 0.00s |
| ✅ | testMultiLevelNestedFailed2() | 0.00s |
| ✅ | testMultiLevelNestedFailed3() | 0.00s |
| ✅ | testMultiLevelNestedFailed4() | 0.00s |
| ✅ | testMultiLevelNestedSuccessCase() | 0.00s |
DataTypeComparatorSearchQueryCriteria
| ✅ | testCompareDataContainFailure() | 0.00s |
| ✅ | testCompareDataDoesNotEqualFailed() | 0.00s |
| ✅ | testCompareDataDoesNotEqualSuccess() | 0.00s |
| ✅ | testCompareDataEqualFailed() | 0.00s |
| ✅ | testCompareDataEqualSuccess() | 0.00s |
| ✅ | testCompareDataGreaterThanFailed() | 0.00s |
| ✅ | testCompareDataGreaterThanOrEqualFailed() | 0.00s |
| ✅ | testCompareDataGreaterThanOrEqualSuccess() | 0.04s |
| ✅ | testCompareDataGreaterThanSuccess() | 0.00s |
| ✅ | testCompareDataIsSetFailure() | 0.00s |
| ✅ | testCompareDataIsSetySuccess() | 0.00s |
| ✅ | testCompareDataLessThanFailed() | 0.00s |
| ✅ | testCompareDataLessThanOrEqualFailed() | 0.00s |
| ✅ | testCompareDataLessThanOrEqualSuccess() | 0.00s |
| ✅ | testCompareDataLessThanSuccess() | 0.00s |
| ✅ | testCompareDataMatchesRegexFailure() | 0.00s |
| ✅ | testCompareDataMatchesRegexSuccess() | 0.00s |
| ✅ | testCompareDataStartWithFailure() | 0.00s |
DeepLinkTests
| ✅ | testHandleUniversalLinkAttributionInfo() | 0.67s |
| ✅ | testHandleUniversalLinkRewrite() | 0.16s |
| ✅ | testNoURLRedirect() | 0.00s |
| ✅ | testTrackUniversalDeepLinkNoRewrite() | 0.00s |
| ✅ | testTrackUniversalDeepLinkRewrite() | 0.00s |
EmbeddedManagerTests
| ✅ | testGetMessagesForPlacement() | 0.02s |
| ✅ | testGetMessagesWhenEmpty() | 0.00s |
| ✅ | testManagerCorrectlyAddsAndRemovesListeners() | 0.02s |
| ✅ | testManagerInitializationAndDeinitialization() | 0.00s |
| ✅ | testManagerNotifiesMultipleDelegates() | 0.09s |
| ✅ | testManagerReset() | 0.00s |
| ✅ | testManagerSingleDelegateUpdated() | 0.00s |
| ✅ | testManagerSyncsOnForeground() | 0.00s |
| ✅ | testSyncMessagesFailedDueToInvalidAPIKey() | 0.01s |
| ✅ | testSyncMessagesSuccessful() | 0.01s |
| ✅ | testUpdateMessagesIsCalled() | 0.03s |
EmbeddedMessagingProcessorTests
| ✅ | testMessageIdsToTrackDelivery() | 0.00s |
| ✅ | testMessageListProcessing() | 0.00s |
| ✅ | testMessageListRemovedMessages() | 0.00s |
InAppFilePersistenceTests
| ✅ | testColorAndShouldAnimatePersistence() | 0.12s |
| ✅ | testCorruptedData() | 0.01s |
| ✅ | testFilePersistence() | 0.01s |
| ✅ | testFilePersisterInitial() | 0.00s |
| ✅ | testPersistBetweenSessions() | 0.53s |
| ✅ | testShouldAnimateWithoutBGColorPersistence() | 0.01s |
InAppHelperTests
| ✅ | testGetInAppMessagesRetriesAfterJWT401() | 0.09s |
| ✅ | testGetInAppMessagesWithErrorGetsConsumed() | 0.01s |
| ✅ | testGetInAppMessagesWithNoError() | 0.00s |
| ✅ | testParseURL() | 0.00s |
InAppMessageProcessorTests
| ✅ | testDoNotCountNewReadMessageAsDelivered() | 0.01s |
| ✅ | testMessagesObtainedShouldOverwriteForReadState() | 0.00s |
InAppNavigationTests
| ✅ | testAllowHttpWhenAllowedProtocolsIsSet() | 0.43s |
| ✅ | testDoNotOpenHttpByDefault() | 1.19s |
| ✅ | testOpenHttpsByDefault() | 0.19s |
InAppParsingTests
| ✅ | testBackgroundColor1() | 0.01s |
| ✅ | testBackgroundColor2() | 0.00s |
| ✅ | testBackgroundColor3() | 0.00s |
| ✅ | testBackgroundColor4() | 0.00s |
| ✅ | testBackgroundColor5() | 0.00s |
| ✅ | testBackgroundColor6() | 0.00s |
| ✅ | testCallbackUrlParsingAppleWebdataScheme1() | 0.00s |
| ✅ | testCallbackUrlParsingAppleWebdataScheme2() | 0.00s |
| ✅ | testCallbackUrlParsingCustomActionScheme() | 0.00s |
| ✅ | testCallbackUrlParsingRegularScheme() | 0.00s |
| ✅ | testCustomPayloadParsing() | 0.00s |
| ✅ | testDoNotShowMultipleTimes() | 0.01s |
| ✅ | testGetPaddingBottom() | 0.01s |
| ✅ | testGetPaddingCenter() | 0.00s |
| ✅ | testGetPaddingFull() | 0.00s |
| ✅ | testGetPaddingInvalid() | 0.00s |
| ✅ | testGetPaddingTop() | 0.00s |
| ✅ | testInAppPayloadParsing() | 0.00s |
| ✅ | testInAppPayloadParsingWithPreprocessing() | 0.00s |
| ✅ | testInAppPayloadWithKnownTrigger() | 0.00s |
| ✅ | testInAppPayloadWithNoTrigger() | 0.00s |
| ✅ | testInAppPayloadWithUnKnownTrigger() | 0.02s |
| ✅ | testNotificationPaddingBottom() | 0.00s |
| ✅ | testNotificationPaddingCenter() | 0.00s |
| ✅ | testNotificationPaddingDefault() | 0.00s |
| ✅ | testNotificationPaddingFull() | 0.00s |
| ✅ | testNotificationPaddingTop() | 0.00s |
| ✅ | testParseShouldAnimate1() | 0.00s |
| ✅ | testParseShouldAnimate2() | 0.00s |
| ✅ | testParseShouldAnimate3() | 0.02s |
| ✅ | testParseShouldAnimate4() | 0.02s |
| ✅ | testParseShouldAnimate5() | 0.00s |
| ✅ | testParseShouldAnimate6() | 0.00s |
| ✅ | testParseShouldAnimate7() | 0.00s |
| ✅ | testTrackInAppClickWithClickedUrl() | 0.39s |
| ✅ | testTrackInAppClose() | 0.13s |
| ✅ | testTrackInAppCloseWithNoSource() | 0.15s |
| ✅ | testTrackInAppDelivery() | 0.17s |
| ✅ | testTrackInAppOpen() | 0.12s |
InAppPersistenceTests
| ✅ | testDefaultTriggerDict() | 0.00s |
| ✅ | testInboxMetadataDecodingEncoding() | 0.01s |
| ✅ | testJsonOnlyMessageCustomPayloadPriority() | 0.00s |
| ✅ | testJsonOnlyMessagePersistence() | 0.01s |
| ✅ | testPersistentReadStateFromServerPayload() | 0.14s |
| ✅ | testUIEdgeInsetsKeysDecodingEncoding() | 0.00s |
InAppPresenterTests
| ✅ | testInAppPresenterDelegateExistence() | 0.02s |
| ✅ | testInAppPresenterIsPresentingOnInit() | 0.01s |
| ✅ | testInAppPresenterShowMethod() | 2.31s |
InAppPriorityTests
| ✅ | testDisplayingCriticalPriorityLevel() | 0.99s |
| ✅ | testDisplayingPriorityLevelsInOrder() | 3.68s |
| ✅ | testGetMessagesWithOutOfOrderPriorityLevels() | 0.17s |
| ✅ | testInAppMessagePriorityPersistence() | 0.11s |
| ✅ | testMessageWithNoPriorityTreatedAsDefaultLevel() | 0.14s |
InAppTests
| ✅ | testAutoDisplayOff() | 0.19s |
| ✅ | testAutoDisplayResumed() | 0.18s |
| ✅ | testAutoShowInAppMultipleOverride() | 1.15s |
| ✅ | testAutoShowInAppMultipleWithOrdering() | 2.38s |
| ✅ | testAutoShowInAppOpenUrlByDefault() | 0.14s |
| ✅ | testAutoShowInAppSingle() | 0.23s |
| ✅ | testAutoShowInAppSingleOverride() | 1.18s |
| ✅ | testAutoShowInAppUrlDelegateOverride() | 1.12s |
| ✅ | testDeleteInServerDeletesInClient() | 0.13s |
| ✅ | testDoNoProcessNonImmediateTriggerTypes() | 1.11s |
| ✅ | testDontShowNewlyArrivedMessageWithinRetryInterval() | 2.24s |
| ✅ | testEmptyInAppManager() | 0.00s |
| ✅ | testExpiration() | 0.11s |
| ✅ | testInAppDelivery() | 0.15s |
| ✅ | testInAppDoNotShowInBackground() | 1.13s |
| ✅ | testInAppRemoveMessagePayload1() | 0.14s |
| ✅ | testInAppRemoveMessagePayload2() | 0.13s |
| ✅ | testInAppRemoveMessagePayload3() | 0.13s |
| ✅ | testInAppShowWhenMovesToForeground() | 1.15s |
| ✅ | testInboxChangedIsCalledWhenInAppIsRemovedInServer() | 0.12s |
| ✅ | testJsonOnlyInAppMessage() | 0.14s |
| ✅ | testJsonOnlyInAppMessageDelegateCallbacks() | 3.16s |
| ✅ | testJsonOnlyInAppMessageParsing() | 0.13s |
| ✅ | testJsonOnlyInAppMessageWithoutCustomPayload() | 0.12s |
| ✅ | testJsonOnlyMessageCannotBeSavedToInbox() | 0.12s |
| ✅ | testJsonOnlyMessageIgnoresContentPayload() | 0.16s |
| ✅ | testJsonOnlyMessageWithEmptyPayload() | 0.15s |
| ✅ | testMoveToForegroundSyncInterval() | 2.17s |
| ✅ | testOnNewNotCalledMultipleTimes() | 0.19s |
| ✅ | testParseSilentPushNotificationParsing() | 0.01s |
| ✅ | testParseSilentPushNotificationParsing2() | 0.00s |
| ✅ | testRemoveIsCalled() | 0.00s |
| ✅ | testRemoveMessages() | 0.24s |
| ✅ | testShowInAppWithConsume() | 0.16s |
| ✅ | testShowInAppWithCustomAction() | 0.13s |
| ✅ | testShowInAppWithCustomAction1() | 0.15s |
| ✅ | testShowInAppWithCustomActionBackwardCompatibility() | 0.15s |
| ✅ | testShowInAppWithIterableCustomActionDelete() | 1.24s |
| ✅ | testShowInAppWithIterableCustomActionDismiss() | 0.24s |
| ✅ | testShowInAppWithNoConsume() | 0.17s |
| ✅ | testSyncIsCalled() | 0.12s |
| ✅ | testSyncIsCalledOnLogin() | 0.12s |
InboxImpressionTrackerTests
| ✅ | testRowInfoHashableEquatable() | 0.01s |
| ✅ | testToIterableInboxImpression() | 0.00s |
| ✅ | testUpdateVisibleRows() | 1.63s |
InboxMessageViewModelTests
| ✅ | testEquatable() | 0.00s |
| ✅ | testHasValidImageUrl() | 0.00s |
| ✅ | testHasher() | 0.00s |
| ✅ | testModel() | 0.00s |
InboxSessionManagerTests
| ✅ | testSessionInfoStartAndEnd() | 0.00s |
| ✅ | testSessionIsTracking() | 0.02s |
| ✅ | testUpdateRowTracking() | 1.01s |
InboxTests
| ✅ | testInboxAndInAppCallbacksTogether() | 0.26s |
| ✅ | testInboxChangedCalledOnInitialization() | 0.17s |
| ✅ | testInboxLogoutClearMessageQueue() | 1.25s |
| ✅ | testInboxNewMessagesCallback() | 0.19s |
| ✅ | testInboxOrdering() | 0.13s |
| ✅ | testReceiveReadMessage() | 0.14s |
| ✅ | testRemove() | 0.21s |
| ✅ | testSetRead() | 0.19s |
| ✅ | testShowInboxMessage() | 0.21s |
| ✅ | testShowNowAndInboxMessage() | 0.25s |
InboxViewControllerViewModelTests
| ✅ | testAscendingSorting() | 0.02s |
| ✅ | testCustomFiltering() | 0.01s |
| ✅ | testDescendingSorting() | 0.00s |
| ✅ | testImageLoadingForExistingImage() | 1.21s |
| ✅ | testImageLoadingForNonExistingImage() | 5.17s |
| ✅ | testNoSortingIsDescending() | 0.01s |
| ✅ | testRowDiff() | 0.18s |
| ✅ | testSampleFilter() | 0.03s |
| ✅ | testSampleSectionMapper() | 0.01s |
| ✅ | testWithNoFiltering() | 0.01s |
IsOneOfInNotOneOfCriteareaTest
| ✅ | testCompareIsNotOneOfFailed() | 0.00s |
| ✅ | testCompareIsNotOneOfSuccess() | 0.00s |
| ✅ | testCompareIsOneOfFailed() | 0.01s |
| ✅ | testCompareIsOneOfSuccess() | 0.00s |
| ✅ | testCompareMockDataCrashTest() | 0.00s |
IterableAPIResponseTests
| ✅ | testAuthInHeader() | 0.15s |
| ✅ | testHeadersInGetRequest() | 0.13s |
| ✅ | testHeadersInPostRequest() | 0.13s |
| ✅ | testNetworkTimeoutResponse() | 0.24s |
| ✅ | testNoNetworkResponse() | 0.12s |
| ✅ | testNon200ResponseCode() | 0.18s |
| ✅ | testResponseCode200() | 0.12s |
| ✅ | testResponseCode200WithInvalidJson() | 0.11s |
| ✅ | testResponseCode200WithNoData() | 0.12s |
| ✅ | testResponseCode400WithMessage() | 0.12s |
| ✅ | testResponseCode400WithoutMessage() | 0.13s |
| ✅ | testResponseCode401() | 0.11s |
| ✅ | testResponseCode500() | 6.22s |
| ✅ | testSendRequestWithRetry() | 6.22s |
| ✅ | testTrackConsentError() | 0.16s |
| ✅ | testTrackConsentNetworkError() | 0.11s |
| ✅ | testTrackConsentRequestFormat() | 0.12s |
| ✅ | testTrackConsentSuccess() | 0.14s |
| ✅ | testTrackConsentWithOnlyTimestamp() | 0.13s |
IterableAPITests
| ✅ | testDisableDeviceForAllUsers() | 0.12s |
| ✅ | testDisableDeviceForAllUsersWithoutCallback() | 0.13s |
| ✅ | testDisableDeviceForCurrentUser() | 0.12s |
| ✅ | testDisableDeviceForCurrentUserWithoutCallback() | 0.16s |
| ✅ | testDisableDeviceNotRegistered() | 0.12s |
| ✅ | testEmailPersistence() | 0.13s |
| ✅ | testGetInAppMessagesFunction() | 0.31s |
| ✅ | testInAppConsume() | 0.12s |
| ✅ | testInitialize() | 0.11s |
| ✅ | testInitializeCheckEndpoint() | 0.16s |
| ✅ | testInitializeWithConfig() | 0.11s |
| ✅ | testInitializeWithDefaultDataRegion() | 0.11s |
| ✅ | testInitializeWithEUDataRegion() | 0.12s |
| ✅ | testInitializeWithLaunchOptionsAndCustomAction() | 0.15s |
| ✅ | testInitializeWithLaunchOptionsAndUrl() | 0.11s |
| ✅ | testInitializeWithNewEndpoint() | 0.20s |
| ✅ | testPurchaseWithoutSuccessAndFailure() | 0.12s |
| ✅ | testRegisterToken() | 0.14s |
| ✅ | testRegisterTokenNilAppName() | 0.11s |
| ✅ | testRegisterTokenNilEmailAndUserId() | 0.11s |
| ✅ | testSetEmailWithCallbackFailure() | 0.16s |
| ✅ | testSetEmailWithCallbackSuccess() | 0.13s |
| ✅ | testSetUserIdWithCallbackFailure() | 0.15s |
| ✅ | testSetUserIdWithCallbackSuccess() | 0.12s |
| ✅ | testSetVisitorUsageTrackedClearsConsentTimestamp() | 0.11s |
| ✅ | testSetVisitorUsageTrackedMultipleCalls() | 0.14s |
| ✅ | testSetVisitorUsageTrackedStoresConsentTimestamp() | 0.11s |
| ✅ | testSetVisitorUsageTrackedStoresTimestampInMilliseconds() | 0.11s |
| ✅ | testTrackEventBadNetwork() | 6.25s |
| ✅ | testTrackEventWithEmail() | 0.13s |
| ✅ | testTrackEventWithEmail2() | 0.21s |
| ✅ | testTrackEventWithNoEmailOrUser() | 0.11s |
| ✅ | testTrackInAppConsumeWithSource() | 0.15s |
| ✅ | testTrackPurchaseNoUserIdOrEmail() | 0.13s |
| ✅ | testTrackPurchaseWithEmail() | 0.14s |
| ✅ | testTrackPurchaseWithUserId() | 0.19s |
| ✅ | testTrackPurchaseWithUserId2() | 0.12s |
| ✅ | testTrackPushOpen() | 0.14s |
| ✅ | testTrackPushOpenWithCallback() | 0.20s |
| ✅ | testTrackPushOpenWithCampaignIdEtc() | 0.16s |
| ✅ | testTrackPushOpenWithCampaignIdEtcWithCallback() | 0.12s |
| ✅ | testTrackPushOpenWithDataFields() | 0.14s |
| ✅ | testUpdateCart() | 0.13s |
| ✅ | testUpdateEmailWithEmail() | 0.15s |
| ✅ | testUpdateEmailWithUserId() | 0.11s |
| ✅ | testUpdateSubscriptions() | 0.12s |
| ✅ | testUpdateUserWithEmail() | 0.34s |
| ✅ | testUpdateUserWithUserId() | 0.13s |
| ✅ | testUpgradeJWTToken() | 0.24s |
| ✅ | testUserIdPersistence() | 0.12s |
IterableApiCriteriaFetchTests
| ✅ | testCriteriaFetchNotCalledWhenDisabled() | 15.19s |
| ✅ | testForegroundCriteriaFetchWhenConditionsMet() | 5.23s |
| ✅ | testForegroundCriteriaFetchWithCooldown() | 20.28s |
IterableDataRegionObjCTests
| ✅ | testIterableDataRegionIsAccessibleFromObjectiveC | 0.00s |
IterableHtmlMessageViewControllerTests
| ✅ | testBottomAnimation() | 0.00s |
| ✅ | testCenterAnimation() | 0.00s |
| ✅ | testFullAnimation() | 0.00s |
| ✅ | testTopAnimation() | 0.00s |
| ✅ | testTrackInAppClick() | 0.11s |
| ✅ | testTrackInAppClose() | 0.10s |
| ✅ | testTrackInAppOpen() | 0.01s |
| ✅ | testWebViewBottomPositioning() | 0.00s |
| ✅ | testWebViewBottomPositioningWithSafeAreaInsets() | 0.01s |
| ✅ | testWebViewCenterPositioning() | 0.00s |
| ✅ | testWebViewFullPositioning() | 0.00s |
| ✅ | testWebViewTopPositioning() | 0.02s |
| ✅ | testWebViewTopPositioningWithSafeAreaInsets() | 0.00s |
IterableInboxViewControllerTests
| ✅ | testInitializers() | 0.69s |
IterableRequestTests
| ✅ | testGetRequestSerialization() | 0.01s |
| ✅ | testGetRequestSerializationWithNilArgs() | 0.00s |
| ✅ | testPostRequestSerialization() | 0.01s |
| ✅ | testPostRequestSerializationWithNilBody() | 0.00s |
IterableRequestUtilTests
| ✅ | testDictToJsonData() | 0.00s |
| ✅ | testGetRequest() | 0.01s |
| ✅ | testGetRequestWithPlusSignInEmail() | 0.00s |
| ✅ | testPostRequest() | 0.00s |
IterableUtilTests
| ✅ | testDifferentGeneralSeparator() | 0.00s |
| ✅ | testDifferentPairSeparator() | 0.00s |
| ✅ | testEmptyDescribe() | 0.00s |
| ✅ | testSingleElementDescribe() | 0.04s |
KeychainWrapperTests
| ✅ | testDelete() | 0.01s |
| ✅ | testRemoveAll() | 0.01s |
| ✅ | testRewrite() | 0.01s |
| ✅ | testSave() | 0.01s |
LocalStorageTests
| ✅ | testAttributionInfo() | 0.02s |
| ✅ | testAuthDataInKeychain() | 0.01s |
| ✅ | testAuthToken() | 0.01s |
| ✅ | testDDLChecked() | 0.00s |
| ✅ | testDeviceId() | 0.00s |
| ✅ | testOfflineMode() | 0.00s |
| ✅ | testSdkVersion() | 0.00s |
| ✅ | testUserIdAndEmail() | 0.01s |
| ✅ | testVisitorConsentTimestamp() | 0.00s |
LoggingTests
| ✅ | testLogging() | 0.11s |
NestedFieldSupportForArrayData
| ✅ | testNestedFieldArrayEventValueFail() | 0.01s |
| ✅ | testNestedFieldArrayUserValueFail() | 0.00s |
| ✅ | testNestedFieldArrayValueEventSuccess() | 0.00s |
| ✅ | testNestedFieldArrayValueUserSuccess() | 0.00s |
| ✅ | testNestedFieldFailed() | 0.00s |
| ✅ | testNestedFieldSuccess() | 0.00s |
NotificationMetadataTests
| ✅ | testDeserializedFromIterableJson() | 0.00s |
| ✅ | testInvalidPayloads() | 0.00s |
| ✅ | testValidGhostPayload() | 0.00s |
| ✅ | testValidProofPayload() | 0.00s |
| ✅ | testValidProofPayloadNoCampaignId() | 0.00s |
| ✅ | testValidRealPayload() | 0.00s |
| ✅ | testValidTestPayload() | 0.00s |
NotificationObserverTests
| ✅ | testNotificationStateChangeUpdatesStorage() | 0.24s |
NotificationResponseTests
| ✅ | testActionButtonDismiss() | 0.00s |
| ✅ | testLegacyDeepLinkPayload() | 0.00s |
| ✅ | testSaveAttributionInfo() | 0.11s |
| ✅ | testTrackOpenPushWithCustomAction() | 0.00s |
OrderedDictionaryTests
| ✅ | testNonExistentKey() | 0.00s |
| ✅ | testOrderedDictCount() | 0.00s |
| ✅ | testOrderedDictDescription() | 0.00s |
| ✅ | testOrderedDictLiteralInit() | 0.00s |
| ✅ | testOrderedDictSubscript() | 0.00s |
| ✅ | testRemoveValue() | 0.00s |
PendingTests
| ✅ | testFlatMap() | 1.01s |
| ✅ | testFlatMapFailure1() | 1.01s |
| ✅ | testFlatMapFailure2() | 1.01s |
| ✅ | testFutureInitWithFailure() | 1.01s |
| ✅ | testFutureInitWithSuccess() | 1.00s |
| ✅ | testMap() | 1.00s |
| ✅ | testMapFailure() | 1.01s |
| ✅ | testMultiValues() | 0.00s |
| ✅ | testWaitUntilFinished() | 0.41s |
RegistrationTests
| ✅ | testRegisterTokenWithAutoPlatformAndNoIntegrationNameChooseProduction() | 0.15s |
| ✅ | testRegisterTokenWithAutoPlatformAndNoIntegrationNameChooseSandbox() | 0.11s |
| ✅ | testRegisterTokenWithAutoPlatformChooseProduction() | 0.13s |
| ✅ | testRegisterTokenWithAutoPlatformChooseSandbox() | 0.11s |
| ✅ | testRegisterTokenWithProductionPlatform() | 0.12s |
| ✅ | testRegisterTokenWithSandboxPlatform() | 0.11s |
RequestCreatorTests
| ✅ | testCreateTrackConsentRequestMinimal() | 0.00s |
| ✅ | testCreateTrackConsentRequestWithBothEmailAndUserId() | 0.00s |
| ✅ | testCreateTrackConsentRequestWithEmail() | 0.00s |
| ✅ | testCreateTrackConsentRequestWithUserId() | 0.00s |
| ✅ | testFaultyTrackInboxSessionRequest() | 0.00s |
| ✅ | testGetInAppMessagesRequest() | 0.00s |
| ✅ | testGetInAppMessagesRequestFailure() | 0.00s |
| ✅ | testProcessorTypeOfflineInHeader() | 0.00s |
| ✅ | testRegisterTokenRequestPrefersUserId() | 0.01s |
| ✅ | testTrackEventRequest() | 0.00s |
| ✅ | testTrackInAppClickRequest() | 0.00s |
| ✅ | testTrackInAppCloseRequest() | 0.00s |
| ✅ | testTrackInAppConsumeRequest() | 0.00s |
| ✅ | testTrackInAppDeliveryRequest() | 0.00s |
| ✅ | testTrackInAppOpenRequest() | 0.00s |
| ✅ | testTrackInboxSession() | 0.01s |
| ✅ | testUpdateSubscriptionsRequest() | 0.00s |
| ✅ | testUserlessTrackInboxSessionRequest() | 0.01s |
| ✅ | testUserlessUpdateSubscriptionsRequest() | 0.00s |
| ✅ | testUserlessUpdateUserRequest() | 0.00s |
UnknownUserComplexCriteriaMatchTests
| ✅ | testCompareDataWithCriteria1Failure() | 0.00s |
| ✅ | testCompareDataWithCriteria1Success() | 0.00s |
| ✅ | testCompareDataWithCriteria2Failure() | 0.01s |
| ✅ | testCompareDataWithCriteria2Success() | 0.00s |
| ✅ | testCompareDataWithCriteria3Failure() | 0.00s |
| ✅ | testCompareDataWithCriteria3Success() | 0.00s |
| ✅ | testCompareDataWithCriteria4Failure() | 0.00s |
| ✅ | testCompareDataWithCriteria4Success() | 0.00s |
UnknownUserCriteriaIsSetTests
| ✅ | testCompareDataIsSetCustomEventFailure() | 0.00s |
| ✅ | testCompareDataIsSetCustomEventSuccess() | 0.00s |
| ✅ | testCompareDataIsSetPurchaseFailure() | 0.00s |
| ✅ | testCompareDataIsSetPurchaseSuccess() | 0.00s |
| ✅ | testCompareDataIsSetUpdateCartFailure() | 0.00s |
| ✅ | testCompareDataIsSetUpdateCartSuccess() | 0.00s |
| ✅ | testCompareDataIsSetUserPropertyFailure() | 0.00s |
| ✅ | testCompareDataIsSetUserPropertySuccess() | 0.00s |
UnknownUserCriteriaMatchTests
| ✅ | testCompareDataWithANDCombinatorFail() | 0.00s |
| ✅ | testCompareDataWithANDCombinatorSuccess() | 0.00s |
| ✅ | testCompareDataWithCustomEventCriteriaFailure() | 0.00s |
| ✅ | testCompareDataWithCustomEventCriteriaSuccess() | 0.01s |
| ✅ | testCompareDataWithMinMatchCriteriaFailure() | 0.00s |
| ✅ | testCompareDataWithMinMatchCriteriaSuccess() | 0.00s |
| ✅ | testCompareDataWithORCombinatorFail() | 0.00s |
| ✅ | testCompareDataWithORCombinatorSuccess() | 0.00s |
| ✅ | testCompareDataWithUpdateCartCriteriaFailure() | 0.00s |
| ✅ | testCompareDataWithUpdateCartCriteriaSuccess() | 0.00s |
| ✅ | testCompareDataWithUserCriteriaFailure() | 0.00s |
| ✅ | testCompareDataWithUserCriteriaSuccess() | 0.02s |
UserMergeScenariosTests
| ✅ | testCriteriaMetEmailDefault() | 3.16s |
| ✅ | testCriteriaMetEmailMergeFalse() | 3.12s |
| ✅ | testCriteriaMetEmailMergeTrue() | 3.15s |
| ✅ | testCriteriaMetTwice() | 3.19s |
| ✅ | testCriteriaMetUserIdDefault() | 3.21s |
| ✅ | testCriteriaMetUserIdMergeFalse() | 3.18s |
| ✅ | testCriteriaMetUserIdMergeTrue() | 6.19s |
| ✅ | testCriteriaNotMetEmailDefault() | 5.20s |
| ✅ | testCriteriaNotMetEmailReplayFalseMergeFalse() | 5.20s |
| ✅ | testCriteriaNotMetEmailReplayFalseMergeTrue() | 5.22s |
| ✅ | testCriteriaNotMetEmailReplayTrueMergeFalse() | 0.16s |
| ✅ | testCriteriaNotMetUserIdDefault() | 5.22s |
| ✅ | testCriteriaNotMetUserIdReplayFalseMergeFalse() | 5.21s |
| ✅ | testCriteriaNotMetUserIdReplayFalseMergeTrue() | 5.19s |
| ✅ | testCriteriaNotMetUserIdReplayTrueMergeFalse() | 0.14s |
| ✅ | testIdentifiedEmailDefault() | 3.15s |
| ✅ | testIdentifiedEmailMergeFalse() | 3.13s |
| ✅ | testIdentifiedEmailMergeTrue() | 6.25s |
| ✅ | testIdentifiedUserIdDefault() | 3.20s |
| ✅ | testIdentifiedUserIdMergeFalse() | 3.17s |
| ✅ | testIdentifiedUserIdMergeTrue() | 6.23s |
ValidateCustomEventUserUpdateAPITest
| ✅ | testCriteriaCustomEventCheck() | 12.27s |
ValidateStoredEventCheckUnknownToKnownUserTest
| ✅ | testCriteriaCustomEventCheck() | 6.39s |
ValidateTokenForDestinationUserTest
| ✅ | testCriteriaEmailTokenCheck() | 5.23s |
| ✅ | testCriteriaUserIdTokenCheck() | 5.20s |
WebViewProtocolTests
| ✅ | testVerifyViewPosition() | 0.05s |
| ✅ | testWebViewHeightCalculationReject() | 1.36s |
ui-tests
Tests
| All tests | 0.00s |
notification-extension-tests
NotificationExtensionTests
| ✅ | testAddActionButtonWithSystemImageIcon() | 0.13s |
| ✅ | testAddActionButtonWithTemplateImageIcon() | 0.08s |
| ✅ | testNilActionButtonIcon() | 0.07s |
| ✅ | testPushButtonWithNoType() | 0.07s |
| ✅ | testPushDestructiveSilentActionButton() | 0.07s |
| ✅ | testPushDynamicCategory() | 0.08s |
| ✅ | testPushImageAttachment() | 1.03s |
| ✅ | testPushIncorrectAttachment() | 0.02s |
| ✅ | testPushTextInputForegroundButton() | 0.07s |
| ✅ | testPushTextInputSilentButton() | 0.07s |
| ✅ | testPushVideoAttachment() | 0.52s |
TestFileTests
| ✅ | testSayHello() | 0.00s |
inbox-ui-tests
Tests
| All tests | 0.00s |
offline-events-tests
HealthMonitorTests
| ✅ | testCountTasksException() | 0.35s |
| ✅ | testNextTaskException() | 0.14s |
| ✅ | testScheduleTaskException() | 0.15s |
| ✅ | testUseOfflineProcessorByDefault() | 0.20s |
NetworkConnectivityCheckerTests
| ✅ | testIsConnected() | 0.00s |
| ✅ | testIsConnectedByDefault() | 0.43s |
| ✅ | testIsNotConnectedIfError() | 0.10s |
| ✅ | testIsNotConnectedIfWrongStatus() | 0.00s |
NetworkConnectivityManagerTests
| ✅ | testConnectivityChange() | 2.04s |
| ✅ | testNetworkMonitor() | 2.01s |
| ✅ | testOfflinePollingInterval() | 0.51s |
| ✅ | testOnlinePollingInterval() | 0.51s |
| ✅ | testPollingNetworkMonitor() | 4.01s |
RequestHandlerTests
| ✅ | testCreatedAtSentAtForOffline() | 0.21s |
| ✅ | testCreatedAtSentAtForOnline() | 0.09s |
| ✅ | testDefaultRemoteConfigurationUsesOnlineMode() | 0.19s |
| ✅ | testDisableUserforAllUsers() | 0.27s |
| ✅ | testDisableUserforCurrentUser() | 0.25s |
| ✅ | testFeatureFlagTurnOnOfflineMode() | 0.34s |
| ✅ | testGetRemoteConfiguration() | 0.02s |
| ✅ | testLoadOfflineModeDisabledFromLocalStorage() | 0.11s |
| ✅ | testLoadOfflineModeEnabledFromLocalStorage() | 0.23s |
| ✅ | testNoRemoteConfigurationUsesOnline() | 0.14s |
| ✅ | testRegister() | 0.05s |
| ✅ | testTrackEvent() | 0.46s |
| ✅ | testTrackInAppClick2() | 0.24s |
| ✅ | testTrackInAppClose() | 0.15s |
| ✅ | testTrackInAppConsume() | 0.16s |
| ✅ | testTrackInAppConsume2() | 0.13s |
| ✅ | testTrackInAppDelivery() | 0.05s |
| ✅ | testTrackInAppOpen2() | 0.05s |
| ✅ | testTrackPurchase() | 0.08s |
| ✅ | testTrackPurchase2() | 0.04s |
| ✅ | testTrackPushOpen() | 0.15s |
| ✅ | testUpdateEmail() | 0.06s |
| ✅ | testUpdateSubscriptions() | 0.09s |
| ✅ | testUpdateUser() | 0.06s |
TaskProcessorTests
| ✅ | testAPICallForTrackEventWithPersistence() | 0.17s |
| ✅ | testCreatedAtInBody() | 0.01s |
| ✅ | testNetworkAvailable() | 0.01s |
| ✅ | testNetworkUnavailable() | 0.02s |
| ✅ | testSentAtInHeader() | 0.01s |
| ✅ | testUnrecoverableError() | 0.02s |
TaskRunnerTests
| ✅ | testDoNotRunWhenNetworkIsOffline() | 1.03s |
| ✅ | testFailureWithNoRetry() | 1.07s |
| ✅ | testFailureWithRetry() | 1.07s |
| ✅ | testForegroundBackgroundChange() | 1.03s |
| ✅ | testMultipleTasksInSequence() | 1.05s |
| ✅ | testResumeWhenNetworkIsBackOnline() | 2.04s |
| ✅ | testSentAtInHeader() | 0.04s |
TasksCRUDTests
| ✅ | testCountTasks() | 0.01s |
| ✅ | testCreate() | 0.00s |
| ✅ | testDelete() | 0.00s |
| ✅ | testFindAll() | 0.01s |
| ✅ | testFindNextTask() | 0.01s |
| ✅ | testUpdate() | 0.01s |
Tests
| TaskSchedulerTests | 0.00s |
Skipped Tests
| Test Name | Duration |
|---|---|
| AuthTests/testOnNewAuthTokenCallbackCalled | 0.00s |
| AuthTests/testRetryJwtFailure | 0.00s |
| HealthMonitorTests/testDeleteAllTasksException | 0.00s |
| InAppPresenterTests/testInAppPresenterTimerFinished | 0.00s |
| InAppTests/testIgnoreReadMessagesOnProcessing | 0.00s |
| InAppTests/testMultipleMesssagesInShortTime | 0.00s |
| IterableAPIResponseTests/testRetryOnInvalidJwtPayload | 0.00s |
| RequestHandlerTests/testDeleteAllTasksOnLogout | 0.00s |
| RequestHandlerTests/testTrackInAppClick | 0.00s |
| RequestHandlerTests/testTrackInAppOpen | 0.00s |
| RequestHandlerTests/testTrackInboxSession | 0.00s |
| TaskRunnerTests/testCreatedAtInBody | 0.00s |
| TaskSchedulerTests/testScheduleTask | 0.00s |
Details
Code Coverage Results
Coverage for TestResults.xcresult
Code Coverage
| Target | Coverage | Covered | Executable | |
|---|---|---|---|---|
| Total | ██████████████░░░░░░ | 71.32% | 10883 | 15259 |
| IterableAppExtensions.framework | ████████████████░░░░ | 83.28% | 264 | 317 |
| ITBNotificationServiceExtension.swift | ████████████████░░░░ | 80.85% | 152 | 188 |
| NotificationContentParser.swift | █████████████████░░░ | 86.51% | 109 | 126 |
| TestFile.swift | ████████████████████ | 100.00% | 3 | 3 |
| IterableSDK.framework | ██████████████░░░░░░ | 71.07% | 10619 | 14942 |
| AbstractDiffCalculator.swift | ░░░░░░░░░░░░░░░░░░░░ | 0.00% | 0 | 36 |
| ActionRunner.swift | █████████████████░░░ | 87.50% | 63 | 72 |
| ApiClient.swift | ████████████████░░░░ | 81.67% | 245 | 300 |
| APNSTypeChecker.swift | █████████████████░░░ | 86.32% | 82 | 95 |
| AppExtensionHelper.swift | ██████░░░░░░░░░░░░░░ | 34.29% | 12 | 35 |
| Auth.swift | ██████████████████░░ | 90.91% | 10 | 11 |
| AuthFailure.swift | ████████████████████ | 100.00% | 6 | 6 |
| AuthManager.swift | ███████████████████░ | 95.72% | 291 | 304 |
| ClassExtensions.swift | ██████████████████░░ | 90.48% | 95 | 105 |
| CommerceItem.swift | ████████████████████ | 100.00% | 44 | 44 |
| Constants.swift | ███████████████████░ | 97.62% | 41 | 42 |
| CoreDataUtil.swift | █████████████░░░░░░░ | 69.49% | 41 | 59 |
| DataFieldsHelper.swift | ██████████████████░░ | 93.67% | 74 | 79 |
| DateProvider.swift | ████████████████████ | 100.00% | 4 | 4 |
| DeepLinkManager.swift | ██████████████████░░ | 92.68% | 114 | 123 |
| DependencyContainer.swift | ░░░░░░░░░░░░░░░░░░░░ | 0.00% | 0 | 21 |
| DependencyContainerProtocol.swift | █████████████████░░░ | 86.49% | 96 | 111 |
| Dwifft+UIKit.swift | ░░░░░░░░░░░░░░░░░░░░ | 0.00% | 0 | 80 |
| Dwifft.swift | ███████████████░░░░░ | 78.95% | 255 | 323 |
| EmbeddedHelper.swift | ░░░░░░░░░░░░░░░░░░░░ | 0.00% | 0 | 53 |
| EmbeddedMessagingProcessor.swift | ███████████████████░ | 97.67% | 42 | 43 |
| EmbeddedMessagingSerialization.swift | ░░░░░░░░░░░░░░░░░░░░ | 0.00% | 0 | 96 |
| EmbeddedSessionManager.swift | ░░░░░░░░░░░░░░░░░░░░ | 0.00% | 0 | 85 |
| EmptyEmbeddedManager.swift | ░░░░░░░░░░░░░░░░░░░░ | 0.00% | 0 | 30 |
| EmptyInAppManager.swift | █████████████████░░░ | 85.71% | 36 | 42 |
| HealthMonitor.swift | █████████████████░░░ | 86.54% | 90 | 104 |
| InAppCalculations.swift | █████████████░░░░░░░ | 66.12% | 80 | 121 |
| InAppContentParser.swift | █████████████████░░░ | 85.71% | 144 | 168 |
| InAppDisplayer.swift | ██████░░░░░░░░░░░░░░ | 32.39% | 23 | 71 |
| InAppHelper.swift | ███████████████████░ | 98.89% | 89 | 90 |
| InAppInternal.swift | ███████░░░░░░░░░░░░░ | 39.58% | 19 | 48 |
| InAppManager+Functions.swift | ████████████████████ | 100.00% | 139 | 139 |
| InAppManager.swift | ██████████████████░░ | 93.62% | 631 | 674 |
| InAppMessageParser.swift | ███████████████████░ | 98.14% | 158 | 161 |
| InAppPersistence.swift | ████████████████░░░░ | 81.34% | 292 | 359 |
| InAppPresenter.swift | ███████████████░░░░░ | 79.22% | 61 | 77 |
| InboxImpressionTracker.swift | ███████████████████░ | 96.39% | 80 | 83 |
| InboxMessageViewModel.swift | ████████████████████ | 100.00% | 39 | 39 |
| InboxSessionManager.swift | █████████████████░░░ | 88.46% | 46 | 52 |
| InboxState.swift | ████████████░░░░░░░░ | 61.82% | 34 | 55 |
| InboxViewControllerViewModel.swift | ████████░░░░░░░░░░░░ | 42.93% | 176 | 410 |
| InboxViewRepresentable.swift | ░░░░░░░░░░░░░░░░░░░░ | 0.00% | 0 | 15 |
| InternalIterableAPI.swift | ██████████████████░░ | 91.52% | 993 | 1085 |
| InternalIterableAppIntegration.swift | ████████████████░░░░ | 80.08% | 189 | 236 |
| IterableAction.swift | ████████████████████ | 100.00% | 17 | 17 |
| IterableActionContext.swift | ████████████████████ | 100.00% | 4 | 4 |
| IterableAPI.swift | ███░░░░░░░░░░░░░░░░░ | 19.89% | 70 | 352 |
| IterableAPICallRequest.swift | ███████████████████░ | 98.39% | 61 | 62 |
| IterableAPICallTaskProcessor.swift | ███████████████████░ | 96.36% | 53 | 55 |
| IterableAPIMobileFrameworkDetector.swift | ███████████████░░░░░ | 79.37% | 50 | 63 |
| IterableAppIntegration.swift | ░░░░░░░░░░░░░░░░░░░░ | 0.00% | 0 | 21 |
| IterableAttributionInfo.swift | ████████████████████ | 100.00% | 25 | 25 |
| IterableConfig.swift | ████████████████████ | 100.00% | 20 | 20 |
| IterableCoreDataPersistence.swift | █████████████████░░░ | 89.57% | 146 | 163 |
| IterableEmbeddedManager.swift | █████████████░░░░░░░ | 68.00% | 187 | 275 |
| IterableEmbeddedMessage.swift | ████████████████████ | 100.00% | 16 | 16 |
| IterableEmbeddedView.swift | ░░░░░░░░░░░░░░░░░░░░ | 0.00% | 0 | 384 |
| IterableHtmlMessageViewController.swift | █████████████░░░░░░░ | 69.82% | 236 | 338 |
| IterableIdentityResolution.swift | ████████████████████ | 100.00% | 4 | 4 |
| IterableInAppMessage.swift | ████████████████████ | 100.00% | 21 | 21 |
| IterableInboxCell+Layout.swift | ░░░░░░░░░░░░░░░░░░░░ | 0.00% | 0 | 108 |
| IterableInboxCell.swift | ░░░░░░░░░░░░░░░░░░░░ | 0.00% | 0 | 17 |
| IterableInboxNavigationViewController.swift | ░░░░░░░░░░░░░░░░░░░░ | 0.00% | 0 | 155 |
| IterableInboxView.swift | ░░░░░░░░░░░░░░░░░░░░ | 0.00% | 0 | 50 |
| IterableInboxViewController.swift | █░░░░░░░░░░░░░░░░░░░ | 6.64% | 30 | 452 |
| IterableKeychain.swift | █████████████░░░░░░░ | 68.83% | 53 | 77 |
| IterableLogging.swift | █████████████████░░░ | 88.89% | 24 | 27 |
| IterableLogUtil.swift | ████████████████████ | 100.00% | 39 | 39 |
| IterableMessaging.swift | ████████████████░░░░ | 82.76% | 24 | 29 |
| IterableNotifications.swift | ████████████████░░░░ | 84.21% | 32 | 38 |
| IterablePersistence.swift | ████████████████████ | 100.00% | 6 | 6 |
| IterablePushNotificationMetadata.swift | ████████████████████ | 100.00% | 16 | 16 |
| IterableRequest.swift | ███████████████████░ | 96.77% | 60 | 62 |
| IterableRequestUtil.swift | ███████████████████░ | 95.56% | 86 | 90 |
| IterableTask.swift | ████████████████░░░░ | 82.93% | 34 | 41 |
| IterableTaskError.swift | ████████████░░░░░░░░ | 60.00% | 6 | 10 |
| IterableTaskManagedObject.swift | ░░░░░░░░░░░░░░░░░░░░ | 0.00% | 0 | 3 |
| IterableTaskRunner.swift | ██████████████████░░ | 93.99% | 360 | 383 |
| IterableTaskScheduler.swift | ██████████████░░░░░░ | 71.60% | 58 | 81 |
| IterableTokenGenerator.swift | ░░░░░░░░░░░░░░░░░░░░ | 0.00% | 0 | 78 |
| IterableUserDefaults.swift | █████████░░░░░░░░░░░ | 46.43% | 117 | 252 |
| IterableUtil.swift | ████████████░░░░░░░░ | 60.00% | 114 | 190 |
| KeychainWrapper.swift | ███████████████████░ | 97.87% | 92 | 94 |
| LocalStorage.swift | ███████████░░░░░░░░░ | 57.93% | 84 | 145 |
| LocalStorageProtocol.swift | ░░░░░░░░░░░░░░░░░░░░ | 0.00% | 0 | 2 |
| MiscEmbeddedClasses.swift | ░░░░░░░░░░░░░░░░░░░░ | 0.00% | 0 | 13 |
| MiscInboxClasses.swift | ████████████████████ | 100.00% | 16 | 16 |
| NetworkConnectivityChecker.swift | ███████████████████░ | 98.39% | 122 | 124 |
| NetworkConnectivityManager.swift | ███████████████████░ | 95.60% | 87 | 91 |
| NetworkHelper.swift | ███████████████████░ | 97.96% | 240 | 245 |
| NetworkMonitor.swift | ████████████████████ | 100.00% | 28 | 28 |
| NetworkSession.swift | ░░░░░░░░░░░░░░░░░░░░ | 3.33% | 3 | 90 |
| NotificationHelper.swift | ███████████████████░ | 98.59% | 70 | 71 |
| OfflineRequestProcessor.swift | █████████████░░░░░░░ | 66.21% | 335 | 506 |
| OnlineRequestProcessor.swift | ████████████████░░░░ | 83.53% | 213 | 255 |
| OrderedDictionary.swift | ██████████████████░░ | 91.84% | 90 | 98 |
| Pending.swift | ██████████████████░░ | 92.02% | 219 | 238 |
| PersistenceHelper.swift | ███████████████████░ | 97.14% | 34 | 35 |
| RequestCreator.swift | ███████████████░░░░░ | 75.49% | 536 | 710 |
| RequestHandler.swift | ███████████████░░░░░ | 77.95% | 297 | 381 |
| RequestProcessorUtil.swift | █████████████████░░░ | 89.33% | 201 | 225 |
| RequestSender.swift | ████████████████████ | 100.00% | 92 | 92 |
| ResourceHelper.swift | █████████████████░░░ | 88.89% | 16 | 18 |
| RetryPolicy.swift | ████████████████████ | 100.00% | 5 | 5 |
| SectionedValues.swift | ████████████░░░░░░░░ | 64.44% | 29 | 45 |
| UIColor+Extension.swift | ████░░░░░░░░░░░░░░░░ | 23.81% | 5 | 21 |
| UnknownUserManager+Functions.swift | █████████████████░░░ | 86.42% | 700 | 810 |
| UnknownUserManager.swift | ███████████████░░░░░ | 78.41% | 236 | 301 |
| UnknownUserMerge.swift | █████████████████░░░ | 87.50% | 28 | 32 |
| WebViewProtocol.swift | ██████████████████░░ | 92.68% | 38 | 41 |
Loading