더북(TheBook)
data class StringTag(val text: String)

infix fun String.tag(value: String): Pair<String, StringTag> = TODO()

fun renderTemplate(template: String, data: Map<String, StringTag> ) = TODO()

다음 테스트를 통과할 수 있다.

val template = """
    Happy Birthday {name} {surname}!
    from {sender}.
""".trimIndent()

val data = mapOf("name" tag "Uberto",
                 "surname" tag "Barbini",
                 "sender" tag "PragProg")

val actual = renderTemplate(template, data)

val expected = """
    Happy Birthday Uberto Barbini!
    from PragProg.
""".trimIndent()

expectThat(actual).isEqualTo(expected)
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.