我试图围绕一些通过Nest访问Elasticsearch的代码编写一些单元测试,特别是.Search()调用.我正在尝试设置Moq以在.Search()调用时返回空搜索响应:
var emptyResponse = new Nest.SearchResponse<MyDoc>()
{
Documents = new List<MyDoc>() // illegal
};
esClient.Setup(x => x.Search<MyDoc>(It.IsAny <Func<SearchDescriptor<MyDoc>, SearchDescriptor<MyDoc>>>())).Returns(emptyResponse);
Run Code Online (Sandbox Code Playgroud)
不幸的是,我不能这样做,因为Documents只读SearchResponse.围绕搜索调用编写单元测试的建议方法是什么?
我的页面上有一个按钮,当点击该按钮时,将尝试从与我的页面域不同的域中的给定URL下载文件.有时,该下载URL将返回HTTP 429响应,并将错误消息作为内容.我试图能够处理这两种情况(成功下载与错误).
这是我的代码:
var w = window.open(url);
window.focus();
w.onload = function() {
console.log(w.document.body.innerHTML);
};
Run Code Online (Sandbox Code Playgroud)
上面的代码是单击按钮运行的.我所看到的是该w.onload功能永远不会被触发.使用它作为下载文件的方法有什么问题?
我有两个NumPy行数相同的数组,但我想添加特定的列.
我尝试了以下方法:
src_array[:, 3] += column_array_to_add[:, 0]
Run Code Online (Sandbox Code Playgroud)
但是,这甚至没有解释.这样做的正确方法是什么NumPy?我希望能够用整数和字符串来完成它.
编辑:用于测试的简短,自包含的脚本
import numpy
src = numpy.array([["a", "b"], ["c", "d"], ["e", "f"]])
src2 = numpy.array([["x"], ["y"], ["z"]])
src[:, 1] += src2[:, 0]
print src
exit()
Run Code Online (Sandbox Code Playgroud)
此脚本返回以下错误:
src[:, 1] += src2[:, 0]
TypeError: unsupported operand type(s) for +=: 'numpy.ndarray' and 'numpy.ndarray'
Run Code Online (Sandbox Code Playgroud) 我有一些代码可以按年龄进行过滤和排序,之前的假设是我们正在查询存储时间的模型作为单个整数.这些是我正在制作的电话类型:
user_profiles = user_profiles.filter(age__gte=min_age, age__lte=max_age)
user_profiles.order_by("age")
Run Code Online (Sandbox Code Playgroud)
作为重构的一部分,我改变了我的模型来存储出生年/月/日而不是静态年龄.我不清楚查询调用应该如何转换为这个问题,但是..如果我想查询14到20岁之间的用户,当你需要结合3个不相交的结果时,如何在Django中完成列?