我正在使用Moq,所以我无法模拟OrmLite大量使用的扩展方法。
我有几个使用IDbConnection
的类,并选择了一些SQL数据库。
我尝试使用Sqlite进行单元测试,但在尝试打开事务时,我遇到了几次失败(原因很明显)。这是因为生产代码使用SqlServer,我调用了OpenTransaction(IsolationLevel.ReadUncommitted)
。
阅读当前发行说明, ,现在可以使用OrmLiteResultsFilter
拦截这些方法。我查看this链接以查看测试是如何执行的,但测试是连接到数据库。我只是想在我的单元测试中将其分离出来 - 连接到内存数据库,或者不是。
我是否将OrmLiteReadExpressionsApi
包装到我自己的界面以寻找我想要存根的方法(大多数情况下它是Select<T>
),或者OrmLite将提供的工具无需配置与数据库的连接?如果你可以将方言提供者设置为MockDialectProvider
,那就太好了。