2013-04-01 51 views
1

我們有一個小的方法,我們其他團隊的一些內部使用。我正在爲它編寫測試,但我遇到了一個小問題:如何欺騙rspec測試中的請求主機?

該方法本身進行檢查以確保請求來自特定服務器(request.host)。我嘗試過存根,但我可能是在錯誤的控制器上存根?我試過我正在測試的控制器和.any_instance,然後我嘗試了controller.any_instance,但都沒有工作。

我有一種預感,我可以使用設計來欺騙它,但到目前爲止谷歌還沒有產生太大的用處。

+0

相當牛逼如果只允許來自特定服務器的請求,可能會創建一個服務器白名單。然後只需將localhost/127.0.0.1添加到列表中。 –

+0

這會阻止我們測試後衛。 –

回答

1

我覺得溫和傻不首先嚐試這一點,但:

在一個測試,我想request.host欺騙,設置這個在您的相應的測試方式是:

擊鼓聲請...

request.host = dev.example.com