C# 如何为wait _propertyRepository.UnitOfWork.SaveEntitiesAsync()创建xUnit测试用例?
如何测试C# 如何为wait _propertyRepository.UnitOfWork.SaveEntitiesAsync()创建xUnit测试用例?,c#,asp.net-web-api,.net-core,microservices,C#,Asp.net Web Api,.net Core,Microservices,如何测试return await\u propertyRepository.UnitOfWork.SaveEntitiesAsync() AddCommandHandler AddCommandHandlerTests.cs 您需要使用模拟的DBContext模拟UnitOfWork属性。然后需要在模拟的DbContext上设置()saveEntityAsync(),如下_unitofwork.setup(x=>x.saveEntityAsync(默认值(CancellationToken))?
return await\u propertyRepository.UnitOfWork.SaveEntitiesAsync()代码>
AddCommandHandler
AddCommandHandlerTests.cs
您需要使用模拟的DBContext模拟UnitOfWork属性。然后需要在模拟的DbContext上设置()saveEntityAsync(),如下_unitofwork.setup(x=>x.saveEntityAsync(默认值(CancellationToken))?但我还是感到困惑。如果有人与此相关,请给我举个例子?
public async Task<bool> Handle(AddCommand message, CancellationToken cancellationToken)
{
_logger.LogInformation("----- Adding Property - Property: {@Property}", property);
_propertyRepository.Add(property);
return await _propertyRepository.UnitOfWork.SaveEntitiesAsync();
}
public class PropertyRepository : IPropertyRepository
{
private readonly RealxContext _realxContext;
public IUnitOfWork UnitOfWork
{
get
{
return _realxContext;
}
}
public PropertyRepository(RealxContext realxContext)
{
_realxContext = realxContext ?? throw new ArgumentNullException(nameof(realxContext));
}
_propertyRepository.Setup(propertyRepo => propertyRepo.UnitOfWork.SaveEntitiesAsync(default(CancellationToken))).Returns(Task.FromResult(true));