Skip to content

Commit fa71306

Browse files
committed
Move dependencies inside MPUserDefaultsConnector. This allows removing dependencies on MParticle, MPBackendController, etc. from MPUserDefaults during its migration to a Swift target.
1 parent ebd8c66 commit fa71306

30 files changed

+188
-183
lines changed

UnitTests/ObjCTests/MPBackendControllerTests.m

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
#import "MPKitConfiguration.h"
1818
#import "MParticleSwift.h"
1919
#import "MPBaseTestCase.h"
20+
#import "MPUserDefaultsConnector.h"
2021

2122
#if TARGET_OS_IOS == 1
2223
#import <CoreLocation/CoreLocation.h>
@@ -550,7 +551,7 @@ - (void)testBatchCycle {
550551
}
551552

552553
- (void)testUploadWithDifferentUser {
553-
MPUserDefaults *userDefaults = [MPUserDefaults standardUserDefaultsWithStateMachine:[MParticle sharedInstance].stateMachine backendController:[MParticle sharedInstance].backendController identity:[MParticle sharedInstance].identity];
554+
MPUserDefaults *userDefaults = MPUserDefaultsConnector.userDefaults;
554555

555556
//Set up Identity to exist
556557
[userDefaults setMPObject:[NSDate date] forKey:kMPLastIdentifiedDate userId:@1];
@@ -1298,7 +1299,7 @@ - (void)testSetUserAttributeKits {
12981299
kMPRemoteConfigSessionTimeoutKey:@112};
12991300

13001301
NSTimeInterval requestTimestamp = [[NSDate date] timeIntervalSince1970];
1301-
[[MPUserDefaults standardUserDefaultsWithStateMachine:[MParticle sharedInstance].stateMachine backendController:[MParticle sharedInstance].backendController identity:[MParticle sharedInstance].identity] setConfiguration:configuration eTag:eTag requestTimestamp:requestTimestamp currentAge:0 maxAge:nil];
1302+
[MPUserDefaultsConnector.userDefaults setConfiguration:configuration eTag:eTag requestTimestamp:requestTimestamp currentAge:0 maxAge:nil];
13021303
}
13031304

