Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

CHNL-12941: Add badge count instructions to README #247

Closed
wants to merge 5 commits into from

verbiage

626db28
Select commit
Loading
Failed to load commit list.
Sign in for the full log view
Closed

CHNL-12941: Add badge count instructions to README #247

verbiage
626db28
Select commit
Loading
Failed to load commit list.
GitHub Actions / Xcode test results succeeded Jan 2, 2025 in 0s

Xcode test results

Testing workspace klaviyo-swift-sdk with scheme klaviyo-swift-sdk-Package

Summary

TotalSuccess PassedFailure FailedSkipped SkippedExpected Failure Expected Failure⏱️ Time
1381380003.10s

Test Summary

KlaviyoCoreTests

  • Device: iPhone 16 Pro, 18.1 (22B81)
  • SDK: Simulator - iOS 18.0, 18.0
TestTotalSuccessFailureSkippedExpected Failure
test-class ArchivalSystemTest11000
test-class ArchivalUtilsTests88000
test-class EncodableTests55000
test-class FileUtilsTests22000
test-class KlaviyoAPITests77000
test-class NetworkSessionTests33000

KlaviyoSwiftTests

  • Device: iPhone 16 Pro, 18.1 (22B81)
  • SDK: Simulator - iOS 18.0, 18.0
TestTotalSuccessFailureSkippedExpected Failure
test-class APIRequestErrorHandlingTests1515000
test-class AppLifeCycleEventsTests1111000
test-class EncodableTests11000
test-class KlaviyoEventTests11000
test-class KlaviyoModelsTest33000
test-class KlaviyoSDKTests1111000
test-class KlaviyoStateTests88000
test-class StateChangePublisherTests33000
test-class StateManagementEdgeCaseTests3030000
test-class StateManagementTests2727000

KlaviyoUITests

  • Device: iPhone 16 Pro, 18.1 (22B81)
  • SDK: Simulator - iOS 18.0, 18.0
TestTotalSuccessFailureSkippedExpected Failure
test-class KlaviyoUITests22000

Failure Failures

All tests passed 🎉


Code Coverage

Coverage Covered Executable
KlaviyoCoreTests 67.97 % 1165 1714
  CreateEventPayload.swift 98.46 % 64 65
  ProfilePayload.swift 100.00 % 44 44
  PushTokenPayload.swift 93.33 % 42 45
  SimpleMockURLProtocol.swift 100.00 % 12 12
  KlaviyoEnvironment.swift 43.12 % 47 109
  FileUtilsTests.swift 84.78 % 39 46
  ArchivalUtilsTests.swift 100.00 % 128 128
  PrivateMethods.swift 0.00 % 0 6
  AppContextInfo.swift 52.05 % 38 73
  UnregisterPushTokenPayload.swift 100.00 % 48 48
  ArchivalUtils.swift 100.00 % 46 46
  KlaviyoAPI.swift 77.59 % 45 58
  KlaviyoRequest.swift 94.74 % 36 38
  AppLifeCycleEvents.swift 100.00 % 75 75
  SDKRequestIterator.swift 0.00 % 0 143
  FileUtils.swift 80.56 % 29 36
  TestUtils.swift 65.28 % 47 72
  CreateProfilePayload.swift 100.00 % 3 3
  LoggerClient.swift 21.43 % 3 14
  PushEnablement.swift 100.00 % 14 14
  EncodableTests.swift 100.00 % 44 44
  ReachabilitySwift.swift 13.00 % 29 223
  NetworkSessionTests.swift 100.00 % 22 22
  KlaviyoAPITests.swift 96.86 % 216 223
  PushBackground.swift 100.00 % 12 12
  NetworkSession.swift 64.10 % 50 78
  KlaviyoEndpoint.swift 86.49 % 32 37
