Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -30,11 +30,9 @@ class UserManagerTests : FunSpec({
val userManager = UserManager(mockSubscriptionManager, MockHelper.identityModelStore(), MockHelper.propertiesModelStore(), languageContext)

/* When */
val language = userManager.language
userManager.language = "new-language"
userManager.setLanguage("new-language")

/* Then */
language shouldBe "custom-language"
languageSlot.captured shouldBe "new-language"
}

Expand Down Expand Up @@ -144,11 +142,11 @@ class UserManagerTests : FunSpec({

/* When */
val subscriptions = userManager.subscriptions
userManager.addEmailSubscription("email@co.com")
userManager.removeEmailSubscription("email@co.com")
userManager.addEmail("email@co.com")
userManager.removeEmail("email@co.com")

userManager.addSmsSubscription("+15558675309")
userManager.removeSmsSubscription("+15558675309")
userManager.addSms("+15558675309")
userManager.removeSms("+15558675309")

/* Then */
subscriptions shouldBe subscriptionList
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ import com.onesignal.core.internal.operations.Operation
import com.onesignal.mocks.MockHelper
import com.onesignal.user.internal.backend.IIdentityBackendService
import com.onesignal.user.internal.backend.IdentityConstants
import com.onesignal.user.internal.builduser.IRebuildUserService
import com.onesignal.user.internal.identity.IdentityModel
import com.onesignal.user.internal.identity.IdentityModelStore
import com.onesignal.user.internal.operations.impl.executors.IdentityOperationExecutor
Expand Down Expand Up @@ -37,7 +38,9 @@ class IdentityOperationExecutorTests : FunSpec({
val mockIdentityModelStore = mockk<IdentityModelStore>()
every { mockIdentityModelStore.model } returns mockIdentityModel

val identityOperationExecutor = IdentityOperationExecutor(mockIdentityBackendService, mockIdentityModelStore)
val mockBuildUserService = mockk<IRebuildUserService>()

val identityOperationExecutor = IdentityOperationExecutor(mockIdentityBackendService, mockIdentityModelStore, mockBuildUserService)
val operations = listOf<Operation>(SetAliasOperation("appId", "onesignalId", "aliasKey1", "aliasValue1"))

/* When */
Expand All @@ -55,8 +58,9 @@ class IdentityOperationExecutorTests : FunSpec({
coEvery { mockIdentityBackendService.setAlias(any(), any(), any(), any()) } throws BackendException(408, "TIMEOUT")

val mockIdentityModelStore = MockHelper.identityModelStore()
val mockBuildUserService = mockk<IRebuildUserService>()

val identityOperationExecutor = IdentityOperationExecutor(mockIdentityBackendService, mockIdentityModelStore)
val identityOperationExecutor = IdentityOperationExecutor(mockIdentityBackendService, mockIdentityModelStore, mockBuildUserService)
val operations = listOf<Operation>(SetAliasOperation("appId", "onesignalId", "aliasKey1", "aliasValue1"))

/* When */
Expand All @@ -70,11 +74,12 @@ class IdentityOperationExecutorTests : FunSpec({
test("execution of set alias operation with non-retryable error") {
/* Given */
val mockIdentityBackendService = mockk<IIdentityBackendService>()
coEvery { mockIdentityBackendService.setAlias(any(), any(), any(), any()) } throws BackendException(404, "NOT FOUND")
coEvery { mockIdentityBackendService.setAlias(any(), any(), any(), any()) } throws BackendException(400, "INVALID")

val mockIdentityModelStore = MockHelper.identityModelStore()
val mockBuildUserService = mockk<IRebuildUserService>()

val identityOperationExecutor = IdentityOperationExecutor(mockIdentityBackendService, mockIdentityModelStore)
val identityOperationExecutor = IdentityOperationExecutor(mockIdentityBackendService, mockIdentityModelStore, mockBuildUserService)
val operations = listOf<Operation>(SetAliasOperation("appId", "onesignalId", "aliasKey1", "aliasValue1"))

/* When */
Expand All @@ -97,7 +102,9 @@ class IdentityOperationExecutorTests : FunSpec({
val mockIdentityModelStore = mockk<IdentityModelStore>()
every { mockIdentityModelStore.model } returns mockIdentityModel

val identityOperationExecutor = IdentityOperationExecutor(mockIdentityBackendService, mockIdentityModelStore)
val mockBuildUserService = mockk<IRebuildUserService>()

val identityOperationExecutor = IdentityOperationExecutor(mockIdentityBackendService, mockIdentityModelStore, mockBuildUserService)
val operations = listOf<Operation>(DeleteAliasOperation("appId", "onesignalId", "aliasKey1"))

/* When */
Expand All @@ -115,8 +122,9 @@ class IdentityOperationExecutorTests : FunSpec({
coEvery { mockIdentityBackendService.deleteAlias(any(), any(), any(), any()) } throws BackendException(408, "TIMEOUT")

val mockIdentityModelStore = MockHelper.identityModelStore()
val mockBuildUserService = mockk<IRebuildUserService>()

val identityOperationExecutor = IdentityOperationExecutor(mockIdentityBackendService, mockIdentityModelStore)
val identityOperationExecutor = IdentityOperationExecutor(mockIdentityBackendService, mockIdentityModelStore, mockBuildUserService)
val operations = listOf<Operation>(DeleteAliasOperation("appId", "onesignalId", "aliasKey1"))

/* When */
Expand All @@ -130,11 +138,12 @@ class IdentityOperationExecutorTests : FunSpec({
test("execution of delete alias operation with non-retryable error") {
/* Given */
val mockIdentityBackendService = mockk<IIdentityBackendService>()
coEvery { mockIdentityBackendService.deleteAlias(any(), any(), any(), any()) } throws BackendException(404, "NOT FOUND")
coEvery { mockIdentityBackendService.deleteAlias(any(), any(), any(), any()) } throws BackendException(400, "INVALID")

val mockIdentityModelStore = MockHelper.identityModelStore()
val mockBuildUserService = mockk<IRebuildUserService>()

val identityOperationExecutor = IdentityOperationExecutor(mockIdentityBackendService, mockIdentityModelStore)
val identityOperationExecutor = IdentityOperationExecutor(mockIdentityBackendService, mockIdentityModelStore, mockBuildUserService)
val operations = listOf<Operation>(DeleteAliasOperation("appId", "onesignalId", "aliasKey1"))

/* When */
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,8 @@ class LoginUserOperationExecutorTests : FunSpec({
mockUserBackendService,
mockIdentityModelStore,
mockPropertiesModelStore,
mockSubscriptionsModelStore
mockSubscriptionsModelStore,
MockHelper.configModelStore()
)
val operations = listOf<Operation>(LoginUserOperation(appId, localOneSignalId, null, null))

Expand Down Expand Up @@ -95,7 +96,7 @@ class LoginUserOperationExecutorTests : FunSpec({
val mockPropertiesModelStore = MockHelper.propertiesModelStore()
val mockSubscriptionsModelStore = mockk<SubscriptionModelStore>()

val loginUserOperationExecutor = LoginUserOperationExecutor(mockIdentityOperationExecutor, MockHelper.applicationService(), MockHelper.deviceService(), mockUserBackendService, mockIdentityModelStore, mockPropertiesModelStore, mockSubscriptionsModelStore)
val loginUserOperationExecutor = LoginUserOperationExecutor(mockIdentityOperationExecutor, MockHelper.applicationService(), MockHelper.deviceService(), mockUserBackendService, mockIdentityModelStore, mockPropertiesModelStore, mockSubscriptionsModelStore, MockHelper.configModelStore())
val operations = listOf<Operation>(LoginUserOperation(appId, localOneSignalId, null, null))

/* When */
Expand All @@ -117,7 +118,7 @@ class LoginUserOperationExecutorTests : FunSpec({
val mockPropertiesModelStore = MockHelper.propertiesModelStore()
val mockSubscriptionsModelStore = mockk<SubscriptionModelStore>()

val loginUserOperationExecutor = LoginUserOperationExecutor(mockIdentityOperationExecutor, MockHelper.applicationService(), MockHelper.deviceService(), mockUserBackendService, mockIdentityModelStore, mockPropertiesModelStore, mockSubscriptionsModelStore)
val loginUserOperationExecutor = LoginUserOperationExecutor(mockIdentityOperationExecutor, MockHelper.applicationService(), MockHelper.deviceService(), mockUserBackendService, mockIdentityModelStore, mockPropertiesModelStore, mockSubscriptionsModelStore, MockHelper.configModelStore())
val operations = listOf<Operation>(LoginUserOperation(appId, localOneSignalId, null, null))

/* When */
Expand All @@ -140,7 +141,7 @@ class LoginUserOperationExecutorTests : FunSpec({
val mockPropertiesModelStore = MockHelper.propertiesModelStore()
val mockSubscriptionsModelStore = mockk<SubscriptionModelStore>()

val loginUserOperationExecutor = LoginUserOperationExecutor(mockIdentityOperationExecutor, MockHelper.applicationService(), MockHelper.deviceService(), mockUserBackendService, mockIdentityModelStore, mockPropertiesModelStore, mockSubscriptionsModelStore)
val loginUserOperationExecutor = LoginUserOperationExecutor(mockIdentityOperationExecutor, MockHelper.applicationService(), MockHelper.deviceService(), mockUserBackendService, mockIdentityModelStore, mockPropertiesModelStore, mockSubscriptionsModelStore, MockHelper.configModelStore())
val operations = listOf<Operation>(LoginUserOperation(appId, localOneSignalId, "externalId", null))

/* When */
Expand All @@ -162,7 +163,7 @@ class LoginUserOperationExecutorTests : FunSpec({
val mockPropertiesModelStore = MockHelper.propertiesModelStore()
val mockSubscriptionsModelStore = mockk<SubscriptionModelStore>()

val loginUserOperationExecutor = LoginUserOperationExecutor(mockIdentityOperationExecutor, MockHelper.applicationService(), MockHelper.deviceService(), mockUserBackendService, mockIdentityModelStore, mockPropertiesModelStore, mockSubscriptionsModelStore)
val loginUserOperationExecutor = LoginUserOperationExecutor(mockIdentityOperationExecutor, MockHelper.applicationService(), MockHelper.deviceService(), mockUserBackendService, mockIdentityModelStore, mockPropertiesModelStore, mockSubscriptionsModelStore, MockHelper.configModelStore())
val operations = listOf<Operation>(LoginUserOperation(appId, localOneSignalId, "externalId", "existingOneSignalId"))

/* When */
Expand Down Expand Up @@ -197,7 +198,7 @@ class LoginUserOperationExecutorTests : FunSpec({
val mockPropertiesModelStore = MockHelper.propertiesModelStore()
val mockSubscriptionsModelStore = mockk<SubscriptionModelStore>()

val loginUserOperationExecutor = LoginUserOperationExecutor(mockIdentityOperationExecutor, MockHelper.applicationService(), MockHelper.deviceService(), mockUserBackendService, mockIdentityModelStore, mockPropertiesModelStore, mockSubscriptionsModelStore)
val loginUserOperationExecutor = LoginUserOperationExecutor(mockIdentityOperationExecutor, MockHelper.applicationService(), MockHelper.deviceService(), mockUserBackendService, mockIdentityModelStore, mockPropertiesModelStore, mockSubscriptionsModelStore, MockHelper.configModelStore())
val operations = listOf<Operation>(LoginUserOperation(appId, localOneSignalId, "externalId", "existingOneSignalId"))

/* When */
Expand Down Expand Up @@ -232,7 +233,7 @@ class LoginUserOperationExecutorTests : FunSpec({
val mockPropertiesModelStore = MockHelper.propertiesModelStore()
val mockSubscriptionsModelStore = mockk<SubscriptionModelStore>()

val loginUserOperationExecutor = LoginUserOperationExecutor(mockIdentityOperationExecutor, MockHelper.applicationService(), MockHelper.deviceService(), mockUserBackendService, mockIdentityModelStore, mockPropertiesModelStore, mockSubscriptionsModelStore)
val loginUserOperationExecutor = LoginUserOperationExecutor(mockIdentityOperationExecutor, MockHelper.applicationService(), MockHelper.deviceService(), mockUserBackendService, mockIdentityModelStore, mockPropertiesModelStore, mockSubscriptionsModelStore, MockHelper.configModelStore())
val operations = listOf<Operation>(LoginUserOperation(appId, localOneSignalId, "externalId", "existingOneSignalId"))

/* When */
Expand Down Expand Up @@ -267,7 +268,7 @@ class LoginUserOperationExecutorTests : FunSpec({
val mockPropertiesModelStore = MockHelper.propertiesModelStore()
val mockSubscriptionsModelStore = mockk<SubscriptionModelStore>()

val loginUserOperationExecutor = LoginUserOperationExecutor(mockIdentityOperationExecutor, MockHelper.applicationService(), MockHelper.deviceService(), mockUserBackendService, mockIdentityModelStore, mockPropertiesModelStore, mockSubscriptionsModelStore)
val loginUserOperationExecutor = LoginUserOperationExecutor(mockIdentityOperationExecutor, MockHelper.applicationService(), MockHelper.deviceService(), mockUserBackendService, mockIdentityModelStore, mockPropertiesModelStore, mockSubscriptionsModelStore, MockHelper.configModelStore())
val operations = listOf<Operation>(LoginUserOperation(appId, localOneSignalId, "externalId", "existingOneSignalId"))

/* When */
Expand Down Expand Up @@ -312,7 +313,8 @@ class LoginUserOperationExecutorTests : FunSpec({
mockUserBackendService,
mockIdentityModelStore,
mockPropertiesModelStore,
mockSubscriptionsModelStore
mockSubscriptionsModelStore,
MockHelper.configModelStore()
)
val operations = listOf<Operation>(
LoginUserOperation(appId, localOneSignalId, null, null),
Expand Down Expand Up @@ -405,7 +407,8 @@ class LoginUserOperationExecutorTests : FunSpec({
mockUserBackendService,
mockIdentityModelStore,
mockPropertiesModelStore,
mockSubscriptionsModelStore
mockSubscriptionsModelStore,
MockHelper.configModelStore()
)
val operations = listOf<Operation>(
LoginUserOperation(appId, localOneSignalId, null, null),
Expand Down Expand Up @@ -471,7 +474,8 @@ class LoginUserOperationExecutorTests : FunSpec({
mockUserBackendService,
mockIdentityModelStore,
mockPropertiesModelStore,
mockSubscriptionsModelStore
mockSubscriptionsModelStore,
MockHelper.configModelStore()
)
val operations = listOf<Operation>(
LoginUserOperation(appId, localOneSignalId, null, null),
Expand Down Expand Up @@ -523,7 +527,8 @@ class LoginUserOperationExecutorTests : FunSpec({
mockUserBackendService,
mockIdentityModelStore,
mockPropertiesModelStore,
mockSubscriptionsModelStore
mockSubscriptionsModelStore,
MockHelper.configModelStore()
)
val operations = listOf<Operation>(
LoginUserOperation(appId, localOneSignalId, null, null),
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ import com.onesignal.user.internal.backend.IdentityConstants
import com.onesignal.user.internal.backend.PropertiesObject
import com.onesignal.user.internal.backend.SubscriptionObject
import com.onesignal.user.internal.backend.SubscriptionObjectType
import com.onesignal.user.internal.builduser.IRebuildUserService
import com.onesignal.user.internal.identity.IdentityModel
import com.onesignal.user.internal.operations.impl.executors.RefreshUserOperationExecutor
import com.onesignal.user.internal.properties.PropertiesModel
Expand Down Expand Up @@ -62,11 +63,15 @@ class RefreshUserOperationExecutorTests : FunSpec({
val mockSubscriptionsModelStore = mockk<SubscriptionModelStore>()
every { mockSubscriptionsModelStore.replaceAll(any(), any()) } just runs

val mockBuildUserService = mockk<IRebuildUserService>()

val loginUserOperationExecutor = RefreshUserOperationExecutor(
mockUserBackendService,
mockIdentityModelStore,
mockPropertiesModelStore,
mockSubscriptionsModelStore
mockSubscriptionsModelStore,
MockHelper.configModelStore(),
mockBuildUserService
)

val operations = listOf<Operation>(RefreshUserOperation(appId, remoteOneSignalId))
Expand Down Expand Up @@ -131,12 +136,15 @@ class RefreshUserOperationExecutorTests : FunSpec({
every { mockPropertiesModelStore.model } returns mockPropertiesModel

val mockSubscriptionsModelStore = mockk<SubscriptionModelStore>()
val mockBuildUserService = mockk<IRebuildUserService>()

val loginUserOperationExecutor = RefreshUserOperationExecutor(
mockUserBackendService,
mockIdentityModelStore,
mockPropertiesModelStore,
mockSubscriptionsModelStore
mockSubscriptionsModelStore,
MockHelper.configModelStore(),
mockBuildUserService
)

val operations = listOf<Operation>(RefreshUserOperation(appId, remoteOneSignalId))
Expand All @@ -163,12 +171,15 @@ class RefreshUserOperationExecutorTests : FunSpec({
val mockIdentityModelStore = MockHelper.identityModelStore()
val mockPropertiesModelStore = MockHelper.propertiesModelStore()
val mockSubscriptionsModelStore = mockk<SubscriptionModelStore>()
val mockBuildUserService = mockk<IRebuildUserService>()

val loginUserOperationExecutor = RefreshUserOperationExecutor(
mockUserBackendService,
mockIdentityModelStore,
mockPropertiesModelStore,
mockSubscriptionsModelStore
mockSubscriptionsModelStore,
MockHelper.configModelStore(),
mockBuildUserService
)

val operations = listOf<Operation>(RefreshUserOperation(appId, remoteOneSignalId))
Expand All @@ -186,18 +197,21 @@ class RefreshUserOperationExecutorTests : FunSpec({
test("refresh user fails without retry when there is a backend error condition") {
/* Given */
val mockUserBackendService = mockk<IUserBackendService>()
coEvery { mockUserBackendService.getUser(appId, IdentityConstants.ONESIGNAL_ID, remoteOneSignalId) } throws BackendException(404)
coEvery { mockUserBackendService.getUser(appId, IdentityConstants.ONESIGNAL_ID, remoteOneSignalId) } throws BackendException(400)

/* Given */
val mockIdentityModelStore = MockHelper.identityModelStore()
val mockPropertiesModelStore = MockHelper.propertiesModelStore()
val mockSubscriptionsModelStore = mockk<SubscriptionModelStore>()
val mockBuildUserService = mockk<IRebuildUserService>()

val loginUserOperationExecutor = RefreshUserOperationExecutor(
mockUserBackendService,
mockIdentityModelStore,
mockPropertiesModelStore,
mockSubscriptionsModelStore
mockSubscriptionsModelStore,
MockHelper.configModelStore(),
mockBuildUserService
)

val operations = listOf<Operation>(RefreshUserOperation(appId, remoteOneSignalId))
Expand Down
Loading