我有一个请求返回一个JSON对象与一个属性是一个数组.如何测试阵列是否为空?
使用jQuery代码:
$.getJSON(
jsonUrl,
function(data) {
if (data.RoleOwners == [ ]) {
$('<tr><td>' + noRoleOwnersText + '</td></tr>').appendTo("#roleOwnersTable tbody");
return;
}
$.each(data.RoleOwners, function(i, roleOwner) {
var tblRow =
"<tr>"
+ "<td>" + roleOwner.FirstName + "</td>"
+ "<td>" + roleOwner.LastName + "</td>"
+ "</tr>"
$(tblRow).appendTo("#roleOwnersTable tbody");
});
Run Code Online (Sandbox Code Playgroud)
我可以用什么来代替if(data.RoleOwners == [])来测试RoleOwners是否为空数组?
谢谢,马特
我能够在global.asax.cs中为Web API路由ala成功注册一个自定义路由处理程序(从IRouteHandler派生):
routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "{client}/api/1.0/{controller}/{action}/{id}",
defaults: new{id = UrlParameter.Optional}
).RouteHandler = new SingleActionAPIRouteHandler();
Run Code Online (Sandbox Code Playgroud)
但是,当我尝试为集成测试设置内存主机时,我似乎无法找到一种方法,当我调用HttpConfiguration.Routes.MapRoute时,我无法在返回的IHttpRoute上设置处理程序.
我应该采用不同的方式(例如使用自定义的HttpControllerSelector)吗?在两种情况下,我显然都喜欢这样做.
谢谢,马特
编辑:
所以我最终做的基本上是遵循下面的建议,但只是重写HttpControllerDispatcher类,如下所示:
public class CustomHttpControllerDispatcher : HttpControllerDispatcher
{
public CustomHttpControllerDispatcher(HttpConfiguration configuration) : base(configuration)
{
}
protected override Task<HttpResponseMessage> SendAsync(HttpRequestMessage request, CancellationToken cancellationToken)
{
// My stuff here
return base.SendAsync(request, cancellationToken);
}
}
Run Code Online (Sandbox Code Playgroud) 为什么Visual Studio需要这么长时间才能从解决方案树中删除文件?该应用程序冻结并坐在那里感觉像永恒.
如果我首先从文件系统中删除该文件,然后在解决方案中将其删除,它会立即发生.
我可以设置一个选项以避免这种情况吗?
有没有合理的方法来存根/模拟调用的结果IDocumentSession.Query()?
我有一个命令,我想验证在对象上调用方法(即被测试的"单位"是命令而不是命令编排的对象).我不能(通过RhinoMocks)Mock对象保存到一个嵌入式数据库实例,因此目前并被迫在被调用的对象验证状态,而不是仅仅验证了正确的方法被调用.
谢谢,马特
我想测试一个类有一个EventHandler分配给一个事件.基本上我正在使用我的IoC容器为我连接EventHandlers,我想检查它们是否正确分配.所以,我正在测试我的IoC配置.
[Test]
public void create_person_event_handler_is_hooked_up_by_windsor()
{
IChangePersonService changePersonService = IoC.Resolve<IChangePersonService>();
// check that changePersonService.PersonCreated has a handler attached
}
Run Code Online (Sandbox Code Playgroud)
我不确定如何测试changePersonService.PersonCreated有任何附加到它的东西.
有任何想法吗?
谢谢.