KlaviyoSwift 68.44 % 1919 2804
  Store.swift 48.71 % 151 310
  Misc.swift 33.10 % 47 142
  Cancellation.swift 86.18 % 212 246
  KlaviyoSwiftEnvironment.swift 42.37 % 25 59
  ConcurrencySupport.swift 6.06 % 8 132
  LifecycleEventsExtension.swift 100.00 % 12 12
  KlaviyoState.swift 76.53 % 300 392
  Event.swift 100.00 % 43 43
  StateChangePublisher.swift 43.18 % 19 44
  ProfileAPIExtension.swift 100.00 % 32 32
  Profile.swift 100.00 % 28 28
  Publisher.swift 46.15 % 66 143
  StateManagement.swift 94.08 % 540 574
  Klaviyo.swift 81.60 % 102 125
  Effect.swift 39.58 % 112 283
  Create.swift 90.21 % 129 143
  APIRequestErrorHandling.swift 96.88 % 93 96
KlaviyoSwiftExtension 0.00 % 0 0
KlaviyoSwiftTests 73.22 % 5970 8153
  ConcurrencySupport.swift 6.06 % 8 132
  NetworkSession.swift 64.10 % 50 78
  KlaviyoEnvironment.swift 43.12 % 47 109
  LoggerClient.swift 21.43 % 3 14
  KlaviyoTestUtils.swift 85.71 % 96 112
  SDKRequestIterator.swift 0.00 % 0 143
  Effect.swift 39.58 % 112 283
  Create.swift 90.21 % 129 143
  KlaviyoState.swift 76.53 % 300 392
  EventTests.swift 100.00 % 6 6
  Klaviyo.swift 81.60 % 102 125
  Event.swift 100.00 % 43 43
  TestData.swift 88.46 % 69 78
  Cancellation.swift 86.18 % 212 246
  ProfilePayload.swift 100.00 % 44 44
  KlaviyoStateTests.swift 95.71 % 201 210
  Misc.swift 33.10 % 47 142
  APIRequestErrorHandlingTests.swift 100.00 % 402 402
  APIRequestErrorHandling.swift 96.88 % 93 96
  StateChangePublisherTests.swift 99.18 % 242 244
  ArchivalUtils.swift 100.00 % 46 46
  PushEnablement.swift 100.00 % 14 14
  EncodableTests.swift 100.00 % 26 26
  Store.swift 48.71 % 151 310
  ProfileAPIExtension.swift 100.00 % 32 32
  PushBackground.swift 100.00 % 12 12
  StateManagementEdgeCaseTests.swift 99.25 % 530 534
  Publisher.swift 46.15 % 66 143
  StateManagementTests.swift 99.89 % 920 921
  CreateEventPayload.swift 98.46 % 64 65
  PrivateMethods.swift 0.00 % 0 6
  StateManagement.swift 94.08 % 540 574
  PushTokenPayload.swift 93.33 % 42 45
  CreateProfilePayload.swift 100.00 % 3 3
  KlaviyoEndpoint.swift 86.49 % 32 37
  Profile.swift 100.00 % 28 28
  TestStore.swift 34.17 % 381 1115
  KlaviyoSDKTests.swift 98.00 % 147 150
  KlaviyoRequest.swift 94.74 % 36 38
  LifecycleEventsExtension.swift 100.00 % 12 12
  AppContextInfo.swift 52.05 % 38 73
  KlaviyoModelsTest.swift 100.00 % 132 132
  AppLifeCycleEvents.swift 100.00 % 75 75
  KlaviyoAPI.swift 77.59 % 45 58
  ReachabilitySwift.swift 13.00 % 29 223
  UnregisterPushTokenPayload.swift 100.00 % 48 48
  StateChangePublisher.swift 43.18 % 19 44
  KlaviyoSwiftEnvironment.swift 42.37 % 25 59
  AppLifeCycleEventsTests.swift 96.03 % 242 252
  FileUtils.swift 80.56 % 29 36
