メソッドを呼び出すアクション メソッドの単体テストを作成しようとしてController.RedirectToReferrer()
いますが、「参照元がありません」というメッセージが表示されます。
このメソッドを分離してモックするにはどうすればよいですか?
メソッドを呼び出すアクション メソッドの単体テストを作成しようとしてController.RedirectToReferrer()
いますが、「参照元がありません」というメッセージが表示されます。
このメソッドを分離してモックするにはどうすればよいですか?
テストダブルを作成することを考えましたか?
私が取り組んでいるトランクのバージョンr5299では、RedirectToReferrerをモックアウトするためにこれを行う必要がありました。最近のコミットで変更されたと思いますが、よくわかりません。
[TestFixture]
public class LoginControllerTests : GenericBaseControllerTest<LoginController>
{
private string referrer = "http://www.example.org";
protected override IMockRequest BuildRequest()
{
var request = new StubRequest(Cookies);
request.UrlReferrer = referrer;
return request;
}
protected override IMockResponse BuildResponse(UrlInfo info)
{
var response = new StubResponse(info,
new DefaultUrlBuilder(),
new StubServerUtility(),
new RouteMatch(),
referrer);
return response;
}
などなど。
奇妙なことに、それを機能させるためにあなたが痴漢する必要があるのは反応RedirectToReferrer
です。私はそれを理解するためにモノレールの情報源を這い回らなければなりませんでした。