Skip to content

Merge eventLogger branch with master #145

Merge eventLogger branch with master

Merge eventLogger branch with master #145

GitHub Actions / Xcode test results succeeded May 18, 2024 in 0s

Xcode test results

Testing workspace RSDKUtils with scheme TestHost

Summary

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

Test Summary

Tests

  • Device: iPhone 11, 16.2 (20C52)
  • SDK: Simulator - iOS 16.2, 16.2
TestTotalSuccessFailureSkippedExpected Failure
test-class AnalyticsBroadcasterSpec44000
test-class AnyDependenciesContainerSpec55000
test-class AppLifeCycleListenerSpec22000
test-class AtomicWrapperSpec77000
test-class DataExtensionsSpec44000
test-class DictionaryExtensionsSpec44000
test-class EnvironmentInformationSpec99000
test-class KeyStoreSpec77000
test-class LockableSpec88000
test-class NSObjectExtensionsSpec1515000
test-class NimbleExtensionsSpec1010000
test-class OptionalExtensionsSpec2828000
test-class REventLoggerEnvironmentSpec1717000
test-class REventLoggerModuleSpec1212000
test-class REventLoggerSenderSpec77000
test-class REventsSpec33000
test-class REventsStorageSpec66000
test-class RLoggerSpec77000
test-class ReachabilitySpec88000
test-class StandardHeadersSpec33000
test-class StringExtensionsSpec88000
test-class SwiftyDependenciesContainerSpec55000
test-class TypedDependencyManagerSpec44000
test-class UIColorExtensionsSpec1919000
test-class URLSessionExtensionsSpec44000
test-class URLSessionMockSpec1919000
test-class ViewExtensionsSpec44000
test-class XCTestExtensionsSpec33000

Failure Failures

All tests passed 🎉


Code Coverage

Coverage Covered Executable
RSDKUtils.framework 83.91 % 1554 1852
  NimbleExtensions.swift 97.33 % 73 75
  String+Extensions.swift 100.00 % 15 15
  REvent.swift 100.00 % 29 29
  UIView+Extensions.swift 39.29 % 11 28
  AnalyticsBroadcaster.swift 100.00 % 11 11
  UrlSessionProtocol.swift 0.00 % 0 3
  Optional+String.swift 100.00 % 8 8
  URLSession+Extensions.swift 100.00 % 34 34
  DependencyManager.swift 0.00 % 0 35
  Optional+CLLocation.swift 100.00 % 4 4
  ConfigureUrlRequest.swift 88.89 % 40 45
  Bundle+EnvironmentInformation.swift 78.15 % 93 119
  Optional+Date.swift 100.00 % 4 4
  URLSessionMock.swift 92.04 % 104 113
  NetworkManager.swift 97.44 % 38 39
  REventLoggerCache.swift 0.00 % 0 11
  AppLifeCycleListenser.swift 100.00 % 19 19
  REventLogger.swift 0.00 % 0 55
  Reachability.swift 86.29 % 214 248
  EventLoggerModule.swift 69.28 % 106 153
  Lockable.swift 94.29 % 99 105
  AnyDependenciesContainer.swift 80.95 % 34 42
  Utility.swift 52.38 % 11 21
  WeakWrapper.swift 100.00 % 6 6
  TypedDependecyManager.swift 97.62 % 41 42
  Optional+NSObject.swift 100.00 % 29 29
  Dictionary+Extensions.swift 100.00 % 5 5
  KeyStore.swift 93.33 % 84 90
  REventLoggerEnvironment.swift 95.83 % 46 48
  REventLoggerSender.swift 94.25 % 82 87
  TaskSchedulable.swift 77.50 % 31 40
  AtomicWrapper.swift 100.00 % 24 24
  XCTest+Eventually.swift 100.00 % 35 35
  NSObject+Extensions.swift 97.06 % 33 34
  REventsStorage.swift 95.56 % 43 45
  EnvironmentInformation.swift 95.24 % 20 21
  URLRequest+Extensions.swift 100.00 % 19 19
  Data+Extensions.swift 100.00 % 15 15
  UIColor+Extensions.swift 100.00 % 42 42
  RLogger.swift 96.30 % 52 54
