Skip to content

Commit

Permalink
add RUMFragmentTest
Browse files Browse the repository at this point in the history
  • Loading branch information
miquelbeltran committed Jan 7, 2025
1 parent 85a791b commit fa11b91
Show file tree
Hide file tree
Showing 3 changed files with 22 additions and 4 deletions.
4 changes: 1 addition & 3 deletions .idea/compiler.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

6 changes: 6 additions & 0 deletions provider/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,12 @@ android {
sourceCompatibility JavaVersion.VERSION_17
targetCompatibility JavaVersion.VERSION_17
}
kotlinOptions {
jvmTarget = "17"
}
kotlin {
jvmToolchain(17)
}

namespace 'com.raygun.raygun4android'

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import androidx.fragment.app.Fragment
import androidx.fragment.app.FragmentManager
import com.raygun.raygun4android.RaygunRUMEventType
import com.raygun.raygun4android.TestTree
import junit.framework.TestCase.fail
import org.junit.After
import org.junit.Before
import org.junit.Test
Expand All @@ -13,6 +14,7 @@ import org.mockito.Mockito.anyLong
import org.mockito.Mockito.mock
import org.mockito.junit.MockitoJUnitRunner
import org.mockito.kotlin.any
import org.mockito.kotlin.eq
import org.mockito.kotlin.verify
import timber.log.Timber

Expand All @@ -37,8 +39,20 @@ class RUMFragmentTest {
val mockRUM = mock<RUM>(RUM::class.java)
val rumFragment = RUMFragment(mockRUM)
val fragment = Fragment()

// Simulate lifecycle from Created to Destroyed
rumFragment.onFragmentCreated(mockFragmentManager, fragment, null)
rumFragment.onFragmentStarted(mockFragmentManager, fragment)
rumFragment.onFragmentResumed(mockFragmentManager, fragment)
verify(mockRUM).sendRUMTimingEvent(RaygunRUMEventType.FRAGMENT_LOADED, "Fragment", anyLong())
rumFragment.onFragmentPaused(mockFragmentManager, fragment)
rumFragment.onFragmentStopped(mockFragmentManager, fragment)
rumFragment.onFragmentDestroyed(mockFragmentManager, fragment)

// onFragmentResumed should have called to sendRUMTimingEvent
verify(mockRUM).sendRUMTimingEvent(
eq(RaygunRUMEventType.FRAGMENT_LOADED),
eq("Fragment"),
anyLong()
)
}
}

0 comments on commit fa11b91

Please sign in to comment.