【发布时间】:2023-03-08 20:44:01
【问题描述】:
我在 .NET Core 3.1 项目中使用 Google Cloud Pub/Sub (Google.Cloud.PubSub.V1 (2.2.0))。 我正在尝试为从 Google Pub/Sub 订阅中检索消息的代码编写单元测试。 我的代码与您在 Google 文档中找到的代码相似。
var subscriber = await SubscriberClient.CreateAsync(subscriptionName);
try
{
var startTask = subscriber.StartAsync(async (PubsubMessage message, CancellationToken cancel) =>
{
//code
});
await Task.Delay(5000);
await subscriber.StopAsync(CancellationToken.None);
await startTask;
}
catch (Exception ex)
{
//code
}
有没有办法在单元测试中模拟 SubscriberClient? SubscriberClient 似乎没有接口。 我的单元测试使用 NUnit (3.12.0) 和 Moq (4.14.5)。
任何想法都将不胜感激。
【问题讨论】:
标签: c# unit-testing mocking google-cloud-pubsub