Tworzę test jednostki za pomocą nunit i cały ten kod działa poprawnie w czasie wykonywania.Wartość nie może być pusta. Nazwa parametru: request
Mam poniższy chroniony kod HttpResponseMessage
, który jest wywoływany przez kontroler po jego powrocie.
jednak błąd:
"Value cannot be null. Parameter name: request" is displaying.
I kiedy sprawdzić wniosek, to jest rzeczywiście null
.
Pytanie: Jak mogę zakodować test urządzenia, aby zwrócić HttpResponseMessage
?
Błąd jest pokazany w tym wierszu:
protected HttpResponseMessage Created<T>(T result) => Request.CreateResponse(HttpStatusCode.Created, Envelope.Ok(result));
Oto moja Kontroler:
[Route("employees")]
[HttpPost]
public HttpResponseMessage CreateEmployee([FromBody] CreateEmployeeModel model)
{
//**Some code here**//
return Created(new EmployeeModel
{
EmployeeId = employee.Id,
CustomerId = employee.CustomerId,
UserId = employee.UserId,
FirstName = employee.User.FirstName,
LastName = employee.User.LastName,
Email = employee.User.Email,
MobileNumber = employee.MobileNumber,
IsPrimaryContact = employee.IsPrimaryContact,
OnlineRoleId = RoleManager.GetOnlineRole(employee.CustomerId, employee.UserId).Id,
HasMultipleCompanies = EmployeeManager.HasMultipleCompanies(employee.UserId)
});
}
Ten pracował dla mnie: kontroler MyController = new MyController() {request = new System.Net.Http.HttpRequestMessage() }; –