Total 83.91 % 1554 1852

Details

Test Details

Testsback

AnalyticsBroadcasterSpec back

SuccessFailureSkippedExpected Failure⏱️
4 (100%)0 (0%)0 (0%)0 (0%)0.04s
Successtest-method sendEventName__should_track_sdkCustomEvent_with_eventName_and_eventData_when_an_event_is_broadcasted_with_data()
Successtest-method sendEventName__should_track_sdkCustomEvent_with_eventName_and_no_eventData_when_an_event_is_broadcasted_without_data()
Successtest-method sendEventName__should_not_send__customAccNumber__if_customAccountNumber_is_nil()
Successtest-method sendEventName__should_send_customAccountNumber_parameter_value_as__customAccNumber_()

AnyDependenciesContainerSpec back

SuccessFailureSkippedExpected Failure⏱️
5 (100%)0 (0%)0 (0%)0 (0%)0.00s
Successtest-method AnyDependenciesContainer__register__should_not_register_an_object_that_is_already_registered()
Successtest-method AnyDependenciesContainer__register__should_not_register_an_object_that_has_the_same_type()
Successtest-method resolve__should_return_nil_when_there_are_not_registered_dependencies()
Successtest-method resolve__should_return_nil_when_the_type_is_not_found()
Successtest-method resolve__should_return_the_correct_object_when_the_type_is_found()

AppLifeCycleListenerSpec back

SuccessFailureSkippedExpected Failure⏱️
2 (100%)0 (0%)0 (0%)0 (0%)0.00s
Successtest-method AppLifeCycleListener__when_initiate_the_AppLifeCycleManager__should_start_observing_didBecomeActiveNotification()
Successtest-method AppLifeCycleListener__when_deinit_the_AppLifeCycleManager__should_stop_observing_didBecomeActiveNotification()

AtomicWrapperSpec back

SuccessFailureSkippedExpected Failure⏱️
7 (100%)0 (0%)0 (0%)0 (0%)10.23s
Successtest-method AtomicGetSet_property_wrapper__will_not_crash_when_two_threads_access_the_same_value_at_the_same_time__get_()
Successtest-method AtomicGetSet_property_wrapper__will_not_crash_when_two_threads_access_the_same_value_at_the_same_time__set_()
Successtest-method AtomicGetSet_property_wrapper__will_not_crash_when_one_thread_writes_and_the_other_reads_the_same_value_at_the_same_time()
Successtest-method AtomicGetSet_property_wrapper__when_using_mutating_functions__should_ensure_atomicity_when_using_two_concurrent__mutate__functions()
Successtest-method AtomicGetSet_property_wrapper__when_using_mutating_functions__should_ensure_atomicity_when_using__mutate__function_and_setter()
Successtest-method AtomicGetSet_property_wrapper__when_using_mutating_functions__should_not_expect_atomic_operation_without_using__mutate__functions()
Successtest-method AtomicGetSet_property_wrapper__when_using_mutating_functions__should_not_expect_atomic_operation_without_using__mutate__function_and_setter()

DataExtensionsSpec back

SuccessFailureSkippedExpected Failure⏱️
4 (100%)0 (0%)0 (0%)0 (0%)0.00s
Successtest-method DataExtensions__hexString__will_return_empty_string_for_empty_data()
Successtest-method DataExtensions__hexString__will_return_expected_hex_string_from_data()
Successtest-method DataExtensions__sha256Hex__will_return_empty_string_for_empty_data()
Successtest-method DataExtensions__sha256Hex__will_return_expected_SHA256_hash_from__hello_world_()

DictionaryExtensionsSpec back

SuccessFailureSkippedExpected Failure⏱️
4 (100%)0 (0%)0 (0%)0 (0%)0.00s
Successtest-method DictionaryExtensions______leftDictionary_is_empty__rightDictionary_is_not_empty__should_add_rightDictionary_entries_to_leftDictionary()
Successtest-method DictionaryExtensions______leftDictionary_is_empty__rightDictionary_is_empty__should_add_nothing_when_there_are_no_entries()
Successtest-method DictionaryExtensions______leftDictionary_is_not_empty__rightDictionary_is_not_empty__should_add_rightDictionary_entries_to_leftDictionary()
Successtest-method DictionaryExtensions______leftDictionary_is_not_empty__rightDictionary_is_empty__should_add_nothing_when_there_are_no_entries()

