Skip to content

Commit e209a24

Browse files
committed
making has_liquid unit test more clear
1 parent 59599ee commit e209a24

File tree

3 files changed

+31
-3
lines changed

3 files changed

+31
-3
lines changed

iOS_SDK/OneSignalSDK/UnitTests/InAppMessagingTests.m

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -215,8 +215,10 @@ -(void)testCorrectlyParsedTriggers {
215215
}
216216

217217
- (void)testCorrectlyParsedHasLiquid {
218-
XCTAssertFalse(testMessage.hasLiquid);
219-
XCTAssertTrue(testMessageRedisplay.hasLiquid);
218+
OSInAppMessage *hasLiquidMessage = [OSInAppMessageTestHelper testMessageWithLiquid];
219+
XCTAssertTrue(hasLiquidMessage.hasLiquid);
220+
OSInAppMessage *noLiquidMessage = [OSInAppMessageTestHelper testMessage];
221+
XCTAssertFalse(noLiquidMessage.hasLiquid);
220222
}
221223

222224
- (void)testCorrectlyParsedDisplayStats {

iOS_SDK/OneSignalSDK/UnitTests/OSInAppMessagingHelpers.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,7 @@ NS_ASSUME_NONNULL_BEGIN
5656
+ (OSInAppMessage *)testMessageWithTriggersJson:(NSArray<NSDictionary *> *)triggers;
5757
+ (OSInAppMessage *)testMessageWithTriggersJson:(NSArray *)triggers redisplayLimit:(NSInteger)limit delay:(NSNumber *)delay;
5858
+ (OSInAppMessage *)testMessage;
59+
+ (OSInAppMessage *)testMessageWithLiquid;
5960
+ (OSInAppMessage *)testMessageWithRedisplayLimit:(NSInteger)limit delay:(NSNumber *)delay;
6061
+ (OSInAppMessage *)testMessagePreview;
6162
+ (OSInAppMessage *)testMessageWithTriggers:(NSArray <NSArray<OSTrigger *> *> *)triggers;

iOS_SDK/OneSignalSDK/UnitTests/OSInAppMessagingHelpers.m

Lines changed: 26 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -92,6 +92,24 @@ + (NSDictionary * _Nonnull)testMessageJson {
9292
};
9393
}
9494

95+
+ (NSDictionary * _Nonnull)testMessageJsonLiquid {
96+
return @{
97+
@"type" : @"centered_modal", // Prevents issues with the "os_viewed_message" count trigger that lets us prevent a message from being shown > than X times
98+
@"id" : [NSString stringWithFormat:@"%@_%i", OS_TEST_MESSAGE_ID, ++messageIdIncrementer],
99+
@"variants" : @{
100+
@"ios" : @{
101+
@"default" : OS_TEST_MESSAGE_VARIANT_ID,
102+
@"en" : OS_TEST_ENGLISH_VARIANT_ID
103+
},
104+
@"all" : @{
105+
@"default" : @"should_never_be_used_by_any_test"
106+
}
107+
},
108+
@"triggers" : @[],
109+
@"has_liquid" : @true,
110+
};
111+
}
112+
95113
+ (NSDictionary * _Nonnull)testMessageJsonRedisplay {
96114
return @{
97115
@"type" : @"centered_modal", // Prevents issues with the "os_viewed_message" count trigger that lets us prevent a message from being shown > than X times
@@ -146,7 +164,6 @@ + (OSInAppMessage *)testMessageWithTriggersJson:(NSArray *)triggers {
146164
+ (OSInAppMessage *)testMessageWithTriggersJson:(NSArray *)triggers redisplayLimit:(NSInteger)limit delay:(NSNumber *)delay {
147165
let messageJson = (NSMutableDictionary *)[self.testMessageJson mutableCopy];
148166

149-
messageJson[@"has_liquid"] = @"1";
150167
messageJson[@"triggers"] = triggers;
151168
messageJson[@"redisplay"] =
152169
@{
@@ -167,6 +184,14 @@ + (OSInAppMessage *)testMessage {
167184
return [OSInAppMessage instanceWithData:data];
168185
}
169186

187+
+ (OSInAppMessage *)testMessageWithLiquid {
188+
let messageJson = self.testMessageJsonLiquid;
189+
190+
let data = [NSJSONSerialization dataWithJSONObject:messageJson options:0 error:nil];
191+
192+
return [OSInAppMessage instanceWithData:data];
193+
}
194+
170195
+ (OSInAppMessage *)testMessageWithPastEndTime:(BOOL)pastEndTime {
171196
let messageJson = self.testMessageJson;
172197

0 commit comments

Comments
 (0)