0
Moq
私はエラスティック・クライアントを呼び出そうとしていますが、動作しません。私はUpdateAsync
がそれらの特定の入力で呼び出されたかどうか確認したい私のテストでモック・エラスティック・クライアント・コール
var response = await _client.UpdateAsync(DocumentPath<T>.Id(doc),
d => d
.Upsert(doc)
.Script(.....)
);
:
私はこの一般的なrepo.Update(T doc)
によって内部電話を持っています。
私は動作しませんでした次のことを試してみました:
_mock = new Mock<IElasticClient>();
Func<UpdateDescriptor<Document,Document>,
IUpdateRequest<Document,Document>> sel = d => d.Upsert(doc).Script(....);
await repo.Update(document)
_mock.Verify(c => c.UpdateAsync<Document>(
It.Is<DocumentPath<Document>(
docPath => docPath == DocumentPath<Document>.Id(document),
It.Is<Func<...>(s => s == sel),
it.IsAny<CancellationToken>()
);