EnvironmentInformationSpec back

SuccessFailureSkippedExpected Failure⏱️
9 (100%)0 (0%)0 (0%)0 (0%)0.00s
Successtest-method uses_the_main_bundle_when_no_bundle_parameter_is_supplied()
Successtest-method when_bundle_has_valid_key_values__has_the_expected_app_name()
Successtest-method when_bundle_has_valid_key_values__has_the_expected_version()
Successtest-method when_bundle_has_valid_key_values__has_the_expected_OS_version()
Successtest-method when_bundle_has_valid_key_values__has_the_expected_device_model()
Successtest-method when_bundle_does_not_have_valid_key_values__will_return_the__not_found__value_when_app_name_can_t_be_read()
Successtest-method when_bundle_does_not_have_valid_key_values__will_return_the__not_found__value_when_app_version_can_t_be_read()
Successtest-method when_bundle_does_not_have_valid_key_values__will_return_the__not_found__value_when_device_model_can_t_be_read()
Successtest-method when_bundle_does_not_have_valid_key_values__will_return_the__not_found__value_when_device_os_version_can_t_be_read()

KeyStoreSpec back

SuccessFailureSkippedExpected Failure⏱️
7 (100%)0 (0%)0 (0%)0 (0%)0.01s
Successtest-method keystore_initially_empty__can_retrieve_an_added_key()
Successtest-method keystore_initially_empty__can_remove_a_key()
Successtest-method keystore_initially_empty__returns_nil_when_attempt_to_retrieve_a_key_not_in_keystore()
Successtest-method keystore_initially_empty__can_retrieve_a_key_that_has_been_added_twice()
Successtest-method keystore_has_multiple_keys__can_retrieve_a_key()
Successtest-method keystore_has_multiple_keys__can_remove_a_key()
Successtest-method keystore_has_multiple_keys__returns_nil_when_attempt_to_retrieve_a_key_not_in_keystore()

LockableSpec back

SuccessFailureSkippedExpected Failure⏱️
8 (100%)0 (0%)0 (0%)0 (0%)0.00s
Successtest-method Lockable_object__will_lock_provided_resources_when_lock_is_called_on_them()
Successtest-method Lockable_object__will_unlock_provided_resources_when_unlock_is_called_on_them()
Successtest-method Lockable_object__will_make_other_threads_wait_to_execute_lock___call()
Successtest-method Lockable_object__will_keep_the_lock_if_number_of_unlock___calls_did_not_match_the_number_of_lock___calls()
Successtest-method Lockable_object__will_not_crash_when_unlock___was_called_more_times_than_lock__()
Successtest-method Lockable_object__will_not_crash_when_lock___and_unlock___are_called_in_multiple_threads()
Successtest-method Lockable_object__will_not_crash_or_unlock_the_resource_when_unlock___was_called_from_some_other_thread()
Successtest-method Lockable_object__will_unlock_the_thread_if_the_resource_was_deallocated()

NSObjectExtensionsSpec back

