File tree Expand file tree Collapse file tree 3 files changed +36
-0
lines changed
iOS_SDK/OneSignalSDK/UnitTests Expand file tree Collapse file tree 3 files changed +36
-0
lines changed Original file line number Diff line number Diff line change @@ -262,6 +262,27 @@ - (void)testIAMIsDisplayedOncePerSession {
262262 XCTAssertEqual (OSMessagingControllerOverrider.messageDisplayQueue .count , 0 );
263263}
264264
265+ - (void )testIAMsDontDisplayPastEndTime {
266+ [OneSignal pauseInAppMessages: false ];
267+
268+ let message = [OSInAppMessageTestHelper testMessageWithPastEndTime: YES ];
269+
270+ [self initOneSignalWithInAppMessage: message];
271+
272+ XCTAssertEqual (OSMessagingControllerOverrider.isInAppMessageShowing , false );
273+ }
274+
275+ - (void )testIAMsDoDisplayWithFutureEndTime {
276+ [OneSignal pauseInAppMessages: false ];
277+
278+ let message = [OSInAppMessageTestHelper testMessageWithPastEndTime: NO ];
279+
280+ [self initOneSignalWithInAppMessage: message];
281+
282+ XCTAssertEqual (OSMessagingControllerOverrider.isInAppMessageShowing , true );
283+ }
284+
285+
265286// if we have two messages that are both valid to displayed add them to the queue (triggers are all true),
266287- (void )testIAMsDontOverlap {
267288 [OSMessagingController.sharedInstance setTriggerWithName: @" prop1" withValue: @2 ];
Original file line number Diff line number Diff line change @@ -59,6 +59,7 @@ NS_ASSUME_NONNULL_BEGIN
5959+ (OSInAppMessage *)testMessageWithRedisplayLimit : (NSInteger )limit delay : (NSNumber *)delay ;
6060+ (OSInAppMessage *)testMessageWithTriggers : (NSArray <NSArray<OSTrigger *> *> *)triggers ;
6161+ (OSInAppMessage *)testMessageWithTriggers : (NSArray <NSArray<OSTrigger *> *> *)triggers withRedisplayLimit : (NSInteger )limit delay : (NSNumber *)delay ;
62+ + (OSInAppMessage *)testMessageWithPastEndTime : (BOOL )pastEndTime ;
6263+ (NSDictionary *)testRegistrationJsonWithMessages : (NSArray <NSDictionary *> *)messages ;
6364+ (NSDictionary *)testMessageJsonWithTriggerPropertyName : (NSString *)property withId : (NSString *)triggerId withOperator : (OSTriggerOperatorType)type withValue : (id )value ;
6465+ (NSDictionary *)testInAppMessageGetContainsWithHTML : (NSString *)html ;
Original file line number Diff line number Diff line change @@ -146,7 +146,21 @@ + (OSInAppMessage *)testMessage {
146146 let messageJson = self.testMessageJson ;
147147
148148 let data = [NSJSONSerialization dataWithJSONObject: messageJson options: 0 error: nil ];
149+
150+ return [OSInAppMessage instanceWithData: data];
151+ }
152+
153+ + (OSInAppMessage *)testMessageWithPastEndTime : (BOOL )pastEndTime {
154+ let messageJson = self.testMessageJson ;
149155
156+ NSMutableDictionary *messageJsonWithEndTime = [[NSMutableDictionary alloc ] initWithDictionary: messageJson];
157+ if (pastEndTime) {
158+ messageJsonWithEndTime[@" end_time" ] = @" 1960-01-01T00:00:00.000Z" ;
159+ } else {
160+ messageJsonWithEndTime[@" end_time" ] = @" 2200-01-01T00:00:00.000Z" ;
161+ }
162+ let data = [NSJSONSerialization dataWithJSONObject: messageJsonWithEndTime options: 0 error: nil ];
163+
150164 return [OSInAppMessage instanceWithData: data];
151165}
152166
You can’t perform that action at this time.
0 commit comments