当前位置:  开发笔记 > 编程语言 > 正文

单元测试Asp.Net WebApi:如何使用[FromUri]参数测试方法的正确路由

如何解决《单元测试Asp.NetWebApi:如何使用[FromUri]参数测试方法的正确路由》经验,为你挑选了0个好方法。

我想测试一下这个控制器:

[HttpGet]
public IList GetNotificationsByCustomerAndId([FromUri] string[] name, [FromUri] int[] lastNotificationID)         
{
    return _storage.GetNotifications(name, lastNotificationID, _topX);
}

特别是,在这个方法中,我想测试传入输入的数组以形成请求Url,是进入的相同数组routeData.Values.如果对于单值参数(不是数组),它可以工作,但不适用于数组.如果我调试Values我只看到controlleraction.

[TestMethod]
public void GetNotificationsByCustomerAndId_ArrayOverload_Should_Match_InputParameter_name()
{
    string[] _testName = new string[] { _testCustomer, _testCustomerBis };

    string Url = string.Format(
           "http://www.testpincopallo.it/Notifications/GetByCustomerAndLastID/customersNotificationsInfos?name={0}&name={1}&lastNotificationID={2}&lastNotificationID={3}",
           _testName[0], _testName[1],
           _testNotificationID, _testNotificationIDBis);

    IHttpRouteData routeData = GetRouteData(Url);
    routeData.Values["name"].Should().Be(_testName);
}

在传递数组时,还有另一种单元测试方法吗?

推荐阅读
mobiledu2402851323
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有