@@ -40,6 +40,10 @@ + (NSDate *)sessionLaunchTime;
4040
4141@implementation OneSignal (Testing)
4242
43+ + (void )overrideLaunchWebURL : (NSString *)openUrl {
44+ OneSignalOverrider.launchWebURLWasCalled = true ;
45+ }
46+
4347+ (NSDate *)overrideSessionLaunchTime {
4448 if (OneSignalOverrider.shouldOverrideSessionLaunchTime ) {
4549 return [NSDate date ];
@@ -53,12 +57,20 @@ + (NSDate *)overrideSessionLaunchTime {
5357@implementation OneSignalOverrider
5458
5559static BOOL _overrideLaunchTime = false ;
60+ static BOOL _overrideLaunchURL = false ;
61+ static BOOL _launchWebURLWasCalled = false ;
62+
5663
5764+ (void )load {
5865 swizzleClassMethodWithCategoryImplementation ([OneSignal class ], @selector (sessionLaunchTime ), @selector (overrideSessionLaunchTime ));
66+ swizzleClassMethodWithCategoryImplementation ([OneSignal class ], @selector (launchWebURL: ), @selector (overrideLaunchWebURL: ));
5967 _overrideLaunchTime = false ;
6068}
6169
70+ + (void )reset {
71+ _launchWebURLWasCalled = false ;
72+ }
73+
6274+ (BOOL )shouldOverrideSessionLaunchTime {
6375 return _overrideLaunchTime;
6476}
@@ -67,6 +79,22 @@ + (void)setShouldOverrideSessionLaunchTime:(BOOL)shouldOverrideSessionLaunchTime
6779 _overrideLaunchTime = shouldOverrideSessionLaunchTime;
6880}
6981
82+ + (BOOL )shouldOverrideLaunchURL {
83+ return _overrideLaunchURL;
84+ }
85+
86+ + (void )setShouldOverrideLaunchURL : (BOOL )shouldOverrideLaunchURL {
87+ _overrideLaunchURL = shouldOverrideLaunchURL;
88+ }
89+
90+ + (BOOL )launchWebURLWasCalled {
91+ return _launchWebURLWasCalled;
92+ }
93+
94+ + (void )setLaunchWebURLWasCalled : (BOOL )launchWebURLWasCalled {
95+ _launchWebURLWasCalled = launchWebURLWasCalled;
96+ }
97+
7098@end
7199
72100#pragma clang diagnostic pop
0 commit comments