mirror of
https://github.com/anyproto/anytype-kotlin.git
synced 2025-06-08 05:47:05 +09:00
DROID-2657 App | Tech | Parse relation "Description" as single value as well as list value (#1798)
This commit is contained in:
parent
27d2e36d33
commit
03cd9295c3
2 changed files with 48 additions and 5 deletions
|
@ -50,7 +50,7 @@ sealed class ObjectWrapper {
|
|||
|
||||
val layout: ObjectType.Layout?
|
||||
get() = when (val value = map[Relations.LAYOUT]) {
|
||||
is Double -> ObjectType.Layout.values().singleOrNull { layout ->
|
||||
is Double -> ObjectType.Layout.entries.singleOrNull { layout ->
|
||||
layout.code == value.toInt()
|
||||
}
|
||||
else -> null
|
||||
|
@ -68,7 +68,7 @@ sealed class ObjectWrapper {
|
|||
|
||||
val fileMimeType: String? by default
|
||||
|
||||
val description: String? by default
|
||||
val description: String? = getSingleValue(Relations.DESCRIPTION)
|
||||
|
||||
val url: String? by default
|
||||
|
||||
|
@ -156,7 +156,7 @@ sealed class ObjectWrapper {
|
|||
data class Bookmark(override val map: Struct) : ObjectWrapper() {
|
||||
private val default = map.withDefault { null }
|
||||
val name: String? by default
|
||||
val description: String? by default
|
||||
val description: String? = getSingleValue(Relations.DESCRIPTION)
|
||||
val source: String? by default
|
||||
val iconEmoji: String? by default
|
||||
val iconImage: String? = getSingleValue(Relations.ICON_IMAGE)
|
||||
|
@ -174,7 +174,7 @@ sealed class ObjectWrapper {
|
|||
val uniqueKey: String by default
|
||||
val name: String? by default
|
||||
val sourceObject: Id? get() = getSingleValue(Relations.SOURCE_OBJECT)
|
||||
val description: String? by default
|
||||
val description: String? = getSingleValue(Relations.DESCRIPTION)
|
||||
val isArchived: Boolean? by default
|
||||
val iconEmoji: String? by default
|
||||
val isDeleted: Boolean? by default
|
||||
|
@ -335,7 +335,7 @@ sealed class ObjectWrapper {
|
|||
private val default = map.withDefault { null }
|
||||
val id: Id by default
|
||||
val name: String? by default
|
||||
val description: String? by default
|
||||
val description: String? = getSingleValue(Relations.DESCRIPTION)
|
||||
val fileExt: String? by default
|
||||
val fileMimeType: String? by default
|
||||
val sizeInBytes: Double? by default
|
||||
|
|
|
@ -0,0 +1,43 @@
|
|||
package com.anytypeio.anytype.domain.`object`
|
||||
|
||||
import com.anytypeio.anytype.core_models.ObjectWrapper
|
||||
import com.anytypeio.anytype.core_models.Relations
|
||||
import com.anytypeio.anytype.test_utils.MockDataFactory
|
||||
import kotlin.test.Test
|
||||
import kotlin.test.assertEquals
|
||||
|
||||
class ObjectWrapperTest {
|
||||
|
||||
@Test
|
||||
fun `should parse description as single value`() {
|
||||
|
||||
val description = MockDataFactory.randomString()
|
||||
|
||||
assertEquals(
|
||||
expected = description,
|
||||
actual = ObjectWrapper.Basic(
|
||||
map = mapOf(
|
||||
Relations.DESCRIPTION to description
|
||||
)
|
||||
).description
|
||||
)
|
||||
|
||||
assertEquals(
|
||||
expected = description,
|
||||
actual = ObjectWrapper.Basic(
|
||||
map = mapOf(
|
||||
Relations.DESCRIPTION to listOf(description)
|
||||
)
|
||||
).description
|
||||
)
|
||||
|
||||
assertEquals(
|
||||
expected = null,
|
||||
actual = ObjectWrapper.Basic(
|
||||
map = mapOf(
|
||||
Relations.DESCRIPTION to null
|
||||
)
|
||||
).description
|
||||
)
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue