我想对使用的方法进行单元测试Request.QueryString
,使用如下:
public void GetUrl(string url)
{
var queryString = this.context.Request.QueryString.ToString();
var urlWithQueryString = url;
if (!string.IsNullOrEmpty(queryString))
{
urlWithQueryString = url + (url.Contains("?") ? "&" : "?") + queryString;
}
return urlWithQueryString;
}
我尝试QueryString
使用 Moq 来存根,但没有成功:
Mock<HttpRequestBase> Request = new Mock<HttpRequestBase>();
Request.SetupGet(r => r.QueryString).Returns(new NameValueCollection());
因为生产代码返回名称/值对,或空字符串,而单元测试返回类的全名NameValueCollection
。
任何想法?