Skip to content

Commit 82a4cd0

Browse files
committed
Add more testing
1 parent 53c51af commit 82a4cd0

4 files changed

Lines changed: 74 additions & 20 deletions

File tree

.github/workflows/pull-request.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -54,10 +54,10 @@ jobs:
5454
adb uninstall com.mparticle.legacyTest || true
5555
adb uninstall com.mparticle.test || true
5656
57-
./gradlew connectedCheck --stacktrace
58-
59-
./gradlew :android-core:cAT -Pandroid.testInstrumentationRunnerArguments.androidx.benchmark.enabledRules=none
60-
./gradlew :android-kit-base:cAT -Pandroid.testInstrumentationRunnerArguments.androidx.benchmark.enabledRules=none
57+
./gradlew connectedCheck --info --stacktrace
58+
59+
./gradlew :android-core:cAT -Pandroid.testInstrumentationRunnerArguments.androidx.benchmark.enabledRules=none --info
60+
./gradlew :android-kit-base:cAT -Pandroid.testInstrumentationRunnerArguments.androidx.benchmark.enabledRules=none --info
6161
- name: "Archive Instrumented Tests Results"
6262
uses: actions/upload-artifact@v4
6363
if: always()

android-core/build.gradle

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -163,6 +163,7 @@ dependencies {
163163
testImplementation "org.jetbrains.kotlinx:kotlinx-coroutines-test:$kotlin_version"
164164

165165
androidTestImplementation project(':testutils')
166+
androidTestImplementation 'org.mockito:mockito-android:2.28.2'
166167
if (useOrchestrator()) {
167168
androidTestImplementation 'androidx.test:runner:1.4.0'
168169
androidTestUtil 'androidx.test:orchestrator:1.4.2'
Lines changed: 69 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,69 @@
1+
package com.mparticle
2+
3+
import androidx.test.ext.junit.runners.AndroidJUnit4
4+
import com.mparticle.testutils.BaseCleanInstallEachTest
5+
import org.junit.Assert.assertEquals
6+
import org.junit.Assert.assertNull
7+
import org.junit.Before
8+
import org.junit.Test
9+
import org.junit.runner.RunWith
10+
import org.mockito.Mockito
11+
import org.mockito.Mockito.verify
12+
13+
@RunWith(AndroidJUnit4::class)
14+
class InstallReferrerHelperTest : BaseCleanInstallEachTest() {
15+
16+
@Before
17+
fun before() {
18+
InstallReferrerHelper.setInstallReferrer(mContext, null)
19+
}
20+
21+
@Test
22+
fun testSetAndGetInstallReferrer() {
23+
val referrer = "test_referrer"
24+
InstallReferrerHelper.setInstallReferrer(mContext, referrer)
25+
assertEquals(referrer, InstallReferrerHelper.getInstallReferrer(mContext))
26+
}
27+
28+
@Test
29+
fun testGetInstallReferrerWhenNotSet() {
30+
assertNull(InstallReferrerHelper.getInstallReferrer(mContext))
31+
}
32+
33+
@Test
34+
fun testSetNullInstallReferrer() {
35+
InstallReferrerHelper.setInstallReferrer(mContext, "previous_referrer")
36+
InstallReferrerHelper.setInstallReferrer(mContext, null)
37+
assertNull(InstallReferrerHelper.getInstallReferrer(mContext))
38+
}
39+
40+
@Test
41+
fun testSetEmptyInstallReferrer() {
42+
InstallReferrerHelper.setInstallReferrer(mContext, "previous_referrer")
43+
InstallReferrerHelper.setInstallReferrer(mContext, "")
44+
assertEquals("", InstallReferrerHelper.getInstallReferrer(mContext))
45+
}
46+
47+
@Test
48+
fun testFetchInstallReferrerAlreadyPresent() {
49+
val initialReferrer = "was already here"
50+
InstallReferrerHelper.setInstallReferrer(mContext, initialReferrer)
51+
val callback = Mockito.mock(InstallReferrerHelper.InstallReferrerCallback::class.java)
52+
InstallReferrerHelper.fetchInstallReferrer(mContext, callback)
53+
54+
verify(callback, Mockito.never()).onReceived(Mockito.any())
55+
verify(callback, Mockito.never()).onFailed()
56+
57+
assertEquals(initialReferrer, InstallReferrerHelper.getInstallReferrer(mContext))
58+
}
59+
60+
@Test
61+
fun testFetchInstallReferrerFails() {
62+
assertNull(InstallReferrerHelper.getInstallReferrer(mContext))
63+
val callback = Mockito.mock(InstallReferrerHelper.InstallReferrerCallback::class.java)
64+
InstallReferrerHelper.fetchInstallReferrer(mContext, callback)
65+
66+
verify(callback).onFailed()
67+
verify(callback, Mockito.never()).onReceived(Mockito.anyString())
68+
}
69+
}

android-core/src/test/kotlin/com/mparticle/internal/InstallReceiverHelperTest.kt

Lines changed: 0 additions & 16 deletions
This file was deleted.

0 commit comments

Comments
 (0)