Skip to content

Commit db87d77

Browse files
authored
Merge pull request #3 from segment-integrations/development
development to main
2 parents ce11757 + 0150b8b commit db87d77

File tree

2 files changed

+23
-31
lines changed

2 files changed

+23
-31
lines changed

lib/src/main/java/com/segment/analytics/kotlin/destinations/adjust/AdjustDestination.kt

Lines changed: 17 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -23,9 +23,7 @@ import kotlinx.serialization.json.put
2323
* @see <a href="https://segment.com/docs/integrations/adjust/">Adjust Integration</a>
2424
* @see <a href="https://github.com/adjust/android_sdk">Adjust Android SDK</a>
2525
*/
26-
class AdjustDestination(
27-
private var adjustInstance: AdjustInstance = Adjust.getDefaultInstance()
28-
) : DestinationPlugin(), AndroidLifecycle {
26+
class AdjustDestination : DestinationPlugin(), AndroidLifecycle {
2927

3028
internal var settings: AdjustSettings? = null
3129

@@ -60,16 +58,17 @@ class AdjustDestination(
6058
AdjustSegmentAttributionChangedListener(analytics)
6159
adjustConfig.setOnAttributionChangedListener(listener)
6260
}
63-
adjustInstance.onCreate(adjustConfig)
61+
Adjust.onCreate(adjustConfig)
62+
Adjust.onResume()
6463
analytics.log("Adjust Destination loaded")
6564
}
6665
}
6766
}
6867
}
6968