SuccessFailureSkippedExpected Failure⏱️
15 (100%)0 (0%)0 (0%)0 (0%)0.00s
Successtest-method NSObjectExtensionsSpec__isKind_of___instance_method__will_return_true_if_class_name_matches()
Successtest-method NSObjectExtensionsSpec__isKind_of___instance_method__will_return_false_if_class_name_does_not_match()
Successtest-method NSObjectExtensionsSpec__isKind_of___instance_method__will_return_false_for_subclass_type()
Successtest-method NSObjectExtensionsSpec__isKind_of___instance_method__will_return_true_if_class_name_matches_base_type()
Successtest-method NSObjectExtensionsSpec__isAppleClass___instance_method__will_return_true_for_apple_class_instance()
Successtest-method NSObjectExtensionsSpec__isAppleClass___instance_method__will_return_false_for_non_apple_class_instance()
Successtest-method NSObjectExtensionsSpec__isApplePrivateClass___instance_method__will_return_false_for_public_apple_class_instance()
Successtest-method NSObjectExtensionsSpec__isApplePrivateClass___instance_method__will_return_false_for_non_apple_class_instance()
Successtest-method NSObjectExtensionsSpec__isApplePrivateClass___instance_method__will_return_false_for_non_apple_class_instance_that_starts_with__()
Successtest-method NSObjectExtensionsSpec__isApplePrivateClass___instance_method__will_return_true_for_private_apple_class_instance()
Successtest-method NSObjectExtensionsSpec__isNullableObjectEqual___class_method__will_return_true_for_two_null_objects()
Successtest-method NSObjectExtensionsSpec__isNullableObjectEqual___class_method__will_return_true_for_two_identical_objects()
Successtest-method NSObjectExtensionsSpec__isNullableObjectEqual___class_method__will_return_true_for_two_equal_objects()
Successtest-method NSObjectExtensionsSpec__isNullableObjectEqual___class_method__will_return_false_for_one_null_objects()
Successtest-method NSObjectExtensionsSpec__isNullableObjectEqual___class_method__will_return_false_if_one_object_is_a_subclass_of_the_other()

NimbleExtensionsSpec back

SuccessFailureSkippedExpected Failure⏱️
10 (100%)0 (0%)0 (0%)0 (0%)0.00s
Successtest-method Expectation_extensions__toAfterTimeout____should_finish_after_expected_default_timeout__1s_()
Successtest-method Expectation_extensions__toAfterTimeout____should_finish_after_expected_timeout()
Successtest-method Expectation_extensions__toAfterTimeout____should_evaluate_expectation_only_once()
Successtest-method Expectation_extensions__toAfterTimeoutNot____should_finish_after_expected_default_timeout__1s_()
Successtest-method Expectation_extensions__toAfterTimeoutNot____should_finish_after_expected_timeout()
Successtest-method Expectation_extensions__toAfterTimeoutNot____should_evaluate_expectation_only_once()
Successtest-method global_extension_methods__elementsEqualOrderAgnostic____should_succeed_if_elements_are_in_the_same_order()
Successtest-method global_extension_methods__elementsEqualOrderAgnostic____should_succeed_if_elements_are_not_in_the_same_order()
Successtest-method global_extension_methods__elementsEqualOrderAgnostic____should_succeed_for_empty_collections()
Successtest-method global_extension_methods__elementsEqualOrderAgnostic____should_not_succeed_if_elements_number_does_not_match()

OptionalExtensionsSpec back

