diff --git a/src/core/executors/LoginUserOperationExecutor.test.ts b/src/core/executors/LoginUserOperationExecutor.test.ts index f27bb99a1..3e20d9853 100644 --- a/src/core/executors/LoginUserOperationExecutor.test.ts +++ b/src/core/executors/LoginUserOperationExecutor.test.ts @@ -353,6 +353,9 @@ describe('LoginUserOperationExecutor', () => { refresh_device_metadata: true, subscriptions: [ { + device_model: '', + device_os: 56, + sdk: '1', token: mockSubscriptionOpInfo.token, type: mockSubscriptionOpInfo.type, }, @@ -391,6 +394,9 @@ describe('LoginUserOperationExecutor', () => { expect.objectContaining({ subscriptions: [ { + device_model: '', + device_os: 56, + sdk: '1', type: mockSubscriptionOpInfo.type, ...updates, }, @@ -435,7 +441,10 @@ describe('LoginUserOperationExecutor', () => { expect.objectContaining({ subscriptions: [ { + device_model: '', + device_os: 56, id: DUMMY_SUBSCRIPTION_ID, + sdk: '1', type: mockSubscriptionOpInfo.type, token: mockSubscriptionOpInfo.token, }, diff --git a/src/core/executors/SubscriptionOperationExecutor.test.ts b/src/core/executors/SubscriptionOperationExecutor.test.ts index 406d0af40..f336ea94e 100644 --- a/src/core/executors/SubscriptionOperationExecutor.test.ts +++ b/src/core/executors/SubscriptionOperationExecutor.test.ts @@ -194,10 +194,11 @@ describe('SubscriptionOperationExecutor', () => { expect(createSubscriptionFn).toHaveBeenCalledWith({ subscription: { - type: SubscriptionType.ChromePush, enabled: false, - token: 'new-token', notification_types: NotificationType.UserOptedOut, + token: 'new-token', + sdk: '1', + type: SubscriptionType.ChromePush, }, }); }); diff --git a/src/core/executors/SubscriptionOperationExecutor.ts b/src/core/executors/SubscriptionOperationExecutor.ts index 969e7cf50..b9e48ca12 100644 --- a/src/core/executors/SubscriptionOperationExecutor.ts +++ b/src/core/executors/SubscriptionOperationExecutor.ts @@ -85,6 +85,7 @@ export class SubscriptionOperationExecutor implements IOperationExecutor { createOperation.notification_types; const subscription = { + sdk: createOperation.sdk, type: createOperation.type, enabled, token, diff --git a/src/core/operationRepo/OperationRepo.test.ts b/src/core/operationRepo/OperationRepo.test.ts index 26f1c231e..db3786896 100644 --- a/src/core/operationRepo/OperationRepo.test.ts +++ b/src/core/operationRepo/OperationRepo.test.ts @@ -3,6 +3,7 @@ import { DUMMY_ONESIGNAL_ID, DUMMY_SUBSCRIPTION_ID, } from '__test__/support/constants'; +import { mockUserAgent } from '__test__/support/environment/TestEnvironmentHelpers'; import { fakeWaitForOperations } from '__test__/support/helpers/executors'; import Log from 'src/shared/libraries/Log'; import Database, { OperationItem } from 'src/shared/services/Database'; @@ -38,6 +39,7 @@ vi.spyOn(OperationModelStore.prototype, 'create').mockImplementation(() => { }); let mockOperationModelStore: OperationModelStore; +mockUserAgent(); describe('OperationRepo', () => { let opRepo: OperationRepo; diff --git a/src/core/operations/BaseFullSubscriptionOperation.ts b/src/core/operations/BaseFullSubscriptionOperation.ts index 1fbdc4f42..b70dcbc5f 100644 --- a/src/core/operations/BaseFullSubscriptionOperation.ts +++ b/src/core/operations/BaseFullSubscriptionOperation.ts @@ -1,3 +1,4 @@ +import FuturePushSubscriptionRecord from 'src/page/userModel/FuturePushSubscriptionRecord'; import { ICreateUserSubscription } from '../types/api'; import { NotificationTypeValue, @@ -27,11 +28,11 @@ export abstract class BaseFullSubscriptionOperation extends BaseSubscriptionOper super(operationName, appId, onesignalId); if (subscription) { - this.device_model = subscription.device_model; - this.device_os = subscription.device_os; + this.sdk = FuturePushSubscriptionRecord.getSdk(); + this.device_model = FuturePushSubscriptionRecord.getDeviceModel(); + this.device_os = FuturePushSubscriptionRecord.getDeviceOS(); this.enabled = subscription.enabled; this.notification_types = subscription.notification_types; - this.sdk = subscription.sdk; this.subscriptionId = subscription.subscriptionId; this.token = subscription.token; this.type = subscription.type; diff --git a/src/onesignal/OneSignal.test.ts b/src/onesignal/OneSignal.test.ts index 549ee1e82..3ada36211 100644 --- a/src/onesignal/OneSignal.test.ts +++ b/src/onesignal/OneSignal.test.ts @@ -148,8 +148,7 @@ describe('OneSignal', () => { const identityModel = window.OneSignal.coreDirector.getIdentityModel(); expect(identityModel.getProperty('someLabel')).toBeUndefined(); - await waitForOperations(3); - expect(deleteAliasFn).toHaveBeenCalled(); + await vi.waitUntil(() => deleteAliasFn.mock.calls.length === 1); }); test('can delete multiple aliases from the current user', async () => { @@ -213,6 +212,7 @@ describe('OneSignal', () => { const subscription: ICreateUserSubscription = { enabled: true, notification_types: 1, + sdk: '1', token: email, type: 'Email', }; @@ -303,6 +303,7 @@ describe('OneSignal', () => { const subscription: ICreateUserSubscription = { enabled: true, notification_types: 1, + sdk: '1', token: sms, type: 'SMS', };