模拟实体条目NHibernate
本文关键字:NHibernate 实体 模拟 | 更新日期: 2023-09-27 18:29:51
我正在为NHibernate的EntityEventListener
进行一些单元测试,但我在模拟FlushEvent
或EntityEntry
时遇到了困难。
由于EntityEntry没有公共构造函数,并且类型Mock必须是接口、抽象类或非密封类。
EntityEntry ee = new EntityEntry(); //NOT
_entityEntryMock = new Mock<EntityEntry>(); //NOT
如果没有详细说明,我不能说这对你来说是否有意义,但当我遇到这样的情况时(一个我不能用Moq模拟的类,我也不能构建),我会用隔离框架来召集大人物。我通常使用Moles,但也有其他选项,如Typemock Isolator,我认为在下一个.NET框架中,Moles本身将被一个名为"Fakes"的内置隔离器所取代。但可以说,你正试图将Moq用于它不打算做的事情——它只是"自然"地创建mock,而不是作为一个隔离框架。