1
0
mirror of https://github.com/InsanusMokrassar/TelegramBotAPI.git synced 2024-06-03 00:15:27 +00:00
tgbotapi/tgbotapi.core/src/commonTest/kotlin/dev/inmo/tgbotapi/types/TextSourcesTests.kt

44 lines
1.5 KiB
Kotlin
Raw Normal View History

2021-04-12 17:23:18 +00:00
package dev.inmo.tgbotapi.types
import dev.inmo.tgbotapi.TestsJsonFormat
import dev.inmo.tgbotapi.extensions.utils.formatting.*
2021-05-29 09:46:13 +00:00
import dev.inmo.tgbotapi.types.MessageEntity.textsources.TextSourceSerializer
2021-12-31 07:48:51 +00:00
import dev.inmo.tgbotapi.types.MessageEntity.textsources.spoiler
2021-06-28 18:01:40 +00:00
import dev.inmo.tgbotapi.utils.extensions.makeString
2021-04-12 17:23:18 +00:00
import kotlinx.serialization.builtins.ListSerializer
import kotlin.test.Test
import kotlin.test.assertEquals
class TextSourcesTests {
@Test
fun testThatTextSourcesSerializedCorrectly() {
val testList = buildEntities(" ") {
bold {
italic("It")
link("is example", "https://is.example")
}
2021-12-31 07:48:51 +00:00
spoiler {
regular("and")
italic("that")
link("is spoiler", "https://is.example")
}
underline("of")
italic(
2021-04-12 17:23:18 +00:00
buildEntities {
strikethrough("comp")
underline("lex")
2021-04-12 17:23:18 +00:00
}
)
pre("text", "kotlin")
}
2021-05-29 09:46:13 +00:00
val serialized = TestsJsonFormat.encodeToString(ListSerializer(TextSourceSerializer), testList)
2021-04-12 17:23:18 +00:00
val deserialized = TestsJsonFormat.decodeFromString(
2021-05-29 09:46:13 +00:00
ListSerializer(TextSourceSerializer),
2021-04-12 17:23:18 +00:00
serialized
)
assertEquals(testList, deserialized)
assertEquals(testList.makeString(), deserialized.makeString())
2021-12-31 07:48:51 +00:00
assertEquals("It is example and that is spoiler of complex text", testList.makeString())
2021-04-12 17:23:18 +00:00
}
}