Mongodb (1.1.1) 用の Scala ドライバーを使用して、一種の統合テストを作成しています。
future
単純な挿入クエリがあり、またはobserver
次の方法で管理できます。
// with observer
driver.myCollection.insertOne(doc).subscribe(new Observer[Completed] {
override def onNext(result: Completed) = /* do something */
override def onComplete() = /* do something */
override def onError(e: Throwable) = /* do something */
})
// with future
val f = driver.myCollection.insertOne(doc).toFuture()
f onComplete {
case Success(successMsg) => /* do something */
case Failure(failureMsg) => /* do something */
}
}
および/またはでテストonError
するにはどうすればよいですか? この状態を引き起こすにはどうすればよいですか?Observer
Failure
Future
現時点では、私は使用してMongodb Embedded (flapdoodle)
います。
テストの開始時に Mongodb をシャットダウンすると、そのエラーに関連していないように見えるタイムアウトが発生します。
アップデート
WriteConcern
コレクションに追加しました:
database.getCollection(myCollection).withWriteConcern(WriteConcern.ACKNOWLEDGED)
しかし、それは何も変わりません。
タイムアウト エラー (データベースまたはネットワークが何らかの理由でダウンした場合に発生) を含む、先物/オブザーバーによって返されるエラーはありますか?