我正在为elasticsearch nest.net客户端编写一个单元测试。
在存储库类中有以下调用
var observable = _client.BulkAll(documents,
selector => selector
.BackOffTime("30s")
.BackOffRetries(2)
.RefreshOnCompleted()
.Size(1000)
).Wait(
TimeSpan.FromMinutes(15),
next => {
_logger.LogInformation($"Adding {next.Items.Count} number of items");
});
在单元测试中,我有:
client = Substitute.For<IElasticClient>();
await _repository.AddDocuments(documents);
_client.Received().BulkAll(Arg.Any<IBulkAllRequest<Purchase>);
但是我在运行单元测试时遇到以下异常
Value cannot be null. (Parameter 'observable')
at Nest.Extensions.ThrowIfNull[T](T value, String name, String message)
我不确定如何正确构造单元测试。
非常感谢您的帮助
1条答案
按热度按时间ryoqjall1#
我认为你的问题是你在处理超负荷的工作
BulkAll
有这个签名但你要准备一个替代品
为了解决这个问题,我将按照以下方式配置一个替代品
哪里
Document
类型需要替换为实际使用的类型。