1 回答

TA貢獻1772條經驗 獲得超5個贊
最有可能User是空,因為我沒有看到任何設置,也GetUserName沒有設置做任何事情,所以它也將為空。
因此模擬的期望不匹配,默認返回 null。
GetUserID放松對It.IsAny<string>()獲得預期行為的期望。
[Fact]
public async Task GetPendingApprovals_HasPending_ReturnsResultAsync() {
// Arrange
var mockRequests = getUsers();
var userId = 1;
mockServiceRepo
.Setup(repo => repo.GetUserID(It.IsAny<string>()))
.ReturnsAsync(userId);
mockRequestRepo
.Setup(repo => repo.GetPendingApprovalsByApprover(userId))
.ReturnsAsync(mockRequests);
// Act
var result = await controller.GetPendingApprovals();
// Assert
var actionResult = Assert.IsType<OkObjectResult>(result);
//...
}
List<Request> getUsers() {
//... omitted for brevity
}
- 1 回答
- 0 關注
- 127 瀏覽
添加回答
舉報