Juxtaposition.generate_for(position)
スペックから呼び出しているクラスにクラスメソッドがあります。このメソッドはマップリデュースを設定し、それを呼び出しますmap_reduce(map, reduce).out(merge: "juxtapositions")
位置変数は、itブロックの前のletで定義されます。
上記の関数を呼び出すだけで実行すると(実際には、位置に関連するデータのマップリデュースを呼び出すだけです)、以下のようなテストは失敗します。
Juxtaposition.count.should eq 1
Juxtaposition.first.value.should eq values
しかし、私が電話すると
Juxtaposition.generate_for(positions).first["value"].should eq values
2つのテストの前に、両方とも合格します。上記の2つのテストは、pryを使用してgenerate_for
、そこからメソッドを呼び出す場合にも合格します。
私が知っておくべきモンゴイドのマップリデュースの奇妙な動作はありますか?または、結果を後のクエリに強制する方法はありますか。