私のアプリのテストを解決する必要があります。 MongoDB(rescue Mongo::Error::NoServerAvailable => _e
)への接続を評価し、エラーをレンダリングする一連のコードについては、不平を言っています。私はRSpecでMongo接続エラー処理をテストするには
.and_raise(IOError)
を使用する必要があることがわかった
it 'should return an exception' do
get :index
expect(response).to raise_exception
end
:私のようなものをテストしようとしています
def index
render json: Complex.all.to_json
rescue Mongo::Error::NoServerAvailable => _e
render json: { error_description: 'no database available' }, status: 503
end
:あなたは、私はこれをテストするために使うべきだと思います
しかし、私はそれが行に落ちるためにそれをどこで使用するかわかりません。 実際にモンゴを止めれば例外になるかもしれませんが、それは考えていません。
お時間をいただきありがとうございます。
@DaveSchweisguthこれまであまり運がなかった。 私はexpect(response).to raise_exceptionでテストする必要があることを知っています。 罰金はありますが、レスキューエラーに陥るような行動を起こすことはありません。 レスキューMongo :: Error :: NoServerAvailable => _e – moplin