Как я могу ввести консоль модульного тестирования в scala с помощью scalaTest. Тестируемый код:
object ConsoleAction {
def readInput(in: InputStream): List[String] = {
val bs = new BufferedSource(in)(Codec.default)
val l = bs.getLines()
l.takeWhile(_!="").toList
}
def main(args: Array[String]) {
val l = ConsoleAction.readInput(System.in)
println("--> "+l)
}
}
Я хотел бы протестировать метод readInput. Однострочный ввод можно протестировать следующим образом:
"Result list" should "has 1 element" in {
val input = "Hello\\n"
val is = new ByteArrayInputStream(input.getBytes(StandardCharsets.UTF_8))
assert(ConsoleAction.readInput(is).size===1)
}
... но как сделать многострочный ввод?
input line 1
input line 2
спасибо
input? напримерval input = "foo\nbar\n"- person om-nom-nom   schedule 04.08.2014