KlaviyoUI 0.00 % 0 0
KlaviyoUITests 65.06 % 2598 3993
  SDKRequestIterator.swift 0.00 % 0 143
  ReachabilitySwift.swift 13.00 % 29 223
  KlaviyoAPI.swift 77.59 % 45 58
  Cancellation.swift 86.18 % 212 246
  AppContextInfo.swift 52.05 % 38 73
  KlaviyoSwiftEnvironment.swift 42.37 % 25 59
  KlaviyoEndpoint.swift 86.49 % 32 37
  KlaviyoRequest.swift 94.74 % 36 38
  Event.swift 100.00 % 43 43
  ProfileAPIExtension.swift 100.00 % 32 32
  KlaviyoState.swift 76.53 % 300 392
  Publisher.swift 46.15 % 66 143
  CreateEventPayload.swift 98.46 % 64 65
  Effect.swift 39.58 % 112 283
  ConcurrencySupport.swift 6.06 % 8 132
  Create.swift 90.21 % 129 143
  LoggerClient.swift 21.43 % 3 14
  KlaviyoUITests.swift 100.00 % 22 22
  PushBackground.swift 100.00 % 12 12
  APIRequestErrorHandling.swift 96.88 % 93 96
  Store.swift 48.71 % 151 310
  PushTokenPayload.swift 93.33 % 42 45
  CreateProfilePayload.swift 100.00 % 3 3
  LifecycleEventsExtension.swift 100.00 % 12 12
  PushEnablement.swift 100.00 % 14 14
  PrivateMethods.swift 0.00 % 0 6
  ArchivalUtils.swift 100.00 % 46 46
  KlaviyoEnvironment.swift 43.12 % 47 109
  StateManagement.swift 94.08 % 540 574
  Profile.swift 100.00 % 28 28
  AppLifeCycleEvents.swift 100.00 % 75 75
  Misc.swift 33.10 % 47 142
  NetworkSession.swift 64.10 % 50 78
  FileUtils.swift 80.56 % 29 36
  StateChangePublisher.swift 43.18 % 19 44
  ProfilePayload.swift 100.00 % 44 44
  UnregisterPushTokenPayload.swift 100.00 % 48 48
  Klaviyo.swift 81.60 % 102 125
Total 69.92 % 11652 16664

Details

Test Details

KlaviyoCoreTestsback

ArchivalSystemTest back

SuccessFailureSkippedExpected Failure⏱️
1 (100%)0 (0%)0 (0%)0 (0%)0.00s
Successtest-method testArchiveUnarchive()

ArchivalUtilsTests back

SuccessFailureSkippedExpected Failure⏱️
8 (100%)0 (0%)0 (0%)0 (0%)0.00s
Successtest-method testArchiveFails()
Successtest-method testArchiveUnarchive()
Successtest-method testArchiveWriteFails()
Successtest-method testUnarchive()
Successtest-method testUnarchiveInvalidData()
Successtest-method testUnarchiveUnableToRemoveFile()
Successtest-method testUnarchiveUnarchiveFails()
Successtest-method testUnarchiveWhereFileDoesNotExist()

EncodableTests back

SuccessFailureSkippedExpected Failure⏱️
5 (100%)0 (0%)0 (0%)0 (0%)0.00s
Successtest-method testEventPayload()
Successtest-method testKlaviyoRequest()
Successtest-method testProfilePayload()
Successtest-method testTokenPayload()
Successtest-method testUnregisterTokenPayload()

FileUtilsTests back

SuccessFailureSkippedExpected Failure⏱️
2 (100%)0 (0%)0 (0%)0 (0%)0.00s
Successtest-method testFilePathForData()
Successtest-method testRemoveItemWithError()

KlaviyoAPITests back

SuccessFailureSkippedExpected Failure⏱️
7 (100%)0 (0%)0 (0%)0 (0%)0.00s
Successtest-method testEncodingError()
Successtest-method testInvalidStatusCode()
Successtest-method testInvalidURL()
Successtest-method testNetworkError()
Successtest-method testSuccessfulResponseWithEvent()
Successtest-method testSuccessfulResponseWithProfile()
Successtest-method testSuccessfulResponseWithStoreToken()

NetworkSessionTests back

SuccessFailureSkippedExpected Failure⏱️
3 (100%)0 (0%)0 (0%)0 (0%)0.02s
Successtest-method testCreateEmphemeralSesionHeaders()
Successtest-method testDefaultUserAgent()
Successtest-method testSessionDataTask()

