如何在 xUnit 中设置 cookie
How to set cookie in xUnit
下面是我控制器中的方法,
public IActionResult Cookiewrite(string key, string value)
{
CookieOptions options = new CookieOptions();
options.Expires = DateTime.Now.AddHours(1);
HttpContext.Response.Cookies.Append(key, value, options);
return View("Cookiewrite");
}
我正在尝试使用 xUnit 进行测试,如下所示。
[Fact]
public void CookieWriteTest()
{
string key = "xxxx";
string value = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";
var result = homeController.Cookiewrite(key, value);
}
但问题是我在设置 cookie 时收到空错误(Microsoft.AspNetCore.Mvc.ControllerBase.HttpContext.get 返回空。)。谁能帮我解决这个问题。因为我是 xUnit 的新手。
更改如下:
[Fact]
public void Test1()
{
var controller = new HomeController();
//be sure add this...
controller.ControllerContext.HttpContext = new DefaultHttpContext();
string key = "xxxxxx";
string value = "xxxxxxxx";
var result = controller.Cookiewrite(key, value);
}
下面是我控制器中的方法,
public IActionResult Cookiewrite(string key, string value)
{
CookieOptions options = new CookieOptions();
options.Expires = DateTime.Now.AddHours(1);
HttpContext.Response.Cookies.Append(key, value, options);
return View("Cookiewrite");
}
我正在尝试使用 xUnit 进行测试,如下所示。
[Fact]
public void CookieWriteTest()
{
string key = "xxxx";
string value = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";
var result = homeController.Cookiewrite(key, value);
}
但问题是我在设置 cookie 时收到空错误(Microsoft.AspNetCore.Mvc.ControllerBase.HttpContext.get 返回空。)。谁能帮我解决这个问题。因为我是 xUnit 的新手。
更改如下:
[Fact]
public void Test1()
{
var controller = new HomeController();
//be sure add this...
controller.ControllerContext.HttpContext = new DefaultHttpContext();
string key = "xxxxxx";
string value = "xxxxxxxx";
var result = controller.Cookiewrite(key, value);
}