HttpContext.Current.Request.QueryString в модульном тесте - PullRequest
0 голосов
/ 19 февраля 2020
    public static string Test()
    {
        var page = HttpContext.Current.Request.QueryString["page"];
        var pageSize = HttpContext.Current.Request.QueryString["pageSize"];
        var sortBy = HttpContext.Current.Request.QueryString["sortBy"];
        var sortOrder = HttpContext.Current.Request.QueryString["sortOrder"];
        var searchBy = HttpContext.Current.Request.QueryString["searchBy"];
        var searchKey = HttpContext.Current.Request.QueryString["searchKey"];
        if (!StandardRegister.AppServices.Security.Authenticator.VerifyAuthentication())
        {
            return null;
        }
  }

модульный тест

     [Test]
    public async Task GetMaintainKitsTest()
    {
        HttpContext.Current.Request.QueryString.Add("page", "1");


         var maintainKits = Test();


    }

ошибка: ссылка на объект не установлена ​​для экземпляра объекта.

, поэтому для добавления HttpContext.Current.Request.QueryString в модульный тест

1 Ответ

0 голосов
/ 19 февраля 2020

Вам необходимо установить значение HttpContext.Current, в противном случае оно будет null. Что-то вроде:

HttpContext.Current = new HttpContext(
    new HttpRequest(filename: "", url: "http://some.url", queryString: ""),
    new HttpResponse(new StringWriter())
);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...