Skip to content

Commit da8810f

Browse files
committed
removing innerObjectNames for SpotifyCategory, SimpleAlbum, and SimplePlaylist
Fixes #229 Signed-off-by: Adam Ratzman <[email protected]>
1 parent 897c228 commit da8810f

File tree

2 files changed

+20
-10
lines changed

2 files changed

+20
-10
lines changed

src/commonMain/kotlin/com.adamratzman.spotify/models/PagingObjects.kt

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -116,9 +116,9 @@ public abstract class AbstractPagingObject<T : Any, Z : AbstractPagingObject<T,
116116
return (if (type == FORWARDS) next else previous)?.let { endpoint!!.get(it) }?.let { json ->
117117
when (itemClazz) {
118118
SimpleTrack::class -> json.toPagingObject(SimpleTrack.serializer(), null, endpointFinal, endpointFinal.api.json, true)
119-
SpotifyCategory::class -> json.toPagingObject(SpotifyCategory.serializer(), "categories", endpointFinal, endpointFinal.api.json, true)
120-
SimpleAlbum::class -> json.toPagingObject(SimpleAlbum.serializer(), "albums", endpointFinal, endpointFinal.api.json, true)
121-
SimplePlaylist::class -> json.toPagingObject(SimplePlaylist.serializer(), "playlists", endpointFinal, endpointFinal.api.json, true)
119+
SpotifyCategory::class -> json.toPagingObject(SpotifyCategory.serializer(), null, endpointFinal, endpointFinal.api.json, true)
120+
SimpleAlbum::class -> json.toPagingObject(SimpleAlbum.serializer(), null, endpointFinal, endpointFinal.api.json, true)
121+
SimplePlaylist::class -> json.toPagingObject(SimplePlaylist.serializer(), null, endpointFinal, endpointFinal.api.json, true)
122122
SavedTrack::class -> json.toPagingObject(SavedTrack.serializer(), null, endpointFinal, endpointFinal.api.json, true)
123123
SavedAlbum::class -> json.toPagingObject(SavedAlbum.serializer(), null, endpointFinal, endpointFinal.api.json, true)
124124
Artist::class -> json.toPagingObject(Artist.serializer(), null, endpointFinal, endpointFinal.api.json, true)
@@ -154,7 +154,6 @@ public abstract class AbstractPagingObject<T : Any, Z : AbstractPagingObject<T,
154154

155155
@Suppress("UNCHECKED_CAST")
156156
pagingObjects.add(this as Z)
157-
158157
var nxt = next?.let { getNext() }
159158
while (nxt != null) {
160159
pagingObjects.add(nxt)

src/commonTest/kotlin/com.adamratzman/spotify/priv/ClientPlaylistApiTest.kt

Lines changed: 17 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -9,12 +9,13 @@ import com.adamratzman.spotify.models.Playlist
99
import com.adamratzman.spotify.models.SimplePlaylist
1010
import com.adamratzman.spotify.runBlockingTest
1111
import com.adamratzman.spotify.spotifyApi
12-
import kotlin.test.AfterTest
12+
import kotlinx.coroutines.CoroutineScope
13+
import kotlinx.coroutines.async
14+
import kotlinx.coroutines.awaitAll
15+
import kotlinx.coroutines.coroutineScope
1316
import kotlin.test.Test
1417
import kotlin.test.assertEquals
1518
import kotlin.test.assertTrue
16-
import kotlinx.coroutines.async
17-
import kotlinx.coroutines.awaitAll
1819

1920
class ClientPlaylistApiTest {
2021
lateinit var api: SpotifyClientApi
@@ -30,10 +31,20 @@ class ClientPlaylistApiTest {
3031
return ::api.isInitialized
3132
}
3233

33-
private suspend fun tearDown() {
34+
private suspend fun CoroutineScope.tearDown() {
3435
if (::createdPlaylist.isInitialized) {
35-
api.playlists.deleteClientPlaylist(createdPlaylist.id)
36-
assertTrue(api.playlists.getClientPlaylist(createdPlaylist.id) == null)
36+
coroutineScope {
37+
api.playlists.getClientPlaylists().getAllItemsNotNull()
38+
.filter { it.name == "this is a test playlist" }
39+
.map {
40+
async {
41+
if (api.following.isFollowingPlaylist(it.id)) {
42+
api.playlists.deleteClientPlaylist(it.id)
43+
}
44+
}
45+
}
46+
.awaitAll()
47+
}
3748
}
3849
}
3950

0 commit comments

Comments
 (0)