2015-06-15 37 views
2

我在應用程序中使用法拉第寶石,並且我想測試當法拉第連接超時失敗時我的應用程序如何工作。我如何爲這種情況存根請求?如何模擬rspec中的請求超時與法拉第

+0

'允許(康涅狄格州)。爲了接收(:獲得).and_raise(法拉第:: TimeoutError)'看http://stackoverflow.com/questions/9008442/how-do-i-test-rspec- a-http-request-that-too-long – max

+0

謝謝,我已經看到了,但是我的應用程序發現了這個錯誤,並且與它一起工作。它炮轟異常,我想測試它是如何工作的。 – pustserg

+0

也許設置一個防火牆規則,將丟棄數據包(默默丟棄它們)到目標主機。我認爲這會導致法拉第連接到該主機超時。 – egwspiti

回答

0

我找到了一個工作方法。可能它不是美麗的,而是工程。

faraday_adapter.post('fail') do 
    raise Faraday::TimeoutError 
end