【发布时间】:2019-10-21 14:42:59
【问题描述】:
根据documentation,下面在响应中添加一个Location头。
// POST: api/TodoItems
[HttpPost]
public async Task<ActionResult<TodoItem>> PostTodoItem(TodoItem todoItem)
{
_context.TodoItems.Add(todoItem);
await _context.SaveChangesAsync();
//return CreatedAtAction("GetTodoItem", new { id = todoItem.Id }, todoItem);
return CreatedAtAction(nameof(GetTodoItem), new { id = todoItem.Id }, todoItem);
}
在 Xunit 中,我应该如何编写单元测试的 Assert 部分以测试 Location 标头的值?
[Fact]
public async Task Posting_A_ValidTodoItem_Creates_LocationHeader()
{
// Arrange
//...
// Act
var result = await.controller.PostToDoItem(toDoItem)
// Assert
//???
}
测试状态代码和响应正文已经很简单了,但我还不能测试标头。
【问题讨论】:
标签: c# unit-testing asp.net-core xunit asp.net-core-3.0