13041305
[self.backendController setUserAttribute:@"foo attribute 3" value:@"foo value 3" timestamp:[NSDate date] completionHandler:^(NSString * _Nonnull key, id _Nullable value, MPExecStatus execStatus) {}];
@@ -2173,7 +2174,7 @@ - (void)testUserIdentitiesForUserIdNoInvalidIdTypes {
21732174
NSArray *userIdentities = @[validUserId];
21742175

21752176
MParticleUser *currentUser = [[[MParticle sharedInstance] identity] currentUser];
2176-
MPUserDefaults *userDefaults = [MPUserDefaults standardUserDefaultsWithStateMachine:[MParticle sharedInstance].stateMachine backendController:[MParticle sharedInstance].backendController identity:[MParticle sharedInstance].identity];
2177+
MPUserDefaults *userDefaults = MPUserDefaultsConnector.userDefaults;
21772178
[userDefaults setMPObject:userIdentities forKey:kMPUserIdentityArrayKey userId:currentUser.userId];
21782179

21792180
NSArray *currentUserIdentities = [[[MParticle sharedInstance] backendController] userIdentitiesForUserId:currentUser.userId];
@@ -2197,7 +2198,7 @@ - (void)testUserIdentitiesForUserIdOneInvalidIdType {
21972198
NSArray *userIdentities = @[validUserId, invalidUserId];
21982199

21992200
MParticleUser *currentUser = [[[MParticle sharedInstance] identity] currentUser];
2200-
MPUserDefaults *userDefaults = [MPUserDefaults standardUserDefaultsWithStateMachine:[MParticle sharedInstance].stateMachine backendController:[MParticle sharedInstance].backendController identity:[MParticle sharedInstance].identity];
2201+
MPUserDefaults *userDefaults = MPUserDefaultsConnector.userDefaults;
22012202
[userDefaults setMPObject:userIdentities forKey:kMPUserIdentityArrayKey userId:currentUser.userId];
22022203

22032204
NSArray *currentUserIdentities = [[[MParticle sharedInstance] backendController] userIdentitiesForUserId:currentUser.userId];
@@ -2226,7 +2227,7 @@ - (void)testUserIdentitiesForUserIdMultipleInvalidIdTypes {
22262227
NSArray *userIdentities = @[validUserId, invalidUserId, invalidUserId2];
22272228

22282229
MParticleUser *currentUser = [[[MParticle sharedInstance] identity] currentUser];
2229-
MPUserDefaults *userDefaults = [MPUserDefaults standardUserDefaultsWithStateMachine:[MParticle sharedInstance].stateMachine backendController:[MParticle sharedInstance].backendController identity:[MParticle sharedInstance].identity];
2230+
MPUserDefaults *userDefaults = MPUserDefaultsConnector.userDefaults;
22302231
[userDefaults setMPObject:userIdentities forKey:kMPUserIdentityArrayKey userId:currentUser.userId];
22312232

22322233
NSArray *currentUserIdentities = [[[MParticle sharedInstance] backendController] userIdentitiesForUserId:currentUser.userId];

UnitTests/ObjCTests/MPKitAPITests.m

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
#import "MPKitContainer.h"
88
#import "MPKitConfiguration.h"
99
#import "MPIConstants.h"
10+
#import "MPUserDefaultsConnector.h"
1011
@import mParticle_Apple_SDK_Swift;
1112

1213
@interface MPKitContainer_PRIVATE ()
@@ -116,7 +117,7 @@ - (void)testUserIdentities {
116117
@"f":@NO
117118
}
118119
];
119-
MPUserDefaults *userDefaults = [MPUserDefaults standardUserDefaultsWithStateMachine:[MParticle sharedInstance].stateMachine backendController:[MParticle sharedInstance].backendController identity:[MParticle sharedInstance].identity];
120+
MPUserDefaults *userDefaults = MPUserDefaultsConnector.userDefaults;
120121
[userDefaults setMPObject:userIdentities forKey:kMPUserIdentityArrayKey userId:currentUser.userId];
121122
[userDefaults removeMPObjectForKey:@"ua"];
122123

@@ -159,7 +160,7 @@ - (void)testUserAttributeFromCache {
159160
@"better data":@"ABC",
160161
@"bad data":@"12345"
161162
};
162-
MPUserDefaults *userDefaults = [MPUserDefaults standardUserDefaultsWithStateMachine:[MParticle sharedInstance].stateMachine backendController:[MParticle sharedInstance].backendController identity:[MParticle sharedInstance].identity];
163+
MPUserDefaults *userDefaults = MPUserDefaultsConnector.userDefaults;
163164
[userDefaults setMPObject:userAttributes forKey:kMPUserAttributeKey userId:currentUser.userId];
164165
MParticle* mparticle = MParticle.sharedInstance;
165166
MPLog* logger = [[MPLog alloc] initWithLogLevel:[MPLog fromRawValue:mparticle.logLevel]];

UnitTests/ObjCTests/MPKitContainerTests.m

Lines changed: 11 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@
3131
#import "MParticleSwift.h"
3232
#import "MPCCPAConsent.h"
3333
#import "MPGDPRConsent.h"
34+
#import "MPUserDefaultsConnector.h"
3435

3536
@interface MParticle ()
3637

@@ -136,7 +137,7 @@ - (void)tearDown {
136137
}
137138

138139
- (void)setUserAttributesAndIdentities {
139-
MPUserDefaults *userDefaults = [MPUserDefaults standardUserDefaultsWithStateMachine:[MParticle sharedInstance].stateMachine backendController:[MParticle sharedInstance].backendController identity:[MParticle sharedInstance].identity];
140+
MPUserDefaults *userDefaults = MPUserDefaultsConnector.userDefaults;
140141
NSDictionary *userAttributes = @{@"Dinosaur":@"T-Rex",
141142
@"Arm length":@"Short",
142143
@"Height":@20,
@@ -193,11 +194,11 @@ - (void)testUpdateKitConfiguration {
193194
MPResponseConfig *responseConfig = [[MPResponseConfig alloc] initWithConfiguration:configuration stateMachine:[MParticle sharedInstance].stateMachine backendController:[MParticle sharedInstance].backendController];
194195

195196
NSTimeInterval requestTimestamp = [[NSDate date] timeIntervalSince1970];
196-
[[MPUserDefaults standardUserDefaultsWithStateMachine:[MParticle sharedInstance].stateMachine backendController:[MParticle sharedInstance].backendController identity:[MParticle sharedInstance].identity] setConfiguration:configuration eTag:eTag requestTimestamp:requestTimestamp currentAge:0 maxAge:nil];
197+
[MPUserDefaultsConnector.userDefaults setConfiguration:configuration eTag:eTag requestTimestamp:requestTimestamp currentAge:0 maxAge:nil];
197198

198199
XCTAssertEqualObjects(responseConfig.configuration, [MPUserDefaults restore].configuration);
199200

200-
NSArray *directoryContents = [[MPUserDefaults standardUserDefaultsWithStateMachine:[MParticle sharedInstance].stateMachine backendController:[MParticle sharedInstance].backendController identity:[MParticle sharedInstance].identity] getKitConfigurations];
201+
NSArray *directoryContents = [MPUserDefaultsConnector.userDefaults getKitConfigurations];
201202
for (NSDictionary *kitConfigurationDictionary in directoryContents) {
202203
MPKitConfiguration *kitConfiguration = [[MPKitConfiguration alloc] initWithDictionary:kitConfigurationDictionary];
203204
if ([[kitConfiguration integrationId] isEqual:@(42)]){
@@ -214,7 +215,7 @@ - (void)testUpdateKitConfiguration {
214215
- (void)testRemoveKitConfiguration {
215216
static NSString *const kTestAppId1 = @"cool app key";
216217
static NSString *const kTestAppId2 = @"cool app key 2";
217-
[[MPUserDefaults standardUserDefaultsWithStateMachine:[MParticle sharedInstance].stateMachine backendController:[MParticle sharedInstance].backendController identity:[MParticle sharedInstance].identity] resetDefaults];
218+
[MPUserDefaultsConnector.userDefaults resetDefaults];
218219
[self setUserAttributesAndIdentities];
219220

220221
NSDictionary *configuration1 = @{
@@ -247,7 +248,7 @@ - (void)testRemoveKitConfiguration {
247248
MPResponseConfig *responseConfig = [[MPResponseConfig alloc] initWithConfiguration:configuration stateMachine:[MParticle sharedInstance].stateMachine backendController:[MParticle sharedInstance].backendController];
248249

249250
NSTimeInterval requestTimestamp = [[NSDate date] timeIntervalSince1970];
250-
[[MPUserDefaults standardUserDefaultsWithStateMachine:[MParticle sharedInstance].stateMachine backendController:[MParticle sharedInstance].backendController identity:[MParticle sharedInstance].identity] setConfiguration:configuration eTag:eTag requestTimestamp:requestTimestamp currentAge:0 maxAge:nil];
251+
[MPUserDefaultsConnector.userDefaults setConfiguration:configuration eTag:eTag requestTimestamp:requestTimestamp currentAge:0 maxAge:nil];
251252

252253
XCTAssertEqualObjects(responseConfig.configuration, [MPUserDefaults restore].configuration);
253254

@@ -258,7 +259,7 @@ - (void)testRemoveKitConfiguration {
258259
}
259260
XCTAssertEqualObjects(kTestAppId1, appId);
260261

261-
NSArray *directoryContents = [[MPUserDefaults standardUserDefaultsWithStateMachine:[MParticle sharedInstance].stateMachine backendController:[MParticle sharedInstance].backendController identity:[MParticle sharedInstance].identity] getKitConfigurations];
262+
NSArray *directoryContents = [MPUserDefaultsConnector.userDefaults getKitConfigurations];
262263
for (NSDictionary *kitConfigurationDictionary in directoryContents) {
263264
MPKitConfiguration *kitConfiguration = [[MPKitConfiguration alloc] initWithDictionary:kitConfigurationDictionary];
264265
if ([[kitConfiguration integrationId] isEqual:@(42)]){
@@ -290,7 +291,7 @@ - (void)testRemoveKitConfiguration {
290291
responseConfig = [[MPResponseConfig alloc] initWithConfiguration:configuration stateMachine:[MParticle sharedInstance].stateMachine backendController:[MParticle sharedInstance].backendController];
291292

292293
requestTimestamp = [[NSDate date] timeIntervalSince1970];
293-
[[MPUserDefaults standardUserDefaultsWithStateMachine:[MParticle sharedInstance].stateMachine backendController:[MParticle sharedInstance].backendController identity:[MParticle sharedInstance].identity] setConfiguration:configuration eTag:eTag requestTimestamp:requestTimestamp currentAge:0 maxAge:nil];
294+
[MPUserDefaultsConnector.userDefaults setConfiguration:configuration eTag:eTag requestTimestamp:requestTimestamp currentAge:0 maxAge:nil];
294295

295296
XCTAssertEqualObjects(responseConfig.configuration, [MPUserDefaults restore].configuration);
296297

@@ -300,7 +301,7 @@ - (void)testRemoveKitConfiguration {
300301
}
301302
XCTAssertEqualObjects(kTestAppId1, appId2);
302303

303-
directoryContents = [[MPUserDefaults standardUserDefaultsWithStateMachine:[MParticle sharedInstance].stateMachine backendController:[MParticle sharedInstance].backendController identity:[MParticle sharedInstance].identity] getKitConfigurations];
304+
directoryContents = [MPUserDefaultsConnector.userDefaults getKitConfigurations];
304305
for (NSDictionary *kitConfigurationDictionary in directoryContents) {
305306
MPKitConfiguration *kitConfiguration = [[MPKitConfiguration alloc] initWithDictionary:kitConfigurationDictionary];
306307
if ([[kitConfiguration integrationId] isEqual:@(42)]){
@@ -321,7 +322,7 @@ - (void)testRemoveKitConfiguration {
321322
}
322323

323324
- (void)testIsDisabledByBracketConfiguration {
324-
MPUserDefaults *userDefaults = [MPUserDefaults standardUserDefaultsWithStateMachine:[MParticle sharedInstance].stateMachine backendController:[MParticle sharedInstance].backendController identity:[MParticle sharedInstance].identity];
325+
MPUserDefaults *userDefaults = MPUserDefaultsConnector.userDefaults;
325326
userDefaults[@"mpid"] = @2;
326327

327328
NSDictionary *bracketConfig = @{@"hi":@(0),@"lo":@(0)};
@@ -2867,7 +2868,7 @@ - (void)testForwardEventToSideloadedKit {
28672868
}
28682869

28692870
- (void)testAppInfoContainsSideloadKitsFlag {
2870-
[[MPUserDefaults standardUserDefaultsWithStateMachine:[MParticle sharedInstance].stateMachine backendController:[MParticle sharedInstance].backendController identity:[MParticle sharedInstance].identity] setSideloadedKitsCount:3];
2871+
[MPUserDefaultsConnector.userDefaults setSideloadedKitsCount:3];
28712872

28722873
NSDictionary *dict = [[[MPApplication_PRIVATE alloc] init] dictionaryRepresentation];
28732874

UnitTests/ObjCTests/MPNetworkCommunicationTests.m

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313
#import "MPStateMachine.h"
1414
#import "MParticleSwift.h"
1515
#import "MPIConstants.h"
16+
#import "MPUserDefaultsConnector.h"
1617

1718
@import mParticle_Apple_SDK_Swift;
1819

@@ -596,7 +597,7 @@ - (void)testUploadInvalidDeletion {
596597
}
597598

598599
- (void)testRequestConfigWithDefaultMaxAge {
599-
MPUserDefaults *userDefaults = [MPUserDefaults standardUserDefaultsWithStateMachine:[MParticle sharedInstance].stateMachine backendController:[MParticle sharedInstance].backendController identity:[MParticle sharedInstance].identity];
600+
MPUserDefaults *userDefaults = MPUserDefaultsConnector.userDefaults;
600601
NSNumber *configProvisioned = userDefaults[kMPConfigProvisionedTimestampKey];
601602
NSNumber *maxAge = userDefaults[kMPConfigMaxAgeHeaderKey];
602603

@@ -656,7 +657,7 @@ - (void)testRequestConfigWithDefaultMaxAge {
656657
}
657658

658659
- (void)testRequestConfigWithManualMaxAge {
659-
MPUserDefaults *userDefaults = [MPUserDefaults standardUserDefaultsWithStateMachine:[MParticle sharedInstance].stateMachine backendController:[MParticle sharedInstance].backendController identity:[MParticle sharedInstance].identity];
660+
MPUserDefaults *userDefaults = MPUserDefaultsConnector.userDefaults;
660661
userDefaults[kMPConfigProvisionedTimestampKey] = @5555;
661662

662663
MPNetworkCommunication_PRIVATE *networkCommunication = [[MPNetworkCommunication_PRIVATE alloc] init];
@@ -760,7 +761,7 @@ - (void)testRequestConfigWithManualMaxAgeAndInitialAge {
760761
XCTAssert(success);
761762
}];
762763

763-
MPUserDefaults *userDefaults = [MPUserDefaults standardUserDefaultsWithStateMachine:[MParticle sharedInstance].stateMachine backendController:[MParticle sharedInstance].backendController identity:[MParticle sharedInstance].identity];
764+
MPUserDefaults *userDefaults = MPUserDefaultsConnector.userDefaults;
764765
[userDefaults synchronize];
765766

766767
NSNumber *provisionedInterval = userDefaults[kMPConfigProvisionedTimestampKey];
@@ -771,7 +772,7 @@ - (void)testRequestConfigWithManualMaxAgeAndInitialAge {
771772
}
772773

773774
- (void)testRequestConfigWithManualMaxAgeOverMaxAllowed {
774-
MPUserDefaults *userDefaults = [MPUserDefaults standardUserDefaultsWithStateMachine:[MParticle sharedInstance].stateMachine backendController:[MParticle sharedInstance].backendController identity:[MParticle sharedInstance].identity];
775+
MPUserDefaults *userDefaults = MPUserDefaultsConnector.userDefaults;
775776
userDefaults[kMPConfigProvisionedTimestampKey] = @5555;
776777

777778
MPNetworkCommunication_PRIVATE *networkCommunication = [[MPNetworkCommunication_PRIVATE alloc] init];
@@ -828,7 +829,7 @@ - (void)testRequestConfigWithManualMaxAgeOverMaxAllowed {
828829
}
829830

830831
- (void)testRequestConfigWithComplexCacheControlHeader {
831-
MPUserDefaults *userDefaults = [MPUserDefaults standardUserDefaultsWithStateMachine:[MParticle sharedInstance].stateMachine backendController:[MParticle sharedInstance].backendController identity:[MParticle sharedInstance].identity];
832+
MPUserDefaults *userDefaults = MPUserDefaultsConnector.userDefaults;
832833
userDefaults[kMPConfigProvisionedTimestampKey] = @5555;
833834

834835
MPNetworkCommunication_PRIVATE *networkCommunication = [[MPNetworkCommunication_PRIVATE alloc] init];

0 commit comments

Comments
 (0)