Skip to content

Commit e588c4a

Browse files
committed
[User Model] IAM Unit Tests (partial)
1 parent 576cceb commit e588c4a

File tree

12 files changed

+902
-15
lines changed

12 files changed

+902
-15
lines changed

OneSignalSDK/onesignal/inAppMessages/src/main/java/com/onesignal/inAppMessages/internal/InAppMessageContent.kt

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,9 @@
11
package com.onesignal.inAppMessages.internal
22

3+
import com.onesignal.common.safeBool
4+
import com.onesignal.common.safeDouble
5+
import com.onesignal.common.safeJSONObject
6+
import com.onesignal.common.safeString
37
import com.onesignal.inAppMessages.internal.display.impl.WebViewManager
48
import org.json.JSONObject
59

@@ -15,11 +19,11 @@ internal open class InAppMessageContent constructor(jsonObject: JSONObject) {
1519
var pageHeight: Int = 0
1620

1721
init {
18-
contentHtml = jsonObject.optString(HTML)
19-
displayDuration = jsonObject.optDouble(DISPLAY_DURATION)
20-
var styles: JSONObject? = jsonObject.optJSONObject(STYLES)
21-
useHeightMargin = !(styles?.optBoolean(REMOVE_HEIGHT_MARGIN, false) ?: false)
22-
useWidthMargin = !(styles?.optBoolean(REMOVE_WIDTH_MARGIN, false) ?: false)
22+
contentHtml = jsonObject.safeString(HTML)
23+
displayDuration = jsonObject.safeDouble(DISPLAY_DURATION)
24+
var styles: JSONObject? = jsonObject.safeJSONObject(STYLES)
25+
useHeightMargin = !(styles?.safeBool(REMOVE_HEIGHT_MARGIN) ?: false)
26+
useWidthMargin = !(styles?.safeBool(REMOVE_WIDTH_MARGIN) ?: false)
2327
isFullBleed = !useHeightMargin
2428
}
2529

OneSignalSDK/onesignal/inAppMessages/src/main/java/com/onesignal/inAppMessages/internal/InAppMessagesManager.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -201,7 +201,7 @@ internal class InAppMessagesManager(
201201
_lastTimeFetchedIAMs = now
202202
}
203203

204-
val newMessages = _backend.listInAppMessages(appId, subscriptionId.toString())
204+
val newMessages = _backend.listInAppMessages(appId, subscriptionId)
205205

206206
if (newMessages != null) {
207207
this._messages = newMessages

OneSignalSDK/onesignal/inAppMessages/src/test/java/com/onesignal/inAppMessages/extensions/ContainedRobolectricRunner.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
*
44
* LICENSE: https://github.com/kotest/kotest-extensions-robolectric/blob/master/LICENSE
55
*/
6-
package com.onesignal.extensions
6+
package com.onesignal.inAppMessages.extensions
77

88
import org.junit.runners.model.FrameworkMethod
99
import org.robolectric.RobolectricTestRunner

OneSignalSDK/onesignal/inAppMessages/src/test/java/com/onesignal/inAppMessages/extensions/RobolectricExtension.kt

Lines changed: 14 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
*
55
* LICENSE: https://github.com/kotest/kotest-extensions-robolectric/blob/master/LICENSE
66
*/
7-
package com.onesignal.extensions
7+
package com.onesignal.inAppMessages.extensions
88

99
import android.app.Application
1010
import io.kotest.core.extensions.ConstructorExtension
@@ -30,13 +30,23 @@ internal class RobolectricExtension : ConstructorExtension, TestCaseExtension {
3030
}
3131

3232
private fun KClass<*>.getConfig(): Config {
33-
val annotations = listOf(this.java).plus(this.java.getParentClass())
33+
val configAnnotations = listOf(this.java).plus(this.java.getParentClass())
34+
.mapNotNull { it.kotlin.findAnnotation<Config>() }
35+
.asSequence()
36+
37+
val configAnnotation = configAnnotations.firstOrNull()
38+
39+
if (configAnnotation != null) {
40+
return Config.Builder(configAnnotation).build()
41+
}
42+
43+
val robolectricTestAnnotations = listOf(this.java).plus(this.java.getParentClass())
3444
.mapNotNull { it.kotlin.findAnnotation<RobolectricTest>() }
3545
.asSequence()
3646

37-
val application: KClass<out Application>? = annotations
47+
val application: KClass<out Application>? = robolectricTestAnnotations
3848
.firstOrNull { it.application != KotestDefaultApplication::class }?.application
39-
val sdk: Int? = annotations.firstOrNull { it.sdk != -1 }?.takeUnless { it.sdk == -1 }?.sdk
49+
val sdk: Int? = robolectricTestAnnotations.firstOrNull { it.sdk != -1 }?.takeUnless { it.sdk == -1 }?.sdk
4050

4151
return Config.Builder()
4252
.also { builder ->

OneSignalSDK/onesignal/inAppMessages/src/test/java/com/onesignal/inAppMessages/internal/InAppMessagesManagerTests.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ import com.onesignal.inAppMessages.internal.preferences.IInAppPreferencesControl
88
import com.onesignal.inAppMessages.internal.repositories.IInAppRepository
99
import com.onesignal.inAppMessages.internal.state.InAppStateService
1010
import com.onesignal.inAppMessages.internal.triggers.ITriggerController
11-
import com.onesignal.mocks.MockHelper
11+
import com.onesignal.inAppMessages.mocks.MockHelper
1212
import com.onesignal.session.internal.influence.IInfluenceManager
1313
import com.onesignal.session.internal.outcomes.IOutcomeEventsController
1414
import com.onesignal.session.internal.session.ISessionService

0 commit comments

Comments
 (0)