問題タブ [cats-effect]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
scala - 猫用のマッチャー、EitherT とエフェクト
私は猫と関数型プログラミングが初めてで、のような関数型データ型の単体テストに苦労していますEitherT
。サンプルコードがあります:
Spec2 を使用してテストしたいのですが、適切に行う方法がわかりません。このようなことを試しましたが、うまくいきません:
次のような非常に単純なアサーションが必要です。
scala - fs2.Stream[IO, Something] が take(1) で返されない
測定値の fs2.Stream を返す関数があります。
テストフラグを渡さない限り、通常は無限のストリームです。テストフラグを渡した場合は、1 つの値を出力して停止する必要があります。
無限ストリームは正常に機能します。それは私にすべての測定値を無限に与えます。実際、テスト ストリームは最初の測定値のみを提供し、それ以上は提供しません。私が抱えている問題は、この最後の測定後にストリームが返されないことです。永久にブロックします。私は何を間違っていますか?
注: 本質的なコードを抽象化したと思いますが、詳細については、私のプロジェクトをご覧ください: https://github.com/jkransen/fijnstof/blob/ZIO/src/main/scala/nl/kransen/fijnstof /Main.scala
scala - Doobie ストリームをデータベースからファイルに保存する
Doobie select は を返しますfs2.Stream(doobie.ConnectionIO, String)
。ファイルに書き込む必要がある場合、明らかなオプションは、stream.compile.toList.transact(transactor)
このリストを呼び出してからファイルに保存することです。
結果をリストに変換せずにストリーミングで保存する方法はありますか?