From f3e82360cbe4e0e6608fb967d0be7c62745e2541 Mon Sep 17 00:00:00 2001 From: Valentin Petrovich Date: Fri, 3 Oct 2025 07:30:51 +0200 Subject: [PATCH 1/3] feat: update dependencies and fix build --- android_sdk/build.gradle | 1 - android_sdk/src/main/java/co/optable/android_sdk/core/Client.kt | 1 - 2 files changed, 2 deletions(-) diff --git a/android_sdk/build.gradle b/android_sdk/build.gradle index 179da4a..e092e64 100644 --- a/android_sdk/build.gradle +++ b/android_sdk/build.gradle @@ -17,7 +17,6 @@ android { compileSdk 34 defaultConfig { - // TODO: Check namespace "co.optable" minSdkVersion 23 targetSdkVersion 34 diff --git a/android_sdk/src/main/java/co/optable/android_sdk/core/Client.kt b/android_sdk/src/main/java/co/optable/android_sdk/core/Client.kt index cef08e7..dc88449 100644 --- a/android_sdk/src/main/java/co/optable/android_sdk/core/Client.kt +++ b/android_sdk/src/main/java/co/optable/android_sdk/core/Client.kt @@ -32,7 +32,6 @@ class Client(private val config: Config, private val context: Context, private v private class RequestInterceptor(private val userAgent: String, private val storage: LocalStorage): Interceptor { override fun intercept(chain: Interceptor.Chain): Response { var oldRequest = chain.request() - var newURL = oldRequest.url.newBuilder() .addQueryParameter( "osdk", "android-${BuildConfig.VERSION_NAME}-${BuildConfig.VERSION_CODE}" From 84b1053f999f042102cab3e570a62257448be452 Mon Sep 17 00:00:00 2001 From: Valentin Petrovich Date: Fri, 3 Oct 2025 07:52:35 +0200 Subject: [PATCH 2/3] feat: return versioning --- android_sdk/src/main/java/co/optable/android_sdk/core/Client.kt | 1 + 1 file changed, 1 insertion(+) diff --git a/android_sdk/src/main/java/co/optable/android_sdk/core/Client.kt b/android_sdk/src/main/java/co/optable/android_sdk/core/Client.kt index dc88449..cef08e7 100644 --- a/android_sdk/src/main/java/co/optable/android_sdk/core/Client.kt +++ b/android_sdk/src/main/java/co/optable/android_sdk/core/Client.kt @@ -32,6 +32,7 @@ class Client(private val config: Config, private val context: Context, private v private class RequestInterceptor(private val userAgent: String, private val storage: LocalStorage): Interceptor { override fun intercept(chain: Interceptor.Chain): Response { var oldRequest = chain.request() + var newURL = oldRequest.url.newBuilder() .addQueryParameter( "osdk", "android-${BuildConfig.VERSION_NAME}-${BuildConfig.VERSION_CODE}" From aa78df29a852bfe0157de6ef6630459b8db43f0c Mon Sep 17 00:00:00 2001 From: Valentin Petrovich Date: Tue, 7 Oct 2025 08:28:13 +0200 Subject: [PATCH 3/3] fix: unit tests Completely remove 3rd-party lib unmock. Use supported by Robolectric. --- DemoApp/DemoAppKotlin/app/build.gradle | 1 - android_sdk/build.gradle | 15 +++++---------- .../co/optable/android_sdk/OptableSDKUnitTest.kt | 4 +++- 3 files changed, 8 insertions(+), 12 deletions(-) diff --git a/DemoApp/DemoAppKotlin/app/build.gradle b/DemoApp/DemoAppKotlin/app/build.gradle index 185e610..23b2663 100644 --- a/DemoApp/DemoAppKotlin/app/build.gradle +++ b/DemoApp/DemoAppKotlin/app/build.gradle @@ -9,7 +9,6 @@ android { namespace "co.optable.androidsdkdemo" defaultConfig { - // TODO: Change applicationId "co.optable.androidsdkdemo" minSdkVersion 21 targetSdkVersion 34 diff --git a/android_sdk/build.gradle b/android_sdk/build.gradle index e092e64..ed2cf6a 100644 --- a/android_sdk/build.gradle +++ b/android_sdk/build.gradle @@ -4,15 +4,6 @@ plugins { id("de.nanogiants.android-versioning") version "2.4.0" } -// TODO: Check -//apply plugin: 'de.mobilej.unmock' - -//unMock { -// keep "android.net.Uri" -// keepStartingWith "libcore." -// keepAndRename "java.nio.charset.Charsets" to "xjava.nio.charset.Charsets" -//} - android { compileSdk 34 @@ -69,7 +60,11 @@ dependencies { implementation 'com.google.android.gms:play-services-ads:24.6.0' - testImplementation 'junit:junit:4.13.2' + // Unit tests + testImplementation("junit:junit:4.13.2") + testImplementation("org.robolectric:robolectric:4.16") + + // UI tests androidTestImplementation 'androidx.test.ext:junit:1.2.1' androidTestImplementation 'androidx.test.espresso:espresso-core:3.6.1' } \ No newline at end of file diff --git a/android_sdk/src/test/java/co/optable/android_sdk/OptableSDKUnitTest.kt b/android_sdk/src/test/java/co/optable/android_sdk/OptableSDKUnitTest.kt index b7f0bb2..6ebe448 100644 --- a/android_sdk/src/test/java/co/optable/android_sdk/OptableSDKUnitTest.kt +++ b/android_sdk/src/test/java/co/optable/android_sdk/OptableSDKUnitTest.kt @@ -8,13 +8,15 @@ import android.net.Uri import org.junit.Assert.assertEquals import org.junit.Assert.assertNotEquals import org.junit.Test +import org.junit.runner.RunWith +import org.robolectric.RobolectricTestRunner /** * OptableSDK unit tests */ +@RunWith(RobolectricTestRunner::class) class OptableSDKUnitTest { - // TODO: Fix @Test fun eid_isCorrect() { val expected = "e:a665a45920422f9d417e4867efdc4fb8a04a1f3fff1fa07e998e86f7f7a27ae3"