1
次のコードをテストするにはどうすればよいですか?エリクシルで複数行出力をテストするにはどうすればよいですか?
["one", "two", "three"]) |> Enum.each(&IO.puts(&1))
one
two
three
:ok
私のテストでは、現在このように見えますが、IO.puts
戻り:ok
むしろその文字列のために失敗して、そしておそらく完全な文字列に改行文字が含まれていません。
assert ["one", "two", "three"]) |> Enum.each(&IO.puts(&1)) == """
one
two
three
"""
多分IO.puts
は、このユースケースの間違った機能です。もしそうなら、私はどのような方法をとることができますか?
ありがとうございます。
偉大な答えをありがとう。 doctestが先行する空白を処理できる方法はありますか? "my_string" – FelixFortis
混乱して申し訳ありません、私はそれを見て、doctestは(それ以上の?)キャプチャioをサポートしていません。私はdoctestについての部分が間違っていたので、私の答えを編集しました。 –