70-
override fun identify(payload: IdentifyEvent): BaseEvent? {
69+
override fun identify(payload: IdentifyEvent): BaseEvent {
7170
setPartnerParams(payload)
72-
return super.identify(payload)
71+
return payload
7372
}
7473

7574
override fun track(payload: TrackEvent): BaseEvent? {
@@ -90,41 +89,43 @@ class AdjustDestination(
9089
if (revenue != 0.0 && currency.isNotEmpty()) {
9190
event.setRevenue(revenue, currency)
9291
}
93-
analytics.log("Adjust.getDefaultInstance().trackEvent($event);")
94-
adjustInstance.trackEvent(event)
92+
analytics.log("Adjust.trackEvent($event)")
93+
Adjust.trackEvent(event)
9594
return payload
9695
}
9796

9897
override fun reset() {
9998
super.reset()
100-
adjustInstance.resetSessionPartnerParameters()
101-
analytics.log("Adjust.getDefaultInstance().resetSessionPartnerParameters()")
99+
Adjust.resetSessionPartnerParameters()
100+
analytics.log("Adjust.resetSessionPartnerParameters()")
102101
}
103102

104103
/**
105104
* AndroidActivity Lifecycle Methods
106105
*/
107106
override fun onActivityResumed(activity: Activity?) {
108107
super.onActivityResumed(activity)
109-
adjustInstance.onResume()
108+
Adjust.onResume()
109+
analytics.log("Adjust.onResume()")
110110
}
111111

112112
override fun onActivityPaused(activity: Activity?) {
113113
super.onActivityPaused(activity)
114-
adjustInstance.onPause()
114+
Adjust.onPause()
115+
analytics.log("Adjust.onPause()")
115116
}
116117

117118
/**
118119
* adding session Partner parameters to Adjust. It will merge session partner parameters with event partner parameter.
119120
*/
120121
private fun setPartnerParams(payload: BaseEvent) {
121122
if (payload.userId.isNotEmpty()) {
122-
adjustInstance.addSessionPartnerParameter("userId", payload.userId)
123-
analytics.log("Adjust.getDefaultInstance().addSessionPartnerParameter(userId, ${payload.userId})")
123+
Adjust.addSessionPartnerParameter("userId", payload.userId)
124+
analytics.log("Adjust.addSessionPartnerParameter(userId, ${payload.userId})")
124125
}
125126
if (payload.anonymousId.isNotEmpty()) {
126-
adjustInstance.addSessionPartnerParameter("anonymousId", payload.anonymousId)
127-
analytics.log("Adjust.getDefaultInstance().addSessionPartnerParameter(anonymousId, ${payload.anonymousId})")
127+
Adjust.addSessionPartnerParameter("anonymousId", payload.anonymousId)
128+
analytics.log("Adjust.addSessionPartnerParameter(anonymousId, ${payload.anonymousId})")
128129
}
129130
}
130131

lib/src/test/kotlin/com/segment/analytics/kotlin/destinations/adjust/AdjustDestinationTests.kt

Lines changed: 6 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@ import android.content.Context
66
import android.os.Build
77
import com.adjust.sdk.Adjust
88
import com.adjust.sdk.AdjustAttribution
9-
import com.adjust.sdk.AdjustInstance
109
import com.segment.analytics.kotlin.core.*
1110
import com.segment.analytics.kotlin.core.platform.Plugin
1211
import com.segment.analytics.kotlin.core.utilities.LenientJson
@@ -35,9 +34,6 @@ class AdjustDestinationTests {
3534
@MockK(relaxUnitFun = true)
3635
lateinit var mockedAnalytics: Analytics
3736

38-
@MockK(relaxUnitFun = true)
39-
lateinit var mockedAdjustInstance: AdjustInstance
40-
4137
private lateinit var adjustDestination: AdjustDestination
4238

4339
private val sampleAdjustSettings: Settings = LenientJson.decodeFromString(
@@ -65,15 +61,11 @@ class AdjustDestinationTests {
6561
@Before
6662
fun setUp() {
6763
mockkStatic(Adjust::class)
68-
every { Adjust.getDefaultInstance() } answers { mockedAdjustInstance }
6964
adjustDestination = AdjustDestination()
7065
every { mockedAnalytics.configuration.application } returns mockApplication
7166
every { mockApplication.applicationContext } returns mockedContext
7267
mockedAnalytics.configuration.application = mockedContext
73-
7468
adjustDestination.analytics = mockedAnalytics
75-
76-
mockkStatic(Adjust::class)
7769
}
7870

7971

@@ -143,7 +135,7 @@ class AdjustDestinationTests {
143135
}
144136
val identifyEvent = adjustDestination.identify(sampleIdentifyEvent)
145137
assertNotNull(identifyEvent)
146-
verify { mockedAdjustInstance.addSessionPartnerParameter("userId", "adjust-UserID-123") }
138+
verify { Adjust.addSessionPartnerParameter("userId", "adjust-UserID-123") }
147139
}
148140

149141
@Test
@@ -166,7 +158,7 @@ class AdjustDestinationTests {
166158
val identifyEvent = adjustDestination.identify(sampleIdentifyEvent)
167159
assertNotNull(identifyEvent)
168160
verify {
169-
mockedAdjustInstance.addSessionPartnerParameter(
161+
Adjust.addSessionPartnerParameter(
170162
"anonymousId",
171163
"adjust-anonId-123"
172164
)
@@ -176,13 +168,12 @@ class AdjustDestinationTests {
176168
@Test
177169
fun `reset is handled correctly`() {
178170
adjustDestination.reset()
179-
verify { mockedAdjustInstance.resetSessionPartnerParameters() }
171+
verify { Adjust.resetSessionPartnerParameters() }
180172
}
181173

182174
@Test
183175
fun `track is handled correctly`() {
184176
adjustDestination.update(sampleAdjustSettings, Plugin.UpdateType.Initial)
185-
186177
val sampleTrackEvent = TrackEvent(
187178
event = "foo",
188179
properties = buildJsonObject {
@@ -198,7 +189,7 @@ class AdjustDestinationTests {
198189
}
199190
val trackEvent = adjustDestination.track(sampleTrackEvent)
200191
assertNotNull(trackEvent)
201-
// verify { mockedAdjustInstance.trackEvent(AdjustEvent("foo")) }
192+
verify { Adjust.trackEvent(any()) }
202193
}
203194

204195
@Test
@@ -231,12 +222,12 @@ class AdjustDestinationTests {
231222
@Test
232223
fun `onActivityResumed() handled correctly`() {
233224
adjustDestination.onActivityResumed(mockkClass(Activity::class))
234-
verify { mockedAdjustInstance.onResume() }
225+
verify { Adjust.onResume() }
235226
}
236227

237228
@Test
238229
fun `onActivityPaused() handled correctly`() {
239230
adjustDestination.onActivityPaused(mockkClass(Activity::class))
240-
verify { mockedAdjustInstance.onPause() }
231+
verify { Adjust.onPause() }
241232
}
242233
}

0 commit comments

Comments
 (0)