我通过实施ISecurityPolicy
在FluentSecurity(实现IPolicyViolationHandler
)和相应的PolicyViolationHandler中编写了自定义策略。一切都与策略和处理程序完美配合,但是我通过编写一些单元测试来测试我的IPolicyViolationHandler.Handle(PolicyViolationException exception)
实现,从而做了一些回填。
我知道我在实施后向后编写测试(避免火焰入场)。
我的问题是:有没有办法生成一个PolicyViolationException
对象作为模拟,我可以传入我的测试? PolicyViolationException没有任何公共构造函数(因此我不能创建新对象),也没有抽象基础或模拟对象(使用Moq)。
我查看了API,但没有看到生成一个的东西。我知道我可以做一些反思魔法来得到一个,但想检查我是否遗漏了什么。
答案 0 :(得分:1)
在版本2.0-alpha4之前的版本中,这是不可能的。但是,此问题将在FluentSecurity的即将发布的2.0-beta1版本中得到解决,其中构造函数将被公开。
https://github.com/kristofferahl/FluentSecurity/commit/09e9b69ef5a297d242f8a813babbeebd47b54818
感谢您引起我的注意!