diff --git a/ultrasonic/src/main/kotlin/org/moire/ultrasonic/data/APIAlbumConverter.kt b/ultrasonic/src/main/kotlin/org/moire/ultrasonic/data/APIAlbumConverter.kt index c9fb3bef..2dceb692 100644 --- a/ultrasonic/src/main/kotlin/org/moire/ultrasonic/data/APIAlbumConverter.kt +++ b/ultrasonic/src/main/kotlin/org/moire/ultrasonic/data/APIAlbumConverter.kt @@ -23,3 +23,5 @@ fun Album.toDomainEntity(): MusicDirectory.Entry = MusicDirectory.Entry().apply fun Album.toMusicDirectoryDomainEntity(): MusicDirectory = MusicDirectory().apply { addAll(this@toMusicDirectoryDomainEntity.songList.map { it.toDomainEntity() }) } + +fun List.toDomainEntityList(): List = this.map { it.toDomainEntity() } diff --git a/ultrasonic/src/test/kotlin/org/moire/ultrasonic/data/APIAlbumConverterTest.kt b/ultrasonic/src/test/kotlin/org/moire/ultrasonic/data/APIAlbumConverterTest.kt index 4ab75e2a..6324b480 100644 --- a/ultrasonic/src/test/kotlin/org/moire/ultrasonic/data/APIAlbumConverterTest.kt +++ b/ultrasonic/src/test/kotlin/org/moire/ultrasonic/data/APIAlbumConverterTest.kt @@ -51,4 +51,18 @@ class APIAlbumConverterTest { children[0] `should equal` entity.songList[0].toDomainEntity() } } + + @Test + fun `Should convert list of Album entities to domain list entities`() { + val entityList = listOf(Album(id = 455), Album(id = 1), Album(id = 1000)) + + val convertedList = entityList.toDomainEntityList() + + with(convertedList) { + size `should equal to` entityList.size + forEachIndexed { index, entry -> + entry `should equal` entityList[index].toDomainEntity() + } + } + } }