小编Nek*_*ome的帖子

如何使用起订量在单元测试中模拟 Nhibernate .ToListAsync() ?

我正在尝试使用最小起订量在 ASP.NET Core MVC 应用程序中创建单元测试。不幸的是,Nhibernate.ToListAsync()不支持 Linq IQueryabledataset 和 throw System.NotSupportedException: 'Source Provider must be a INhQueryProvider'。在这段代码中,我模拟了INhQueryProvider,但这还不够:

var entities = new List<RequestRole>
{
    new RequestRole()
    {
       Id = 0,
       RequestOperator = new RequestOperator() { Id = 1 }
    },
    new RequestRole()
    {
       Id = 1,
       RequestOperator = new RequestOperator() { Id = 2 }
     }
}
.AsQueryable();

// for ToListAsync Mock INhQueryProvider and set it into IQueryable
var queryableProviderMock = new Mock<INhQueryProvider>();
queryableProviderMock.Setup(x => x.ExecuteAsync<IEnumerable<RequestRole>>(It.IsAny<Expression>(), …
Run Code Online (Sandbox Code Playgroud)

c# nhibernate unit-testing moq

4
推荐指数
1
解决办法
2299
查看次数

标签 统计

c# ×1

moq ×1

nhibernate ×1

unit-testing ×1