blob: ce0ebd9df0a993922c7275661d3aa82d77e7554b (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
package org.jetbrains.dokka.dokkatoo.utils
/** Replace all newlines with `\n`, so the String can be used in assertions cross-platform */
fun String.invariantNewlines(): String =
lines().joinToString("\n")
fun Pair<String, String>.sideBySide(
buffer: String = " ",
): String {
val (left, right) = this
val leftLines = left.lines()
val rightLines = right.lines()
val maxLeftWidth = leftLines.maxOf { it.length }
return (0..maxOf(leftLines.size, rightLines.size)).joinToString("\n") { i ->
val leftLine = (leftLines.getOrNull(i) ?: "").padEnd(maxLeftWidth, ' ')
val rightLine = rightLines.getOrNull(i) ?: ""
leftLine + buffer + rightLine
}
}
|