Controller.cs
public async Task<IActionResult> BookingRequest(int cid)
{
string[] requestParams = Request.QueryString.ToString().Split("&");
BookingVM objSessionBookingVM = new BookingVM();
var value = HttpContext.Session.GetString("SessionBookingVM");
if(value!=null)
{
//some logic
}
}
XunitTest.cs
[Fact]
public async Task<IActionResult> BookingRequestTest_ReturnsViewWithSlots()
{
// Act
_controller.ControllerContext = new ControllerContext();
_controller.ControllerContext.HttpContext = new DefaultHttpContext();
_controller.ControllerContext.HttpContext.Request.Headers["device-id"] = "20317";
_controller.ControllerContext.HttpContext.Request.QueryString = new QueryString("?cid=11&culture=no");
var result = await _controller.BookingRequest(mockId);
// Assert
var viewResult = Assert.IsType<ViewResult>(result);
Assert.IsType<BookingVM>(viewResult.ViewData.Model);
return result;
}
Когда я запускаю тест, я получаюисключение в строке ниже
var value = HttpContext.Session.GetString("SessionBookingVM");
Ошибка говорит о том, что сеанс не был установлен.Я много пробовал, но ничего не работает.Кто-нибудь может мне помочь это исправить?