3
    public HttpResponseMessage Save(IList<Models.Activity> activities)
    {
       //some controller code
        return Request.CreateResponse(HttpStatusCode.Created, activities, Configuration);
    }

如何对活动正确传递给 Request.CreateResponse 进行单元测试?

4

1 回答 1

7

您在这里有两个选择。

您可以设置正确的上下文,以便 CreateResponse 工作。这篇博文使用 PostProductReturnsCreatedStatusCode 进行了演示:

链接在这里

或者您可以像我在这里提到的那样向内存服务器提交请求:

MSDN 链接

第一个选项更多的是单元测试,因为它不通过 Web API 管道,但也更难设置和配置。

如果您还需要测试响应正文,您可以使用如下所示的代码来获取被发回的实体:

ObjectContent content = response.Content as ObjectContent;
IList<Models.Activity> responseActivities = content.Value;
于 2013-02-28T15:34:34.953 回答