Skip to content

Commit 98a68b8

Browse files
authored
remove intercom test smell code (#47)
1 parent cd18ed9 commit 98a68b8

File tree

1 file changed

+10
-15
lines changed

1 file changed

+10
-15
lines changed

samples/kotlin-android-app-destinations/src/test/java/com/segment/analytics/destinations/plugins/IntercomDestinationTest.kt

Lines changed: 10 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,6 @@ package com.segment.analytics.destinations.plugins
33
import android.app.Application
44
import android.util.Log
55
import com.segment.analytics.kotlin.core.*
6-
import com.segment.analytics.kotlin.core.platform.Plugin
7-
import com.segment.analytics.kotlin.core.utilities.getString
86
import io.intercom.android.sdk.Company
97
import io.intercom.android.sdk.Intercom
108
import io.intercom.android.sdk.UserAttributes
@@ -15,9 +13,11 @@ import kotlinx.coroutines.CoroutineDispatcher
1513
import kotlinx.coroutines.CoroutineScope
1614
import kotlinx.coroutines.test.TestCoroutineDispatcher
1715
import kotlinx.coroutines.test.TestCoroutineScope
18-
import kotlinx.serialization.json.*
16+
import kotlinx.serialization.json.JsonObject
17+
import kotlinx.serialization.json.buildJsonObject
18+
import kotlinx.serialization.json.put
19+
import kotlinx.serialization.json.putJsonObject
1920
import org.junit.jupiter.api.Assertions.assertEquals
20-
import org.junit.jupiter.api.Assertions.assertNotNull
2121
import org.junit.jupiter.api.BeforeEach
2222
import org.junit.jupiter.api.Test
2323
import java.io.ByteArrayInputStream
@@ -77,35 +77,30 @@ internal class IntercomDestinationTest {
7777
@BeforeEach
7878
internal fun setUp() {
7979
analytics = Analytics(configuration)
80-
intercomDestination = spyk(IntercomDestination(application))
80+
intercomDestination = IntercomDestination(application)
8181
}
8282

8383
@Test
8484
fun `intercom client initialized when settings is updated`() {
85-
val settings = slot<Settings>()
85+
val mobileApiKey = slot<String>()
86+
val appId = slot<String>()
8687

8788
analytics.add(intercomDestination)
8889

8990
verify {
90-
intercomDestination.update(capture(settings), Plugin.UpdateType.Initial)
91-
Intercom.initialize(any(), any(), any())
91+
Intercom.initialize(any(), capture(mobileApiKey), capture(appId))
9292
Intercom.client()
9393
}
9494
assertEquals(intercom, intercomDestination.intercom)
95-
with(settings.captured) {
96-
val integration = this.integrations[intercomDestination.key]?.jsonObject
97-
assertNotNull(integration)
98-
assertEquals("android_sdk-4c2bc22f45f0f20629d4a70c3bb803845039800b", integration?.getString("mobileApiKey"))
99-
assertEquals("qe2y1u8q", integration?.getString("appId"))
100-
}
95+
assertEquals("android_sdk-4c2bc22f45f0f20629d4a70c3bb803845039800b", mobileApiKey.captured)
96+
assertEquals("qe2y1u8q", appId.captured)
10197
}
10298

10399
@Test
104100
fun `intercom client not re-initialized when settings is fresh`() {
105101
analytics.add(intercomDestination)
106102
analytics.checkSettings()
107103
verify (exactly = 1) {
108-
intercomDestination.update(any(), Plugin.UpdateType.Initial)
109104
Intercom.initialize(any(), any(), any())
110105
Intercom.client()
111106
}

0 commit comments

Comments
 (0)