26
26
*/
27
27
28
28
import Foundation
29
+ import OneSignalCore
29
30
import OneSignalOSCore
30
31
import OneSignalOSCoreMocks
31
32
@testable import OneSignalUser
@@ -39,6 +40,36 @@ public class OneSignalUserMocks: NSObject {
39
40
OSCoreMocks . resetOperationRepo ( )
40
41
OneSignalUserManagerImpl . sharedInstance. reset ( )
41
42
}
43
+
44
+ @objc
45
+ public static func cacheUser( ) {
46
+ let identityModel = OSIdentityModel ( aliases: nil , changeNotifier: OSEventProducer ( ) )
47
+ let propertiesModel = OSPropertiesModel ( changeNotifier: OSEventProducer ( ) )
48
+ let subscriptionModel = OneSignalUserManagerImpl . sharedInstance. createDefaultPushSubscription ( subscriptionId: nil )
49
+ // models[id] = model
50
+ OneSignalUserDefaults . initShared ( ) . saveCodeableData (
51
+ forKey: OS_IDENTITY_MODEL_STORE_KEY,
52
+ withValue: [ OS_IDENTITY_MODEL_KEY: identityModel]
53
+ )
54
+ OneSignalUserDefaults . initShared ( ) . saveCodeableData (
55
+ forKey: OS_PROPERTIES_MODEL_STORE_KEY,
56
+ withValue: [ OS_PROPERTIES_MODEL_KEY: propertiesModel]
57
+ )
58
+ OneSignalUserDefaults . initShared ( ) . saveCodeableData (
59
+ forKey: OS_PUSH_SUBSCRIPTION_MODEL_STORE_KEY,
60
+ withValue: [ OS_PUSH_SUBSCRIPTION_MODEL_KEY: subscriptionModel]
61
+ )
62
+ }
63
+
64
+ @objc
65
+ public static func setUser( ) {
66
+ let identityModel = OSIdentityModel ( aliases: nil , changeNotifier: OSEventProducer ( ) )
67
+ let propertiesModel = OSPropertiesModel ( changeNotifier: OSEventProducer ( ) )
68
+ let subscriptionModel = OneSignalUserManagerImpl . sharedInstance. createDefaultPushSubscription ( subscriptionId: nil )
69
+ OneSignalUserManagerImpl . sharedInstance. identityModelStore. add ( id: OS_IDENTITY_MODEL_KEY, model: identityModel, hydrating: false )
70
+ OneSignalUserManagerImpl . sharedInstance. propertiesModelStore. add ( id: OS_PROPERTIES_MODEL_KEY, model: propertiesModel, hydrating: false )
71
+ OneSignalUserManagerImpl . sharedInstance. pushSubscriptionModelStore. add ( id: OS_PUSH_SUBSCRIPTION_MODEL_KEY, model: subscriptionModel, hydrating: false )
72
+ }
42
73
}
43
74
44
75
extension OSIdentityModelRepo {
0 commit comments