SuccessFailureSkippedExpected Failure⏱️
28 (100%)0 (0%)0 (0%)0 (0%)0.00s
Successtest-method Optional_NSObject_Extensions__isKind_of___instance_method__will_return_true_if_class_name_matches()
Successtest-method Optional_NSObject_Extensions__isKind_of___instance_method__will_return_false_if_class_name_does_not_match()
Successtest-method Optional_NSObject_Extensions__isKind_of___instance_method__will_return_true_if_class_name_matches_base_type()
Successtest-method Optional_NSObject_Extensions__isKind_of___instance_method__will_return_false_for_subclass_type()
Successtest-method Optional_NSObject_Extensions__isKind_of___instance_method__will_return_false_if_object_is_nil()
Successtest-method Optional_NSObject_Extensions__isMember_of___instance_method__will_return_true_if_class_type_matches()
Successtest-method Optional_NSObject_Extensions__isMember_of___instance_method__will_return_false_if_class_does_not_match()
Successtest-method Optional_NSObject_Extensions__isMember_of___instance_method__will_return_false_for_subclass_type()
Successtest-method Optional_NSObject_Extensions__isMember_of___instance_method__will_return_false_for_superclass()
Successtest-method Optional_NSObject_Extensions__isMember_of___instance_method__will_return_false_if_object_is_nil()
Successtest-method Optional_NSObject_Extensions__isAppleClass___instance_method__will_return_true_for_apple_class_instance()
Successtest-method Optional_NSObject_Extensions__isAppleClass___instance_method__will_return_false_for_non_apple_class_instance()
Successtest-method Optional_NSObject_Extensions__isAppleClass___instance_method__will_return_false_if_object_is_nil()
Successtest-method Optional_NSObject_Extensions__isApplePrivateClass___instance_method__will_return_false_for_public_apple_class_instance()
Successtest-method Optional_NSObject_Extensions__isApplePrivateClass___instance_method__will_return_false_for_non_apple_class_instance()
Successtest-method Optional_NSObject_Extensions__isApplePrivateClass___instance_method__will_return_false_for_non_apple_class_instance_that_starts_with__()
Successtest-method Optional_NSObject_Extensions__isApplePrivateClass___instance_method__will_return_true_for_private_apple_class_instance()
Successtest-method Optional_NSObject_Extensions__isApplePrivateClass___instance_method__will_return_false_if_object_is_nil()
Successtest-method Optional_NSObject_Extensions__safeHashValue_instance_variable__will_return_expected_hashValue()
Successtest-method Optional_NSObject_Extensions__safeHashValue_instance_variable__will_return_0_if_object_is_nil()
Successtest-method Optional_String_Extensions__safeHashValue_instance_variable__will_return_expected_hashValue()
Successtest-method Optional_String_Extensions__safeHashValue_instance_variable__will_return_0_if_object_is_nil()
Successtest-method Optional_String_Extensions__isEmpty_instance_variable__will_return_false_if_Wrapped_is_String()
Successtest-method Optional_String_Extensions__isEmpty_instance_variable__will_return_true_if_object_is_nil()
Successtest-method Optional_Date_Extensions__safeHashValue_instance_variable__will_return_expected_hashValue()
Successtest-method Optional_Date_Extensions__safeHashValue_instance_variable__will_return_0_if_object_is_nil()
Successtest-method Optional_CLLocation_Extensions__safeHashValue_instance_variable__will_return_expected_hashValue()
Successtest-method Optional_CLLocation_Extensions__safeHashValue_instance_variable__will_return_0_if_object_is_nil()

REventLoggerEnvironmentSpec back

SuccessFailureSkippedExpected Failure⏱️
17 (100%)0 (0%)0 (0%)0 (0%)0.01s
Successtest-method REventLoggerEnvironment__when_bundle_has_valid_info__has_the_expected_appId()
Successtest-method REventLoggerEnvironment__when_bundle_has_valid_info__has_the_expected_appName()
Successtest-method REventLoggerEnvironment__when_bundle_has_valid_info__has_the_expected_appVersion()
Successtest-method REventLoggerEnvironment__when_bundle_has_valid_info__has_the_expected_devicePlatform()
Successtest-method REventLoggerEnvironment__when_bundle_has_valid_info__has_the_expected_deviceOsVersion()
Successtest-method REventLoggerEnvironment__when_bundle_has_valid_info__has_the_expected_deviceBrand()
Successtest-method REventLoggerEnvironment__when_bundle_has_valid_info__has_the_expected_deviceModel()
Successtest-method REventLoggerEnvironment__when_bundle_has_valid_info__has_the_expected_deviceName()
Successtest-method REventLoggerEnvironment__when_bundle_has_missing_info__should_not_contain_the_expected_appId()
Successtest-method REventLoggerEnvironment__when_bundle_has_missing_info__should_not_contain_the_expected_appName()
Successtest-method REventLoggerEnvironment__when_bundle_has_missing_info__should_not_contain_the_expected_appVersion()
Successtest-method REventLoggerEnvironment__when_bundle_has_missing_info__should_not_contain_the_expected_appVersion_2()
Successtest-method REventLoggerEnvironment__when_bundle_has_missing_info__should_not_contain_the_expected_devicePlatform()
Successtest-method REventLoggerEnvironment__when_bundle_has_missing_info__should_not_contain_the_expected_deviceOsVersion()
Successtest-method REventLoggerEnvironment__when_bundle_has_missing_info__should_not_contain_the_expected_deviceBrand()
Successtest-method REventLoggerEnvironment__when_bundle_has_missing_info__should_not_contain_the_expected_deviceModel()
Successtest-method REventLoggerEnvironment__when_bundle_has_missing_info__has_the_expected_deviceName()

REventLoggerModuleSpec back

SuccessFailureSkippedExpected Failure⏱️
12 (100%)0 (0%)0 (0%)0 (0%)0.00s