KlaviyoSwiftTestsback

APIRequestErrorHandlingTests back

SuccessFailureSkippedExpected Failure⏱️
15 (100%)0 (0%)0 (0%)0 (0%)0.00s
Successtest-method testMissingOrInvalidResponse()
Successtest-method testRateLimitErrorWithExistingBackoffRetry()
Successtest-method testRateLimitErrorWithExistingRetry()
Successtest-method testRetryWithRetryAfter()
Successtest-method testSendRequestDataEncodingError()
Successtest-method testSendRequestFailureIncrementsRetryCount()
Successtest-method testSendRequestFailureWithBackoff()
Successtest-method testSendRequestHttpFailureDequesRequest()
Successtest-method testSendRequestHttpFailureForEmailResetsStateAndDequesRequest()
Successtest-method testSendRequestHttpFailureForPhoneNumberResetsStateAndDequesRequest()
Successtest-method testSendRequestInternalError()
Successtest-method testSendRequestInternalRequestError()
Successtest-method testSendRequestInvalidData()
Successtest-method testSendRequestMaxRetries()
Successtest-method testSendRequestUnknownError()

AppLifeCycleEventsTests back

SuccessFailureSkippedExpected Failure⏱️
11 (100%)0 (0%)0 (0%)0 (0%)0.00s
Successtest-method testAppBackgroundGetsStopAction()
Successtest-method testAppBackgroundStopsReachability()
Successtest-method testAppBecomeActiveGetsStartAction()
Successtest-method testAppBecomesActiveStartsReachibility()
Successtest-method testAppTerminateGetsStopAction()
Successtest-method testAppTerminateStopsReachability()
Successtest-method testReachabilityNotificationStatusHandled()
Successtest-method testReachabilityStartFailureIsHandled()
Successtest-method testReachabilityStatusNilThenNotNil()
Successtest-method testReachaibilityNotificationGetsRightAction()
Successtest-method testStartReachabilityCalledOnSubscription()

EncodableTests back

SuccessFailureSkippedExpected Failure⏱️
1 (100%)0 (0%)0 (0%)0 (0%)0.01s
Successtest-method testKlaviyoState()

KlaviyoEventTests back

SuccessFailureSkippedExpected Failure⏱️
1 (100%)0 (0%)0 (0%)0 (0%)0.00s
Successtest-method testOpenedPushEvent()

KlaviyoModelsTest back

SuccessFailureSkippedExpected Failure⏱️
3 (100%)0 (0%)0 (0%)0 (0%)0.00s
Successtest-method testEmptyStringIdsConvertToNil()
Successtest-method testProfileModelConvertsToAPIModel()
Successtest-method testProfileWithNoIdsModelConvertsToAPIModel()

KlaviyoSDKTests back

SuccessFailureSkippedExpected Failure⏱️
11 (100%)0 (0%)0 (0%)0 (0%)1.02s
Successtest-method testCreateEvent()
Successtest-method testCreateEventFromDocumentation()
Successtest-method testHandlePushNotification()
Successtest-method testInitializeSDk()
Successtest-method testKlaviyoSDKInit()
Successtest-method testPropertyGetters()
Successtest-method testSetExternalId()
Successtest-method testSetFirstName()
Successtest-method testSetProfile()
Successtest-method testSetPushToken()
Successtest-method testUnhandlePushNotification()

KlaviyoStateTests back

SuccessFailureSkippedExpected Failure⏱️
8 (100%)0 (0%)0 (0%)0 (0%)0.52s
Successtest-method testBackgroundStates()
Successtest-method testFullKlaviyoStateEncodingDecodingIsEqual()
Successtest-method testLoadNewKlaviyoState()
Successtest-method testPushEnablementStates()
Successtest-method testSaveKlaviyoStateWithMissingApiKeyLogsError()
Successtest-method testStateFileExistsInvalidData()
Successtest-method testStateFileExistsInvalidJSON()
Successtest-method testValidStateFileExists()

StateChangePublisherTests back

