使用 NSubstitute 模拟 Masstransit 的 GetRetryAttempt()

时间:2021-06-18 11:16:20

标签: c# xunit masstransit nsubstitute

我正在尝试模拟 Masstransit 的 GetRetryAttempt() 方法以使用 NSubstitute 返回一些值,但似乎不起作用。没有收到任何错误,但 GetRetryAttempt() 总是返回 0 而不是 2。

测试

var context = Substitute.For<ConsumeContext<FakeCommand>>();
var consumeRetryContext = Substitute.For<ConsumeRetryContext>();
consumeRetryContext.RetryAttempt.Returns(2);
context.TryGetPayload(out consumeRetryContext).Returns(true);
context.GetRetryAttempt().Returns(consumeRetryContext.RetryAttempt);

应用代码

public async Task Consume(ConsumeContext<T> context)
{
    ......
    var retryAttempt = context.GetRetryAttempt();
}

0 个答案:

没有答案