From c789e7f33cba0ff6201b1690ba9c1e10290c2f7b Mon Sep 17 00:00:00 2001 From: Jamie Lynch Date: Tue, 9 Jul 2024 11:15:13 +0100 Subject: [PATCH] refactor: hide embrace impl behind interface --- .../api/embrace-android-sdk.api | 3 +- .../embrace/android/embracesdk/Embrace.java | 33 ++------ .../embrace/android/embracesdk/EmbraceImpl.kt | 22 +++-- .../embracesdk/injection/InjectEmbraceImpl.kt | 2 +- .../internal/api/EmbraceAndroidApi.kt | 7 -- .../embracesdk/internal/api/EmbraceApi.kt | 82 ------------------- .../android/embracesdk/internal/api/SdkApi.kt | 17 ++++ .../embracesdk/internal/api/SdkStateApi.kt | 2 +- .../delegate/FlutterInternalInterfaceImpl.kt | 6 +- .../ReactNativeInternalInterfaceImpl.kt | 12 +-- .../api/delegate/SdkStateApiDelegate.kt | 7 +- .../delegate/UnityInternalInterfaceImpl.kt | 4 +- .../embracesdk/EmbraceConfigServiceTest.kt | 2 +- .../EmbraceInternalInterfaceImplTest.kt | 2 +- .../FlutterInternalInterfaceImplTest.kt | 8 +- .../ReactNativeInternalInterfaceImplTest.kt | 24 +++--- .../UnityInternalInterfaceImplTest.kt | 8 +- .../api/delegate/SdkStateApiDelegateTest.kt | 2 +- 18 files changed, 85 insertions(+), 158 deletions(-) delete mode 100644 embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/internal/api/EmbraceApi.kt create mode 100644 embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/internal/api/SdkApi.kt diff --git a/embrace-android-sdk/api/embrace-android-sdk.api b/embrace-android-sdk/api/embrace-android-sdk.api index 77044c71f2..228d915d87 100644 --- a/embrace-android-sdk/api/embrace-android-sdk.api +++ b/embrace-android-sdk/api/embrace-android-sdk.api @@ -7,7 +7,7 @@ public final class io/embrace/android/embracesdk/BuildConfig { public fun ()V } -public final class io/embrace/android/embracesdk/Embrace : io/embrace/android/embracesdk/internal/api/EmbraceAndroidApi, io/embrace/android/embracesdk/internal/api/EmbraceApi, io/embrace/android/embracesdk/internal/api/InternalInterfaceApi, io/embrace/android/embracesdk/internal/api/LogsApi, io/embrace/android/embracesdk/internal/api/MomentsApi, io/embrace/android/embracesdk/internal/api/NetworkRequestApi, io/embrace/android/embracesdk/internal/api/OTelApi, io/embrace/android/embracesdk/internal/api/SdkStateApi, io/embrace/android/embracesdk/internal/api/SessionApi, io/embrace/android/embracesdk/internal/api/UserApi, io/embrace/android/embracesdk/spans/TracingApi { +public final class io/embrace/android/embracesdk/Embrace : io/embrace/android/embracesdk/internal/api/SdkApi { public fun addBreadcrumb (Ljava/lang/String;)V public fun addLogRecordExporter (Lio/opentelemetry/sdk/logs/export/LogRecordExporter;)V public fun addSessionProperty (Ljava/lang/String;Ljava/lang/String;Z)Z @@ -59,6 +59,7 @@ public final class io/embrace/android/embracesdk/Embrace : io/embrace/android/em public fun logMessage (Ljava/lang/String;Lio/embrace/android/embracesdk/Severity;Ljava/util/Map;)V public fun logPushNotification (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Integer;Ljava/lang/Integer;Ljava/lang/Boolean;Ljava/lang/Boolean;)V public fun logWarning (Ljava/lang/String;)V + public fun logWebView (Ljava/lang/String;)V public fun recordCompletedSpan (Ljava/lang/String;JJ)Z public fun recordCompletedSpan (Ljava/lang/String;JJLio/embrace/android/embracesdk/spans/EmbraceSpan;)Z public fun recordCompletedSpan (Ljava/lang/String;JJLio/embrace/android/embracesdk/spans/ErrorCode;)Z diff --git a/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/Embrace.java b/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/Embrace.java index 16af82f24a..770c2cdcab 100644 --- a/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/Embrace.java +++ b/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/Embrace.java @@ -10,24 +10,13 @@ import java.util.List; import java.util.Map; -import io.embrace.android.embracesdk.annotation.InternalApi; import io.embrace.android.embracesdk.internal.EmbraceInternalInterface; import io.embrace.android.embracesdk.internal.Systrace; -import io.embrace.android.embracesdk.internal.api.EmbraceAndroidApi; -import io.embrace.android.embracesdk.internal.api.EmbraceApi; -import io.embrace.android.embracesdk.internal.api.InternalInterfaceApi; -import io.embrace.android.embracesdk.internal.api.LogsApi; -import io.embrace.android.embracesdk.internal.api.MomentsApi; -import io.embrace.android.embracesdk.internal.api.NetworkRequestApi; -import io.embrace.android.embracesdk.internal.api.OTelApi; -import io.embrace.android.embracesdk.internal.api.SdkStateApi; -import io.embrace.android.embracesdk.internal.api.SessionApi; -import io.embrace.android.embracesdk.internal.api.UserApi; +import io.embrace.android.embracesdk.internal.api.SdkApi; import io.embrace.android.embracesdk.network.EmbraceNetworkRequest; import io.embrace.android.embracesdk.spans.EmbraceSpan; import io.embrace.android.embracesdk.spans.EmbraceSpanEvent; import io.embrace.android.embracesdk.spans.ErrorCode; -import io.embrace.android.embracesdk.spans.TracingApi; import io.opentelemetry.api.OpenTelemetry; import io.opentelemetry.sdk.logs.export.LogRecordExporter; import io.opentelemetry.sdk.trace.export.SpanExporter; @@ -40,18 +29,7 @@ */ @SuppressLint("EmbracePublicApiPackageRule") @SuppressWarnings("unused") -public final class Embrace implements - LogsApi, - MomentsApi, - NetworkRequestApi, - SessionApi, - UserApi, - TracingApi, - EmbraceApi, - EmbraceAndroidApi, - SdkStateApi, - OTelApi, - InternalInterfaceApi { +public final class Embrace implements SdkApi { /** * Singleton instance of the Embrace SDK. @@ -641,6 +619,13 @@ public void trackWebViewPerformance(@NonNull String tag, @NonNull String message } } + @Override + public void logWebView(@Nullable String url) { + if (verifyNonNullParameters("logWebView", url)) { + impl.logWebView(url); + } + } + @Nullable @Override public String getCurrentSessionId() { diff --git a/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/EmbraceImpl.kt b/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/EmbraceImpl.kt index de19eba150..ecb3e86e4a 100644 --- a/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/EmbraceImpl.kt +++ b/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/EmbraceImpl.kt @@ -19,6 +19,7 @@ import io.embrace.android.embracesdk.internal.api.LogsApi import io.embrace.android.embracesdk.internal.api.MomentsApi import io.embrace.android.embracesdk.internal.api.NetworkRequestApi import io.embrace.android.embracesdk.internal.api.OTelApi +import io.embrace.android.embracesdk.internal.api.SdkApi import io.embrace.android.embracesdk.internal.api.SdkStateApi import io.embrace.android.embracesdk.internal.api.SessionApi import io.embrace.android.embracesdk.internal.api.UserApi @@ -64,15 +65,16 @@ internal class EmbraceImpl @JvmOverloads constructor( private val breadcrumbApiDelegate: BreadcrumbApiDelegate = BreadcrumbApiDelegate(bootstrapper, sdkCallChecker), private val webviewApiDelegate: InternalWebViewApiDelegate = InternalWebViewApiDelegate(bootstrapper, sdkCallChecker), -) : UserApi by userApiDelegate, - SessionApi by sessionApiDelegate, - NetworkRequestApi by networkRequestApiDelegate, +) : SdkApi, LogsApi by logsApiDelegate, MomentsApi by momentsApiDelegate, + NetworkRequestApi by networkRequestApiDelegate, + SessionApi by sessionApiDelegate, + UserApi by userApiDelegate, TracingApi by bootstrapper.openTelemetryModule.embraceTracer, - ViewTrackingApi by viewTrackingApiDelegate, SdkStateApi by sdkStateApiDelegate, OTelApi by otelApiDelegate, + ViewTrackingApi by viewTrackingApiDelegate, BreadcrumbApi by breadcrumbApiDelegate, InternalWebViewApi by webviewApiDelegate, InternalInterfaceApi { @@ -106,6 +108,16 @@ internal class EmbraceImpl @JvmOverloads constructor( private val nativeThreadSampler by embraceImplInject { bootstrapper.nativeModule.nativeThreadSamplerService } private val nativeThreadSamplerInstaller by embraceImplInject { bootstrapper.nativeModule.nativeThreadSamplerInstaller } + override fun start(context: Context) = start(context, Embrace.AppFramework.NATIVE) { null } + override fun start(context: Context, appFramework: Embrace.AppFramework) = + start(context, appFramework) { null } + + override fun start(context: Context, isDevMode: Boolean) = + start(context, Embrace.AppFramework.NATIVE) { null } + + override fun start(context: Context, isDevMode: Boolean, appFramework: Embrace.AppFramework) = + start(context, appFramework) { null } + /** * Starts instrumentation of the Android application using the Embrace SDK. This should be * called during creation of the application, as early as possible. @@ -281,7 +293,7 @@ internal class EmbraceImpl @JvmOverloads constructor( */ override val internalInterface get(): EmbraceInternalInterface { val internalInterface = embraceInternalInterface - return if (isStarted() && internalInterface != null) { + return if (isStarted && internalInterface != null) { internalInterface } else { uninitializedSdkInternalInterface diff --git a/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/injection/InjectEmbraceImpl.kt b/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/injection/InjectEmbraceImpl.kt index 5e1dcb718f..37d34ea222 100644 --- a/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/injection/InjectEmbraceImpl.kt +++ b/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/injection/InjectEmbraceImpl.kt @@ -14,7 +14,7 @@ import kotlin.reflect.KProperty */ internal inline fun EmbraceImpl.embraceImplInject( noinline provider: Provider -): ReadOnlyProperty = EmbraceImplFieldDelegate(::isStarted, provider) +): ReadOnlyProperty = EmbraceImplFieldDelegate({ this.isStarted }, provider) internal inline fun embraceImplInject( checker: SdkCallChecker, diff --git a/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/internal/api/EmbraceAndroidApi.kt b/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/internal/api/EmbraceAndroidApi.kt index 74fc630253..b098b525fa 100644 --- a/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/internal/api/EmbraceAndroidApi.kt +++ b/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/internal/api/EmbraceAndroidApi.kt @@ -81,13 +81,6 @@ internal interface EmbraceAndroidApi { appFramework: Embrace.AppFramework ) - /** - * Whether or not the SDK has been started. - * - * @return true if the SDK is started, false otherwise - */ - val isStarted: Boolean - /** * Records that a view 'started'. You should call this when your app starts displaying an * activity, a fragment, a screen, or any custom UI element, and you want to capture a diff --git a/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/internal/api/EmbraceApi.kt b/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/internal/api/EmbraceApi.kt deleted file mode 100644 index 270dbdf1a8..0000000000 --- a/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/internal/api/EmbraceApi.kt +++ /dev/null @@ -1,82 +0,0 @@ -package io.embrace.android.embracesdk.internal.api - -import android.webkit.ConsoleMessage -import io.embrace.android.embracesdk.Embrace.LastRunEndState - -/** - * Declares the functions that consist of Embrace's public API. You should not use - * [EmbraceApi] directly or implement it in your own custom classes, - * as new functions may be added in future. Use the [Embrace] class instead. - */ -internal interface EmbraceApi { - - /** - * Sets a custom app ID that overrides the one specified at build time. Must be called before - * the SDK is started. - * - * @param appId custom app ID - * @return true if the app ID could be set, false otherwise. - */ - fun setAppId(appId: String): Boolean - - /** - * Adds a breadcrumb. - * - * Breadcrumbs track a user's journey through the application and will be shown on the timeline. - * - * @param message the name of the breadcrumb to log - */ - fun addBreadcrumb(message: String) - - /** - * Retrieve the HTTP request header to extract trace ID from. - * - * @return the Trace ID header. - */ - val traceIdHeader: String - - /** - * Randomly generate a W3C-compliant traceparent - */ - fun generateW3cTraceparent(): String - - /** - * Get the user identifier assigned to the device by Embrace - * - * @return the device identifier created by Embrace - */ - val deviceId: String - - /** - * Listen to performance-tracking JavaScript previously embedded in the website's code. - * The WebView being tracked must have JavaScript enabled. - * - * @param tag a name used to identify the WebView being tracked - * @param consoleMessage the console message collected from the WebView - */ - fun trackWebViewPerformance(tag: String, consoleMessage: ConsoleMessage) - - /** - * Listen to performance-tracking JavaScript previously embedded in the website's code. - * The WebView being tracked must have JavaScript enabled. - * - * @param tag a name used to identify the WebView being tracked - * @param message the console message collected from the WebView - */ - fun trackWebViewPerformance(tag: String, message: String) - - /** - * Get the ID for the current session. - * Returns null if a session has not been started yet or the SDK hasn't been initialized. - * - * @return The ID for the current Session, if available. - */ - val currentSessionId: String? - - /** - * Get the end state of the last run of the application. - * - * @return LastRunEndState enum value representing the end state of the last run. - */ - val lastRunEndState: LastRunEndState -} diff --git a/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/internal/api/SdkApi.kt b/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/internal/api/SdkApi.kt new file mode 100644 index 0000000000..53a6298f59 --- /dev/null +++ b/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/internal/api/SdkApi.kt @@ -0,0 +1,17 @@ +package io.embrace.android.embracesdk.internal.api + +import io.embrace.android.embracesdk.spans.TracingApi + +internal interface SdkApi : + LogsApi, + MomentsApi, + NetworkRequestApi, + SessionApi, + UserApi, + TracingApi, + EmbraceAndroidApi, + SdkStateApi, + OTelApi, + InternalInterfaceApi, + BreadcrumbApi, + InternalWebViewApi diff --git a/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/internal/api/SdkStateApi.kt b/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/internal/api/SdkStateApi.kt index 3345050e14..edf03714e0 100644 --- a/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/internal/api/SdkStateApi.kt +++ b/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/internal/api/SdkStateApi.kt @@ -9,7 +9,7 @@ internal interface SdkStateApi { * * @return true if the SDK is started, false otherwise */ - fun isStarted(): Boolean + val isStarted: Boolean /** * Sets a custom app ID that overrides the one specified at build time. Must be called before diff --git a/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/internal/api/delegate/FlutterInternalInterfaceImpl.kt b/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/internal/api/delegate/FlutterInternalInterfaceImpl.kt index 8ccbc0cce6..a29a3bcf9a 100644 --- a/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/internal/api/delegate/FlutterInternalInterfaceImpl.kt +++ b/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/internal/api/delegate/FlutterInternalInterfaceImpl.kt @@ -16,7 +16,7 @@ internal class FlutterInternalInterfaceImpl( ) : EmbraceInternalInterface by impl, FlutterInternalInterface { override fun setEmbraceFlutterSdkVersion(version: String?) { - if (embrace.isStarted()) { + if (embrace.isStarted) { if (version != null) { hostedSdkVersionInfo.hostedSdkVersion = version } @@ -26,7 +26,7 @@ internal class FlutterInternalInterfaceImpl( } override fun setDartVersion(version: String?) { - if (embrace.isStarted()) { + if (embrace.isStarted) { if (version != null) { hostedSdkVersionInfo.hostedPlatformVersion = version } @@ -63,7 +63,7 @@ internal class FlutterInternalInterfaceImpl( library: String?, exceptionType: LogExceptionType ) { - if (embrace.isStarted()) { + if (embrace.isStarted) { embrace.logMessage( EventType.ERROR_LOG, "Dart error", diff --git a/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/internal/api/delegate/ReactNativeInternalInterfaceImpl.kt b/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/internal/api/delegate/ReactNativeInternalInterfaceImpl.kt index ac897febec..f567b3a228 100644 --- a/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/internal/api/delegate/ReactNativeInternalInterfaceImpl.kt +++ b/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/internal/api/delegate/ReactNativeInternalInterfaceImpl.kt @@ -27,7 +27,7 @@ internal class ReactNativeInternalInterfaceImpl( type: String?, stacktrace: String? ) { - if (embrace.isStarted()) { + if (embrace.isStarted) { val exception = JsException(name, message, type, stacktrace) crashService.logUnhandledJsException(exception) } else { @@ -41,7 +41,7 @@ internal class ReactNativeInternalInterfaceImpl( properties: Map, stacktrace: String? ) { - if (embrace.isStarted()) { + if (embrace.isStarted) { embrace.logMessage( EventType.ERROR_LOG, message, @@ -58,7 +58,7 @@ internal class ReactNativeInternalInterfaceImpl( } override fun setJavaScriptPatchNumber(number: String?) { - if (embrace.isStarted()) { + if (embrace.isStarted) { if (number == null) { logger.logError("JavaScript patch number must not be null") return @@ -74,7 +74,7 @@ internal class ReactNativeInternalInterfaceImpl( } override fun setReactNativeSdkVersion(version: String?) { - if (embrace.isStarted()) { + if (embrace.isStarted) { hostedSdkVersionInfo.hostedSdkVersion = version } else { logger.logSdkNotInitialized("set React Native SDK version") @@ -82,7 +82,7 @@ internal class ReactNativeInternalInterfaceImpl( } override fun setReactNativeVersionNumber(version: String?) { - if (embrace.isStarted()) { + if (embrace.isStarted) { if (version == null) { logger.logError("ReactNative version must not be null") return @@ -106,7 +106,7 @@ internal class ReactNativeInternalInterfaceImpl( } private fun setJavaScriptBundleUrl(context: Context, url: String, didUpdate: Boolean? = null) { - if (embrace.isStarted()) { + if (embrace.isStarted) { metadataService.setReactNativeBundleId(context, url, didUpdate) } else { logger.logSdkNotInitialized("set JavaScript bundle URL") diff --git a/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/internal/api/delegate/SdkStateApiDelegate.kt b/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/internal/api/delegate/SdkStateApiDelegate.kt index b66cce2223..6f0dbac516 100644 --- a/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/internal/api/delegate/SdkStateApiDelegate.kt +++ b/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/internal/api/delegate/SdkStateApiDelegate.kt @@ -31,7 +31,8 @@ internal class SdkStateApiDelegate( * * @return true if the SDK is started, false otherwise */ - override fun isStarted(): Boolean = sdkCallChecker.started.get() + override val isStarted: Boolean + get() = sdkCallChecker.started.get() /** * Sets a custom app ID that overrides the one specified at build time. Must be called before @@ -41,7 +42,7 @@ internal class SdkStateApiDelegate( * @return true if the app ID could be set, false otherwise. */ override fun setAppId(appId: String): Boolean { - if (isStarted()) { + if (isStarted) { logger.logError("You must set the custom app ID before the SDK is started.", null) return false } @@ -83,7 +84,7 @@ internal class SdkStateApiDelegate( return null } - override fun getLastRunEndState(): Embrace.LastRunEndState = if (isStarted() && crashVerifier != null) { + override fun getLastRunEndState(): Embrace.LastRunEndState = if (isStarted && crashVerifier != null) { if (crashVerifier?.didLastRunCrash() == true) { Embrace.LastRunEndState.CRASH } else { diff --git a/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/internal/api/delegate/UnityInternalInterfaceImpl.kt b/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/internal/api/delegate/UnityInternalInterfaceImpl.kt index 3a049ca95e..4f2072c2f4 100644 --- a/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/internal/api/delegate/UnityInternalInterfaceImpl.kt +++ b/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/internal/api/delegate/UnityInternalInterfaceImpl.kt @@ -22,7 +22,7 @@ internal class UnityInternalInterfaceImpl( buildGuid: String?, unitySdkVersion: String? ) { - if (embrace.isStarted()) { + if (embrace.isStarted) { if (unityVersion == null || buildGuid == null) { val sdkVersionMessage = unitySdkVersion ?: "null or previous than 1.7.5" logger.logError( @@ -56,7 +56,7 @@ internal class UnityInternalInterfaceImpl( stacktrace: String?, exceptionType: LogExceptionType ) { - if (embrace.isStarted()) { + if (embrace.isStarted) { embrace.logMessage( EventType.ERROR_LOG, "Unity exception", diff --git a/embrace-android-sdk/src/test/java/io/embrace/android/embracesdk/EmbraceConfigServiceTest.kt b/embrace-android-sdk/src/test/java/io/embrace/android/embracesdk/EmbraceConfigServiceTest.kt index 40ae20de81..b438ab5e99 100644 --- a/embrace-android-sdk/src/test/java/io/embrace/android/embracesdk/EmbraceConfigServiceTest.kt +++ b/embrace-android-sdk/src/test/java/io/embrace/android/embracesdk/EmbraceConfigServiceTest.kt @@ -254,7 +254,7 @@ internal class EmbraceConfigServiceTest { fun `test onForeground() with sdk started and config sdkDisabled=true stops the SDK`() { val mockInternalInterface: EmbraceInternalInterface = mockk(relaxed = true) mockkObject(Embrace.getImpl()) - every { Embrace.getImpl().isStarted() } returns true + every { Embrace.getImpl().isStarted } returns true every { Embrace.getImpl().internalInterface } returns mockInternalInterface fakePreferenceService.sdkDisabled = true diff --git a/embrace-android-sdk/src/test/java/io/embrace/android/embracesdk/EmbraceInternalInterfaceImplTest.kt b/embrace-android-sdk/src/test/java/io/embrace/android/embracesdk/EmbraceInternalInterfaceImplTest.kt index 01809eb600..4e3e486660 100644 --- a/embrace-android-sdk/src/test/java/io/embrace/android/embracesdk/EmbraceInternalInterfaceImplTest.kt +++ b/embrace-android-sdk/src/test/java/io/embrace/android/embracesdk/EmbraceInternalInterfaceImplTest.kt @@ -252,7 +252,7 @@ internal class EmbraceInternalInterfaceImplTest { @Test fun `check stopping SDK`() { internalImpl.stopSdk() - assertFalse(embraceImpl.isStarted()) + assertFalse(embraceImpl.isStarted) } companion object { diff --git a/embrace-android-sdk/src/test/java/io/embrace/android/embracesdk/FlutterInternalInterfaceImplTest.kt b/embrace-android-sdk/src/test/java/io/embrace/android/embracesdk/FlutterInternalInterfaceImplTest.kt index a2a2b3b46a..9d8fcec0ef 100644 --- a/embrace-android-sdk/src/test/java/io/embrace/android/embracesdk/FlutterInternalInterfaceImplTest.kt +++ b/embrace-android-sdk/src/test/java/io/embrace/android/embracesdk/FlutterInternalInterfaceImplTest.kt @@ -36,7 +36,7 @@ internal class FlutterInternalInterfaceImplTest { @Test fun testSetFlutterSdkVersionNotStarted() { - every { embrace.isStarted() } returns false + every { embrace.isStarted } returns false impl.setEmbraceFlutterSdkVersion("2.12") verify(exactly = 1) { logger.logSdkNotInitialized(any()) @@ -45,7 +45,7 @@ internal class FlutterInternalInterfaceImplTest { @Test fun testSetDartVersionNotStarted() { - every { embrace.isStarted() } returns false + every { embrace.isStarted } returns false impl.setDartVersion("2.12") verify(exactly = 1) { logger.logSdkNotInitialized(any()) @@ -54,7 +54,7 @@ internal class FlutterInternalInterfaceImplTest { @Test fun testLogUnhandledDartException() { - every { embrace.isStarted() } returns true + every { embrace.isStarted } returns true impl.logUnhandledDartException("stack", "exception name", "message", "ctx", "lib") verify(exactly = 1) { embrace.logMessage( @@ -74,7 +74,7 @@ internal class FlutterInternalInterfaceImplTest { @Test fun testLogHandledDartException() { - every { embrace.isStarted() } returns true + every { embrace.isStarted } returns true impl.logHandledDartException("stack", "exception name", "message", "ctx", "lib") verify(exactly = 1) { embrace.logMessage( diff --git a/embrace-android-sdk/src/test/java/io/embrace/android/embracesdk/ReactNativeInternalInterfaceImplTest.kt b/embrace-android-sdk/src/test/java/io/embrace/android/embracesdk/ReactNativeInternalInterfaceImplTest.kt index 71ec214c04..51b9c0a5fb 100644 --- a/embrace-android-sdk/src/test/java/io/embrace/android/embracesdk/ReactNativeInternalInterfaceImplTest.kt +++ b/embrace-android-sdk/src/test/java/io/embrace/android/embracesdk/ReactNativeInternalInterfaceImplTest.kt @@ -55,7 +55,7 @@ internal class ReactNativeInternalInterfaceImplTest { @Test fun testSetJavaScriptPatchNumberNotStarted() { - every { embrace.isStarted() } returns false + every { embrace.isStarted } returns false impl.setJavaScriptPatchNumber("28.9.1") verify(exactly = 1) { logger.logSdkNotInitialized(any()) @@ -64,7 +64,7 @@ internal class ReactNativeInternalInterfaceImplTest { @Test fun testSetJavaScriptPatchNumberNull() { - every { embrace.isStarted() } returns true + every { embrace.isStarted } returns true preferencesService.javaScriptPatchNumber = "123" impl.setJavaScriptPatchNumber(null) assertEquals("123", preferencesService.javaScriptPatchNumber) @@ -75,7 +75,7 @@ internal class ReactNativeInternalInterfaceImplTest { @Test fun testSetJavaScriptPatchNumberEmpty() { - every { embrace.isStarted() } returns true + every { embrace.isStarted } returns true preferencesService.javaScriptPatchNumber = "123" impl.setJavaScriptPatchNumber("") assertEquals("123", preferencesService.javaScriptPatchNumber) @@ -86,7 +86,7 @@ internal class ReactNativeInternalInterfaceImplTest { @Test fun testSetReactNativeVersionNumberNotStarted() { - every { embrace.isStarted() } returns false + every { embrace.isStarted } returns false impl.setReactNativeVersionNumber("0.69.1") verify(exactly = 1) { logger.logSdkNotInitialized(any()) @@ -95,7 +95,7 @@ internal class ReactNativeInternalInterfaceImplTest { @Test fun testSetReactNativeVersionNumberNull() { - every { embrace.isStarted() } returns true + every { embrace.isStarted } returns true preferencesService.reactNativeVersionNumber = "0.1" impl.setReactNativeVersionNumber(null) assertEquals("0.1", preferencesService.reactNativeVersionNumber) @@ -106,7 +106,7 @@ internal class ReactNativeInternalInterfaceImplTest { @Test fun testSetReactNativeVersionNumberEmpty() { - every { embrace.isStarted() } returns true + every { embrace.isStarted } returns true preferencesService.reactNativeVersionNumber = "0.1" impl.setReactNativeVersionNumber("") assertEquals("0.1", preferencesService.reactNativeVersionNumber) @@ -117,14 +117,14 @@ internal class ReactNativeInternalInterfaceImplTest { @Test fun testSetJavaScriptBundleURL() { - every { embrace.isStarted() } returns true + every { embrace.isStarted } returns true impl.setJavaScriptBundleUrl(context, "index.android.bundle") assertEquals("index.android.bundle", metadataService.fakeReactNativeBundleId) } @Test fun testSetJavaScriptBundleURLNotStarted() { - every { embrace.isStarted() } returns false + every { embrace.isStarted } returns false impl.setJavaScriptBundleUrl(context, "index.android.bundle") verify(exactly = 1) { logger.logSdkNotInitialized(any()) @@ -142,7 +142,7 @@ internal class ReactNativeInternalInterfaceImplTest { logger ) - every { embrace.isStarted() } returns true + every { embrace.isStarted } returns true impl.setCacheableJavaScriptBundleUrl(context, "index.android.bundle", true) // Test that the metadata service was called with the correct parameters assertEquals("index.android.bundle", metadataService.fakeReactNativeBundleId) @@ -160,7 +160,7 @@ internal class ReactNativeInternalInterfaceImplTest { logger ) - every { embrace.isStarted() } returns true + every { embrace.isStarted } returns true impl.setJavaScriptBundleUrl(context, "index.android.bundle") // Test that the metadata service was called with the correct parameters assertEquals("index.android.bundle", metadataService.fakeReactNativeBundleId) @@ -169,7 +169,7 @@ internal class ReactNativeInternalInterfaceImplTest { @Test fun testLogUnhandledJsException() { - every { embrace.isStarted() } returns true + every { embrace.isStarted } returns true impl.logUnhandledJsException("name", "message", "type", "stack") val captor = slot() @@ -186,7 +186,7 @@ internal class ReactNativeInternalInterfaceImplTest { @Test fun testLogUnhandledJsExceptionNotStarted() { - every { embrace.isStarted() } returns false + every { embrace.isStarted } returns false impl.logUnhandledJsException("name", "message", "type", "stack") verify(exactly = 1) { logger.logSdkNotInitialized(any()) diff --git a/embrace-android-sdk/src/test/java/io/embrace/android/embracesdk/UnityInternalInterfaceImplTest.kt b/embrace-android-sdk/src/test/java/io/embrace/android/embracesdk/UnityInternalInterfaceImplTest.kt index 656815a85d..9f91135f7d 100644 --- a/embrace-android-sdk/src/test/java/io/embrace/android/embracesdk/UnityInternalInterfaceImplTest.kt +++ b/embrace-android-sdk/src/test/java/io/embrace/android/embracesdk/UnityInternalInterfaceImplTest.kt @@ -35,7 +35,7 @@ internal class UnityInternalInterfaceImplTest { @Test fun testSetUnityMetaDataNotStarted() { - every { embrace.isStarted() } returns false + every { embrace.isStarted } returns false impl.setUnityMetaData("unityVersion", "buildGuid", "unitySdkVersion") verify(exactly = 1) { logger.logSdkNotInitialized(any()) @@ -44,7 +44,7 @@ internal class UnityInternalInterfaceImplTest { @Test fun testSetUnityMetaDataNull() { - every { embrace.isStarted() } returns true + every { embrace.isStarted } returns true impl.setUnityMetaData(null, null, "unitySdkVersion") assertNull(preferencesService.unityVersionNumber) assertNull(preferencesService.unityBuildIdNumber) @@ -56,7 +56,7 @@ internal class UnityInternalInterfaceImplTest { @Test fun testLogUnhandledUnityException() { - every { embrace.isStarted() } returns true + every { embrace.isStarted } returns true impl.logUnhandledUnityException("name", "msg", "stack") verify(exactly = 1) { embrace.logMessage( @@ -76,7 +76,7 @@ internal class UnityInternalInterfaceImplTest { @Test fun testLogHandledUnityException() { - every { embrace.isStarted() } returns true + every { embrace.isStarted } returns true impl.logHandledUnityException("name", "msg", "stack") verify(exactly = 1) { embrace.logMessage( diff --git a/embrace-android-sdk/src/test/java/io/embrace/android/embracesdk/internal/api/delegate/SdkStateApiDelegateTest.kt b/embrace-android-sdk/src/test/java/io/embrace/android/embracesdk/internal/api/delegate/SdkStateApiDelegateTest.kt index 533781e148..b5b5a6e14b 100644 --- a/embrace-android-sdk/src/test/java/io/embrace/android/embracesdk/internal/api/delegate/SdkStateApiDelegateTest.kt +++ b/embrace-android-sdk/src/test/java/io/embrace/android/embracesdk/internal/api/delegate/SdkStateApiDelegateTest.kt @@ -52,7 +52,7 @@ internal class SdkStateApiDelegateTest { @Test fun isStarted() { - assertTrue(delegate.isStarted()) + assertTrue(delegate.isStarted) } @Test