SuccessFailureSkippedExpected Failure⏱️
3 (100%)0 (0%)0 (0%)0 (0%)0.00s
Successtest-method testQuickStateUpdatesTriggerOnlyOneSaves()
Successtest-method testStateChangeDuplicateAreRemoved()
Successtest-method testStateChangePublisher()

StateManagementEdgeCaseTests back

SuccessFailureSkippedExpected Failure⏱️
30 (100%)0 (0%)0 (0%)0 (0%)0.00s
Successtest-method testCompleteInitializationWhileAlreadyInitialized()
Successtest-method testCompleteInitializationWithExistingIdentifiers()
Successtest-method testDefaultBadgeClearingOff()
Successtest-method testDefaultBadgeClearingOn()
Successtest-method testEnqueueNonOpenedPushEventUninitializedDoesNotAddToPendingRequest()
Successtest-method testInitializeAfterInitialized()
Successtest-method testInitializeWhileInitializing()
Successtest-method testNetworkStatusChangedUninitialized()
Successtest-method testOpenedPushEventUninitializedAddsToPendingRequests()
Successtest-method testSendRequestBeforeInitialization()
Successtest-method testSetEmailMissingAnonymousIdStillSetsEmail()
Successtest-method testSetEmailUninitializedDoesNotAddToPendingRequest()
Successtest-method testSetEmailWithWhiteSpace()
Successtest-method testSetEmptyEmail()
Successtest-method testSetEmptyExternalId()
Successtest-method testSetEmptyPhoneNumber()
Successtest-method testSetExternalIdMissingAnonymousIdStillSetsExternalId()
Successtest-method testSetExternalIdUninitializedDoesNotAddToPendingRequest()
Successtest-method testSetExternalIdWithWhiteSpaces()
Successtest-method testSetPhoneNumberMissingApiKeyStillSetsPhoneNumber()
Successtest-method testSetPhoneNumberUninitializedDoesNotAddToPendingRequest()
Successtest-method testSetPhoneNumberWithWhiteSpaces()
Successtest-method testSetProfileUnitialized()
Successtest-method testSetProfileWithEmptyStringIdentifiers()
Successtest-method testSetPushTokenUninitializedDoesNotAddToPendingRequest()
Successtest-method testSetPushTokenWithMissingAnonymousId()
Successtest-method testStartUninitialized()
Successtest-method testStopInitializing()
Successtest-method testStopUninitialized()
Successtest-method testTokenRequestMissingApiKey()

StateManagementTests back

SuccessFailureSkippedExpected Failure⏱️
27 (100%)0 (0%)0 (0%)0 (0%)0.08s
Successtest-method testEmptyQueueDoesNotFlush()
Successtest-method testEnqueueEvents()
Successtest-method testEnqueueEventWhenInitilizingSendsEvent()
Successtest-method testFetchFormsDecodingError()
Successtest-method testFetchForms()
Successtest-method testFlushQueueDuringExponentialBackoff()
Successtest-method testFlushQueueExponentialBackoffGoesToSize()
Successtest-method testFlushQueueWithMultipleRequests()
Successtest-method testFlushUninitializedQueueDoesNotFlush()
Successtest-method testFlushWithPendingProfile()
Successtest-method testInitializeSubscribesToAppropriatePublishers()
Successtest-method testInitialize()
Successtest-method testNetworkConnectivityChanges()
Successtest-method testQueueThatIsFlushingDoesNotFlush()
Successtest-method testSendRequestWhenNotFlushing()
Successtest-method testSendRequestWithNoRequestsInFlight()
Successtest-method testSetEmail()
Successtest-method testSetExternalId()
Successtest-method testSetPhoneNumber()
Successtest-method testSetProfileWithAllProfileIdentifiersAndProperties()
Successtest-method testSetProfileWithExistingProperties()
Successtest-method testSetPushEnablementChanged()
Successtest-method testSetPushEnablementPushTokenIsNil()
Successtest-method testSetPushTokenEnablementChanged()
Successtest-method testSetPushTokenMultipleTimes()