diff --git a/OneSignalSDK/onesignal/core/src/test/java/com/onesignal/session/internal/session/impl/SessionListenerTests.kt b/OneSignalSDK/onesignal/core/src/test/java/com/onesignal/session/internal/session/impl/SessionListenerTests.kt new file mode 100644 index 000000000..99a633731 --- /dev/null +++ b/OneSignalSDK/onesignal/core/src/test/java/com/onesignal/session/internal/session/impl/SessionListenerTests.kt @@ -0,0 +1,32 @@ +package com.onesignal.session.internal.session.impl + +import com.onesignal.mocks.MockHelper +import com.onesignal.user.internal.operations.TrackSessionStartOperation +import io.kotest.core.spec.style.FunSpec +import io.mockk.mockk +import io.mockk.verify + +class SessionListenerTests : FunSpec({ + + test("onSessionStarted enqueues TrackSessionStartOperation") { + // Given + val mockOperationRepo = mockk(relaxed = true) + + val sessionListener = + SessionListener( + mockOperationRepo, + mockk(relaxed = true), + MockHelper.configModelStore(), + MockHelper.identityModelStore(), + mockk(relaxed = true), + ) + + // When + sessionListener.onSessionStarted() + + // Then + verify(exactly = 1) { + mockOperationRepo.enqueue(any(), true) + } + } +})