Skip to content

Commit cd7d1d2

Browse files
committed
use nonstrict json in production, strict when testing
1 parent 03d616a commit cd7d1d2

File tree

2 files changed

+10
-2
lines changed

2 files changed

+10
-2
lines changed

src/commonMain/kotlin/com.adamratzman.spotify/models/serialization/SerializationUtils.kt

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,15 +11,14 @@ import com.adamratzman.spotify.models.PagingObject
1111
import com.adamratzman.spotify.models.instantiatePagingObjects
1212
import kotlinx.serialization.KSerializer
1313
import kotlinx.serialization.json.Json
14-
import kotlinx.serialization.json.JsonConfiguration
1514
import kotlinx.serialization.json.JsonElement
1615
import kotlinx.serialization.json.JsonObject
1716
import kotlinx.serialization.map
1817
import kotlinx.serialization.serializer
1918

2019
@Suppress("EXPERIMENTAL_API_USAGE")
2120
internal val stableJson =
22-
Json(JsonConfiguration.Stable)
21+
Json.nonstrict
2322
// Json(JsonConfiguration.Stable.copy(strictMode = false, useArrayPolymorphism = true), spotifyUriSerializersModule)
2423

2524
internal inline fun <reified T : Any> String.toObjectNullable(serializer: KSerializer<T>, api: SpotifyApi<*, *>?, json: Json): T? = try {

src/commonTest/kotlin/com.adamratzman/spotify/Common.kt

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,9 @@
11
/* Spotify Web API - Kotlin Wrapper; MIT License, 2019; Original author: Adam Ratzman */
22
package com.adamratzman.spotify
33

4+
import kotlinx.serialization.json.Json
5+
import kotlinx.serialization.json.JsonConfiguration
6+
47
val api = when {
58
getEnvironmentVariable("SPOTIFY_REDIRECT_URI")?.isNotBlank() != true -> {
69
println("CLIENT ID: ${getEnvironmentVariable("SPOTIFY_CLIENT_ID")}")
@@ -10,6 +13,9 @@ val api = when {
1013
clientId = getEnvironmentVariable("SPOTIFY_CLIENT_ID")
1114
clientSecret = getEnvironmentVariable("SPOTIFY_CLIENT_SECRET")
1215
}
16+
options {
17+
json = Json(JsonConfiguration.Stable)
18+
}
1319
}.build()
1420
}
1521
else -> {
@@ -26,6 +32,9 @@ val api = when {
2632
authorization {
2733
tokenString = getEnvironmentVariable("SPOTIFY_TOKEN_STRING")
2834
}
35+
options {
36+
json = Json(JsonConfiguration.Stable)
37+
}
2938
}.build()
3039
}
3140
}

0 commit comments

Comments
 (0)